487557f2b9e88b9d30c9c51bdae474f4a26ea0b1.svn-base 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526
  1. <template>
  2. <div>
  3. <el-dialog :title="gsgcRowData.nm" :visible.sync="dialogFormVisible"
  4. :modal-append-to-body="true"
  5. :append-to-body="true" @close="closeTianBaoDialog">
  6. <el-container style="height:520px;">
  7. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  8. <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;margin-bottom: 10px;">信息填报</p>
  9. <p style="margin-top:10px;margin-bottom: 10px;overflow: hidden;"><i class="el-icon-caret-right"></i><span
  10. style="width:120px;padding-left: 10px">基本信息</span><span class="hrs"></span>
  11. </p>
  12. <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules">
  13. <el-form-item label="供水工程名称">
  14. <el-input type="text" v-model="formObj.nm" class="w200" clearable
  15. placeholder="请输入供水工程名称"></el-input>
  16. <i @click="showPic('nm')" class="el-icon-upload" style="color:#5bb7e7;font-size:25px;cursor:pointer;"></i>
  17. </el-form-item>
  18. <el-form-item label="所在地">
  19. <el-input type="text" v-model="formObj.loc" class="w200" clearable
  20. placeholder="请输入所在地"></el-input>
  21. </el-form-item>
  22. <el-form-item label="工程类型" prop="prjType">
  23. <el-select v-model="formObj.prjType" clearable placeholder="请选择" autocomplete="off">
  24. <el-option label="团部" value="1"></el-option>
  25. <el-option label="跨团" value="2"></el-option>
  26. <el-option label="单连" value="3"></el-option>
  27. <el-option label="连连" value="4"></el-option>
  28. <el-option label="城乡一体化" value="5"></el-option>
  29. <el-option label="地方供水" value="6"></el-option>
  30. <el-option label="地方向兵团供水" value="7"></el-option>
  31. </el-select>
  32. </el-form-item>
  33. <el-form-item label="工程性质" prop="prjNtr">
  34. <el-select v-model="formObj.prjNtr" clearable placeholder="请选择" autocomplete="off">
  35. <el-option label="规模化供水工程" value="1"></el-option>
  36. <el-option label="小型供水工程" value="2"></el-option>
  37. <el-option label="分散供水工程" value="3"></el-option>
  38. </el-select>
  39. </el-form-item>
  40. <el-form-item label="工程规模" prop="waterSupply">
  41. <el-select v-model="formObj.waterSupply" clearable placeholder="请选择" autocomplete="off">
  42. <el-option label="城乡一体化工程" value="1"></el-option>
  43. <el-option label="万人供水工程" value="2"></el-option>
  44. <el-option label="千人供水工程" value="3"></el-option>
  45. <el-option label="千人以下供水工程" value="4"></el-option>
  46. <el-option label="水井" value="5"></el-option>
  47. <el-option label="其他" value="6"></el-option>
  48. </el-select>
  49. </el-form-item>
  50. <el-form-item label="经度">
  51. <el-input type="text" v-model="formObj.gdX" class="w200" clearable
  52. placeholder="请输入经度"></el-input>
  53. </el-form-item>
  54. <el-form-item label="纬度">
  55. <el-input type="text" v-model="formObj.gdY" class="w200" clearable
  56. placeholder="请输入纬度"></el-input>
  57. </el-form-item>
  58. <p style=";margin-top:10px;margin-bottom: 10px">
  59. <i class="el-icon-caret-right"></i>
  60. <span style="width:120px;padding-left: 10px">运行管理情况</span>
  61. <span class="hrs"></span>
  62. </p>
  63. <el-form-item label="工程是否正常运行">
  64. <el-radio v-model="formObj.isRun" label="1">是</el-radio>
  65. <el-radio v-model="formObj.isRun" label="2">否</el-radio>
  66. <el-button
  67. @click="addProblem('isRun')"
  68. type="text"
  69. v-if="formObj.isRun =='2'">
  70. <i class="el-icon-circle-plus add-problem-icon"></i>
  71. </el-button>
  72. </el-form-item>
  73. <el-form-item label="夏季用水高峰期,水量是否稳定">
  74. <el-radio v-model="formObj.isMeet" label="1">是</el-radio>
  75. <el-radio v-model="formObj.isMeet" label="2">否</el-radio>
  76. <el-button
  77. @click="addProblem('isMeet')"
  78. type="text"
  79. v-if="formObj.isMeet =='2'">
  80. <i class="el-icon-circle-plus add-problem-icon"></i>
  81. </el-button>
  82. </el-form-item>
  83. <el-form-item label="水量是否满足需求(查看供水单位出厂水水量台帐)">
  84. <el-radio v-model="formObj.isMeetBook" label="1">是</el-radio>
  85. <el-radio v-model="formObj.isMeetBook" label="2">否</el-radio>
  86. <el-button
  87. @click="addProblem('isMeetBook')"
  88. type="text"
  89. v-if="formObj.isMeetBook =='2'">
  90. <i class="el-icon-circle-plus add-problem-icon"></i>
  91. </el-button>
  92. </el-form-item>
  93. <el-form-item label="是否委托有资质的单位开展每月一次的水质监测">
  94. <el-radio v-model="formObj.isChk" label="1">是</el-radio>
  95. <el-radio v-model="formObj.isChk" label="2">否</el-radio>
  96. <el-button
  97. @click="addProblem('isChk')"
  98. type="text"
  99. v-if="formObj.isChk =='2'">
  100. <i class="el-icon-circle-plus add-problem-icon"></i>
  101. </el-button>
  102. </el-form-item>
  103. <el-form-item label="管网漏损等现象维修养护开展情况">
  104. <el-input type="text" v-model="formObj.isChkLeak" class="w200" clearable></el-input>
  105. </el-form-item>
  106. <el-form-item label="维修改造措施">
  107. <el-input type="text" v-model="formObj.chkInfo" class="w200" clearable></el-input>
  108. </el-form-item>
  109. <el-form-item label="与庭院经济管网是否分开">
  110. <el-radio v-model="formObj.isSprrt" label="1">是</el-radio>
  111. <el-radio v-model="formObj.isSprrt" label="2">否</el-radio>
  112. <el-button
  113. @click="addProblem('isSprrt')"
  114. type="text"
  115. v-if="formObj.isSprrt =='2'">
  116. <i class="el-icon-circle-plus add-problem-icon"></i>
  117. </el-button>
  118. </el-form-item>
  119. <el-form-item label="供水单位服务电话">
  120. <el-input type="text" v-model="formObj.supTel" class="w200" clearable></el-input>
  121. </el-form-item>
  122. <el-form-item label="电话是否畅通">
  123. <el-radio v-model="formObj.isSupTel" label="1">是</el-radio>
  124. <el-radio v-model="formObj.isSupTel" label="2">否</el-radio>
  125. <el-button
  126. @click="addProblem('isSupTel')"
  127. type="text"
  128. v-if="formObj.isSupTel =='2'">
  129. <i class="el-icon-circle-plus add-problem-icon"></i>
  130. </el-button>
  131. </el-form-item>
  132. <el-form-item label="是否有维修管理队伍,应急处理突发事件(供水单位)">
  133. <el-radio v-model="formObj.isTeamDeal" label="1">是</el-radio>
  134. <el-radio v-model="formObj.isTeamDeal" label="2">否</el-radio>
  135. <el-button
  136. @click="addProblem('isTeamDeal')"
  137. type="text"
  138. v-if="formObj.isTeamDeal =='2'">
  139. <i class="el-icon-circle-plus add-problem-icon"></i>
  140. </el-button>
  141. </el-form-item>
  142. <p style=";margin-top:10px;margin-bottom: 10px">
  143. <i class="el-icon-caret-right"></i>
  144. <span style="width:120px;padding-left: 10px">水费收缴情况</span>
  145. <span class="hrs"></span>
  146. </p>
  147. <el-form-item label="是否定价">
  148. <el-radio v-model="formObj.isPrice" label="1">是</el-radio>
  149. <el-radio v-model="formObj.isPrice" label="2">否</el-radio>
  150. <el-button
  151. @click="addProblem('isPrice')"
  152. type="text"
  153. v-if="formObj.isPrice =='2'">
  154. <i class="el-icon-circle-plus add-problem-icon"></i>
  155. </el-button>
  156. </el-form-item>
  157. <el-form-item label="定价依据" v-if="formObj.isPrice=='1'">
  158. <el-radio v-model="formObj.pricingBasis" label="1">政府文件定价</el-radio>
  159. <el-radio v-model="formObj.pricingBasis" label="2">自主定价</el-radio>
  160. <el-radio v-model="formObj.pricingBasis" label="3">物价部门核定工程水价批复</el-radio>
  161. </el-form-item>
  162. <el-form-item label="是否收取水费">
  163. <el-radio v-model="formObj.isCost" label="1">是</el-radio>
  164. <el-radio v-model="formObj.isCost" label="2">否</el-radio>
  165. <el-button
  166. @click="addProblem('isCost')"
  167. type="text"
  168. v-if="formObj.isCost =='2'">
  169. <i class="el-icon-circle-plus add-problem-icon"></i>
  170. </el-button>
  171. </el-form-item>
  172. <el-form-item label="水费加补助是否覆盖运行成本">
  173. <el-radio v-model="formObj.isCostCover" label="1">是</el-radio>
  174. <el-radio v-model="formObj.isCostCover" label="2">否</el-radio>
  175. <el-button
  176. @click="addProblem('isCostCover')"
  177. type="text"
  178. v-if="formObj.isCostCover =='2'">
  179. <i class="el-icon-circle-plus add-problem-icon"></i>
  180. </el-button>
  181. </el-form-item>
  182. <el-form-item label="水费收缴率(%)">
  183. <el-radio v-model="formObj.cost" label="1">是</el-radio>
  184. <el-radio v-model="formObj.cost" label="2">否</el-radio>
  185. <el-button
  186. @click="addProblem('cost')"
  187. type="text"
  188. v-if="formObj.cost =='2'">
  189. <i class="el-icon-circle-plus add-problem-icon"></i>
  190. </el-button>
  191. </el-form-item>
  192. <el-form-item label="是否有改进措施">
  193. <el-radio v-model="formObj.isImporve" label="1">是</el-radio>
  194. <el-radio v-model="formObj.isImporve" label="2">否</el-radio>
  195. <el-button
  196. @click="addProblem('isImporve')"
  197. type="text"
  198. v-if="formObj.isImporve =='2'">
  199. <i class="el-icon-circle-plus add-problem-icon"></i>
  200. </el-button>
  201. </el-form-item>
  202. <p style=";margin-top:10px;margin-bottom: 10px">
  203. <i class="el-icon-caret-right"></i>
  204. <span style="width:120px;padding-left: 10px">水质保障</span>
  205. <span class="hrs"></span>
  206. </p>
  207. <el-form-item label="是否配备净化设备">
  208. <el-radio v-model="formObj.isClean" label="1">是</el-radio>
  209. <el-radio v-model="formObj.isClean" label="2">否</el-radio>
  210. <el-button
  211. @click="addProblem('isClean')"
  212. type="text"
  213. v-if="formObj.isClean =='2'">
  214. <i class="el-icon-circle-plus add-problem-icon"></i>
  215. </el-button>
  216. </el-form-item>
  217. <el-form-item label="净化设备是否运行正常" v-if="formObj.isClean=='1'">
  218. <el-radio v-model="formObj.isCleanRun" label="1">是</el-radio>
  219. <el-radio v-model="formObj.isCleanRun" label="2">否</el-radio>
  220. <el-button
  221. @click="addProblem('isCleanRun')"
  222. type="text"
  223. v-if="formObj.isCleanRun =='2'">
  224. <i class="el-icon-circle-plus add-problem-icon"></i>
  225. </el-button>
  226. </el-form-item>
  227. <el-form-item label="是否配备消毒设备">
  228. <el-radio v-model="formObj.isDsn" label="1">是</el-radio>
  229. <el-radio v-model="formObj.isDsn" label="2">否</el-radio>
  230. <el-button
  231. @click="addProblem('isDsn')"
  232. type="text"
  233. v-if="formObj.isDsn =='2'">
  234. <i class="el-icon-circle-plus add-problem-icon"></i>
  235. </el-button>
  236. </el-form-item>
  237. <el-form-item label="消毒设备是否正常运行" v-if="formObj.isDsn=='1'">
  238. <el-radio v-model="formObj.isDsnRun" label="1">是</el-radio>
  239. <el-radio v-model="formObj.isDsnRun" label="2">否</el-radio>
  240. <el-button
  241. @click="addProblem('isDsnRun')"
  242. type="text"
  243. v-if="formObj.isDsnRun =='2'">
  244. <i class="el-icon-circle-plus add-problem-icon"></i>
  245. </el-button>
  246. </el-form-item>
  247. <el-form-item label="是否有水质检测报告">
  248. <el-radio v-model="formObj.isRpt" label="1">是</el-radio>
  249. <el-radio v-model="formObj.isRpt" label="2">否</el-radio>
  250. <el-button
  251. @click="addProblem('isRpt')"
  252. type="text"
  253. v-if="formObj.isRpt =='2'">
  254. <i class="el-icon-circle-plus add-problem-icon"></i>
  255. </el-button>
  256. </el-form-item>
  257. <el-form-item label="水质检测是否合格" v-if="formObj.isRpt=='1'">
  258. <el-radio v-model="formObj.isRptUp" label="1">是</el-radio>
  259. <el-radio v-model="formObj.isRptUp" label="2">否</el-radio>
  260. <el-button
  261. @click="addProblem('isRptUp')"
  262. type="text"
  263. v-if="formObj.isRptUp =='2'">
  264. <i class="el-icon-circle-plus add-problem-icon"></i>
  265. </el-button>
  266. </el-form-item>
  267. <el-form-item label="">
  268. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  269. </el-form-item>
  270. </el-form>
  271. </el-main>
  272. <problem-list
  273. v-if="showProblemList && openType"
  274. :showProblemList='showProblemList'
  275. :currentObjectId="currentObjectId"
  276. :currentObjectName="rowData.adName"
  277. :problemMiddleType="'新疆兵团农饮'"
  278. :problData="probId"
  279. :openType="openType"
  280. @dialogFormVisible="getdialogFormVisible"
  281. :currentObjectRgstrId="currentObjectRgstrId"
  282. :rowData="rowData"
  283. :gsgcRowData="gsgcRowData"
  284. :oriFatherName="oriFatherName"
  285. :villageNm="villageNm"
  286. ></problem-list>
  287. </el-container>
  288. </el-dialog>
  289. <add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>
  290. </div>
  291. </template>
  292. <script>
  293. import theRecentAppearance from '../../duChaDuiXiang/theRecentAppearance'
  294. import mapLocation from '../mapLocation'
  295. import addPicCom from "./addPic.vue"
  296. import inputWith from "@widget/inuptWith.vue"
  297. import request from "@util/gw_ajax_request.js"
  298. import problemList from '../../addProlemMidForm/ncysaqXjbtProblemList'
  299. export default {
  300. components: {
  301. inputWith: inputWith,
  302. problemList,
  303. theRecentAppearance,
  304. mapLocation,
  305. addPicCom
  306. },
  307. props: ['rowData', 'currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'gsgcRowData', 'oriFatherName', 'villageNm', 'openType'],
  308. data() {
  309. return {
  310. type:"",
  311. jqmmDialogShow:"",
  312. id:"",
  313. xx: "",
  314. objtbStatu: {
  315. presStat: "",
  316. rgstrId: "",
  317. },
  318. rules: {
  319. },
  320. formObj: {
  321. nm:"",
  322. loc:"",
  323. waterSupply:"",
  324. prjNtr:"",
  325. prjType:"",
  326. gdX:"",
  327. gdY:"",
  328. isRun:"",
  329. isMeet:"",
  330. isMeetBook:"",
  331. isChk:"",
  332. isChkLeak:"",
  333. chkInfo:"",
  334. isSprrt:"",
  335. isLook:"",
  336. isBuldChk:"",
  337. supTel:"",
  338. isSupTel:"",
  339. isTeamDeal:"",
  340. isPrice:"",
  341. pricingBasis:"",
  342. priceInfo:"",
  343. isCost:"",
  344. isCostCover:"",
  345. cost:"",
  346. isImporve:"",
  347. isClean:"",
  348. isCleanRun:"",
  349. isDsn:"",
  350. isDsnRun:"",
  351. isRpt:"",
  352. isRptUp:""
  353. },
  354. dialogFormVisible: true,
  355. formLabelWidth: '300px',
  356. loading: true,
  357. operationType1: '',
  358. rsvrRules: null,
  359. probId: '',
  360. showProblemList: false,
  361. xcztShow: false,
  362. imageShow: false,
  363. }
  364. },
  365. computed: {
  366. recPersId() {
  367. return localStorage.getItem("userid") ? localStorage.getItem("userid") : ''
  368. }
  369. },
  370. created() {
  371. this.findItemByType()
  372. },
  373. mounted() {
  374. this.getRgstridObj();
  375. },
  376. watch: {},
  377. methods: {
  378. jqmmDialogClose() {
  379. this.jqmmDialogShow = false;
  380. },
  381. showPic(type){
  382. this.type = type
  383. this.jqmmDialogShow = true
  384. },
  385. // 近期面貌
  386. recentAppearance() {
  387. this.xcztShow = true;
  388. },
  389. jqmmDialog() {
  390. this.xcztShow = false;
  391. },
  392. //影像
  393. imageClick() {
  394. if (!this.formObj.centerX && !this.formObj.centerX) {
  395. this.$message.warning('暂无经纬度信息!');
  396. return false;
  397. }
  398. this.imageShow = true;
  399. },
  400. formatDate(val) {
  401. if (val == null || val == "") {
  402. return "";
  403. } else {
  404. var d = new Date(val);
  405. return d.getFullYear + "-" + (d.getMonth() + 1) + "-" + d.getDate();
  406. }
  407. },
  408. getRgstridObj() {
  409. var _self = this;
  410. request.get(`/bis/insp/xjvill/run/${this.gsgcRowData.id}`)
  411. .then((res) => {
  412. if (res.data) {
  413. _self.formObj = res.data;
  414. _self.id = res.data.id;
  415. }
  416. });
  417. },
  418. addHandler() {
  419. var _self = this;
  420. _self.formObj['rgstrId'] = _self.rowData.rgstrId;
  421. _self.formObj['recPersId'] = _self.recPersId;
  422. this.$confirm('确认保存工程情况信息?', '提示', {
  423. confirmButtonText: '确定',
  424. cancelButtonText: '取消',
  425. type: 'warning'
  426. })
  427. .then(() => {
  428. try {
  429. request.post('/bis/insp/xjvill/run', _self.formObj).then((res) => {
  430. if (res.success) {
  431. _self.$message.success("添加成功");
  432. _self.$emit("addShuiKuSuccess");
  433. }
  434. });
  435. } catch (e) {
  436. }
  437. })
  438. .catch(() => {
  439. });
  440. },
  441. cancelHandler() {
  442. this.$emit('cancelHandler');
  443. },
  444. addProblem(item) {
  445. let rest = this.rsvrRules.filter(e => {
  446. return e.eName === item;
  447. });
  448. this.probId = rest[0].id;
  449. this.showProblemList = true
  450. },
  451. formatRadio(val) {
  452. if (val == '1') {
  453. return '是'
  454. } else if (val == '2') {
  455. return '否'
  456. } else {
  457. return val
  458. }
  459. },
  460. findItemByType() {
  461. const obj = {
  462. tname: "BIS_INSP_XJVILL_RUN"
  463. }
  464. request.post("/bis/insp/item/ques/info/findItemByType", obj).then(res => {
  465. this.rsvrRules = res.data;
  466. })
  467. },
  468. closeTianBaoDialog() {
  469. this.$emit("closeDialog");
  470. },
  471. getdialogFormVisible(val) {
  472. this.showProblemList = val
  473. },
  474. },
  475. }
  476. </script>
  477. <style>
  478. .input50 {
  479. width: 100px;
  480. }
  481. .w200 {
  482. width: 300px;
  483. }
  484. .input300 {
  485. width: 300px;
  486. }
  487. #dcdxHeader {
  488. padding: 15px 20px;
  489. }
  490. #dxdcFooter {
  491. text-align: center;
  492. }
  493. #dxdcAside {
  494. border: 1px solid #d5d5ff;
  495. }
  496. .el-dialog__wrapper .el-treeWhite {
  497. /* max-height: 260px !important; */
  498. }
  499. .add-problem-icon {
  500. font-size: 16px;
  501. }
  502. </style>