e5ac425bac5868d414f4db4ca32942d6cf1ffdbf.svn-base 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471
  1. <template>
  2. <div class="gcyxgl_tb">
  3. <el-container style="height:520px;">
  4. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  5. <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;">信息填报</p>
  6. <p style=";margin-top:10px;margin-bottom: 10px">
  7. <i class="el-icon-caret-right"></i>
  8. <span style="width:120px;padding-left: 10px">基本情况</span>
  9. <span class="hrs"></span>
  10. </p>
  11. <el-form :model="addObj" :label-width="formLabelWidth" ref="ruleForm">
  12. <el-form-item label="工程名称">
  13. <el-tooltip placement="top">
  14. <div slot="content">无正式名称的可按村名+工程类型临时取名</div>
  15. <i class="el-icon-question"></i>
  16. </el-tooltip>
  17. <el-input placeholder="请输入" v-model="addObj.name" class="span200"></el-input>
  18. </el-form-item>
  19. <el-form-item label="项目来源(建设部门)">
  20. <el-select v-model="addObj.sour" multiple>
  21. <el-option v-for="item in projectSourceList" :key="item.value" :label="item.label"
  22. :value="item.value"></el-option>
  23. </el-select>
  24. <el-input v-if="addObj.sour.indexOf('7') > -1" type="textarea" rows="4"
  25. v-model="addObj.sourNote" clearable placeholder="请输入"></el-input>
  26. </el-form-item>
  27. <el-form-item label="调研地点(*县*乡*村)">
  28. <el-input placeholder="请输入" v-model="addObj.adName" readOnly></el-input>
  29. </el-form-item>
  30. <el-form-item label="建成时间">
  31. <el-radio v-model="addObj.isCurryearComp" label="1">2000年之前</el-radio>
  32. <el-radio v-model="addObj.isCurryearComp" label="2">2000年之后</el-radio>
  33. </el-form-item>
  34. <el-form-item v-if="addObj.isCurryearComp == '1'">
  35. <el-select v-model="addObj.beforeCurryearComp" clearable>
  36. <el-option v-for="item in beforeCurryearList" :label="item.label" :value="item.value"
  37. :key="item.value"></el-option>
  38. </el-select>
  39. </el-form-item>
  40. <el-form-item v-if="addObj.isCurryearComp == '2'">
  41. <el-date-picker
  42. v-model="addObj.afterCurryearComp"
  43. type="year"
  44. value-format="yyyy"
  45. placeholder="选择年">
  46. </el-date-picker>
  47. </el-form-item>
  48. <el-form-item label="蓄水容积">
  49. <el-input placeholder="请输入" v-model="addObj.strgVlm">
  50. <template slot="append">m3</template>
  51. </el-input>
  52. </el-form-item>
  53. <el-form-item label="有效容积">
  54. <el-input placeholder="请输入" v-model="addObj.valdVlm">
  55. <template slot="append">m3</template>
  56. </el-input>
  57. </el-form-item>
  58. <el-form-item label="可供灌溉水量">
  59. <el-input placeholder="请输入" v-model="addObj.availIrrWtr">
  60. <template slot="append">m3</template>
  61. </el-input>
  62. </el-form-item>
  63. <el-form-item label="控制灌溉面积">
  64. <el-input placeholder="请输入" v-model="addObj.irrArea">
  65. <template slot="append">亩</template>
  66. </el-input>
  67. </el-form-item>
  68. <el-form-item label="是否属于高标准农田">
  69. <el-radio v-model="addObj.higStnType" label="1">是</el-radio>
  70. <el-radio v-model="addObj.higStnType" label="2">否</el-radio>
  71. <el-radio v-model="addObj.higStnType" label="3">部分属于</el-radio>
  72. </el-form-item>
  73. <el-form-item label="因工程问题导致原先可灌溉但现在无法灌溉的面积">
  74. <el-input placeholder="请输入" class="input50" v-model="addObj.prjPbmArea">
  75. <template slot="append">亩</template>
  76. </el-input>
  77. </el-form-item>
  78. <p style=";margin-top:10px;margin-bottom: 10px">
  79. <i class="el-icon-caret-right"></i>
  80. <span style="width:120px;padding-left: 10px">工程产权和管护情况</span>
  81. <span class="hrs"></span>
  82. </p>
  83. <el-form-item label="工程所有权人">
  84. <el-select v-model="addObj.prjWhoTend" clearable>
  85. <el-option v-for="item in prjWhoTendList" :key="item.value" :label="item.label"
  86. :value="item.value"></el-option>
  87. </el-select>
  88. </el-form-item>
  89. <el-form-item label="工程使用权">
  90. <el-select v-model="addObj.prjUsrType" clearable>
  91. <el-option v-for="item in prjUsrTypeList" :key="item.value" :label="item.label"
  92. :value="item.value"></el-option>
  93. </el-select>
  94. </el-form-item>
  95. <el-form-item label="管护主体">
  96. <el-select v-model="addObj.whoTend" clearable>
  97. <el-option v-for="item in whoTendList" :key="item.value" :label="item.label"
  98. :value="item.value"></el-option>
  99. </el-select>
  100. </el-form-item>
  101. <el-form-item label="管护记录">
  102. <el-radio v-model="addObj.isTendRcrd" label="1">有</el-radio>
  103. <el-radio v-model="addObj.isTendRcrd" label="2">无</el-radio>
  104. </el-form-item>
  105. <el-form-item v-if="addObj.isTendRcrd == '1'">
  106. <el-radio v-model="addObj.tendRcrdType" label="1">好</el-radio>
  107. <el-radio v-model="addObj.tendRcrdType" label="2">一般</el-radio>
  108. <el-radio v-model="addObj.tendRcrdType" label="3">差</el-radio>
  109. </el-form-item>
  110. <p style=";margin-top:10px;margin-bottom: 10px">
  111. <i class="el-icon-caret-right"></i>
  112. <span style="width:120px;padding-left: 10px">工程状况</span>
  113. <span class="hrs"></span>
  114. </p>
  115. <el-form-item label="① 是否还有灌溉功能">
  116. <el-radio v-model="addObj.isRun" label="1">是</el-radio>
  117. <el-radio v-model="addObj.isRun" label="2">否</el-radio>
  118. <el-button
  119. v-if="addObj.isRun == '2'"
  120. @click="addProblemList('isRun')"
  121. type="text">
  122. <i class="el-icon-circle-plus"></i>
  123. </el-button>
  124. </el-form-item>
  125. <el-form-item v-if="addObj.isRun == '2'" label="不能蓄水原因功能的原因(多选)" clearable>
  126. <el-select v-model="addObj.notRunType" multiple>
  127. <el-option label="水源发生较大变化" value="1"></el-option>
  128. <el-option label="淤积严重" value="2"></el-option>
  129. <el-option label="无灌溉用水需求" value="3"></el-option>
  130. <el-option label="坝体坍塌等原因造成无法蓄水" value="4"></el-option>
  131. <el-option label="功能发生变化" value="5"></el-option>
  132. <el-option label="其他" value="6"></el-option>
  133. </el-select>
  134. </el-form-item>
  135. <el-form-item v-if="addObj.notRunType.indexOf('6') > -1">
  136. <el-input type="textarea" rows="2" v-model="addObj.notRunNote" clearable
  137. placeholder="请输入"></el-input>
  138. </el-form-item>
  139. <el-form-item label="② 引水口是否完好">
  140. <el-radio v-model="addObj.isInAll" label="1">是</el-radio>
  141. <el-radio v-model="addObj.isInAll" label="2">否</el-radio>
  142. <el-radio v-model="addObj.isInAll" label="3">不涉及</el-radio>
  143. <el-button
  144. v-if="addObj.isInAll == '2'"
  145. @click="addProblemList('isInAll')"
  146. type="text">
  147. <i class="el-icon-circle-plus"></i>
  148. </el-button>
  149. </el-form-item>
  150. <el-form-item label="③ 边坡有无坍塌">
  151. <el-radio v-model="addObj.isSlpCll" label="1">是</el-radio>
  152. <el-radio v-model="addObj.isSlpCll" label="2">否</el-radio>
  153. <el-button
  154. v-if="addObj.isSlpCll == '1'"
  155. @click="addProblemList('isSlpCll')"
  156. type="text">
  157. <i class="el-icon-circle-plus"></i>
  158. </el-button>
  159. </el-form-item>
  160. <el-form-item v-if="addObj.isSlpCll == '1'">
  161. <el-radio v-model="addObj.isSlpCllCate" label="1">严重</el-radio>
  162. <el-radio v-model="addObj.isSlpCllCate" label="2">较重</el-radio>
  163. <el-radio v-model="addObj.isSlpCllCate" label="3">一般</el-radio>
  164. </el-form-item>
  165. <el-form-item label="④ 有无淤积">
  166. <el-radio v-model="addObj.isAlluvial" label="1">是</el-radio>
  167. <el-radio v-model="addObj.isAlluvial" label="2">否</el-radio>
  168. <el-button
  169. v-if="addObj.isAlluvial == '1'"
  170. @click="addProblemList('isAlluvial')"
  171. type="text">
  172. <i class="el-icon-circle-plus"></i>
  173. </el-button>
  174. </el-form-item>
  175. <el-form-item v-if="addObj.isOutAll == '1'">
  176. <el-radio v-model="addObj.isAlluvialCate" label="1">严重</el-radio>
  177. <el-radio v-model="addObj.isAlluvialCate" label="2">较重</el-radio>
  178. <el-radio v-model="addObj.isAlluvialCate" label="3">一般</el-radio>
  179. </el-form-item>
  180. <p style=";margin-top:10px;margin-bottom: 10px">
  181. <i class="el-icon-caret-right"></i>
  182. <span style="width:120px;padding-left: 10px">工程状况总体评价</span>
  183. <span class="hrs"></span>
  184. </p>
  185. <el-form-item label="工程状况总体评价">
  186. <el-radio v-model="addObj.evaluate" label="1">好</el-radio>
  187. <el-radio v-model="addObj.evaluate" label="2">一般</el-radio>
  188. <el-radio v-model="addObj.evaluate" label="3">较差</el-radio>
  189. </el-form-item>
  190. <el-form-item label="意见建议或需要说明的情况">
  191. <el-input type="textarea" rows="6" v-model="addObj.note" clearable
  192. placeholder="请输入意见建议或需要说明的情况"></el-input>
  193. </el-form-item>
  194. <!--<el-form-item label="经度">-->
  195. <!--<el-input v-model="addObj.centerX" autocomplete="off" class="input50"></el-input>-->
  196. <!--</el-form-item>-->
  197. <!--<el-form-item label="纬度">-->
  198. <!--<el-input v-model="addObj.centerY" autocomplete="off" class="input50"></el-input>-->
  199. <!--</el-form-item>-->
  200. <el-form-item label>
  201. <el-button type="primary" @click="makesure">保 存</el-button>
  202. </el-form-item>
  203. </el-form>
  204. </el-main>
  205. <problem-list
  206. v-if="showProblemList"
  207. :showProblemList='showProblemList'
  208. :currentObjectId="currentObjectId"
  209. :currentObjectName="currentObjectName"
  210. :problemMiddleType="'灌区最后一公里'"
  211. :problData="probId"
  212. @dialogFormVisible="getdialogFormVisible"
  213. :currentObjectRgstrId="currentObjectRgstrId"
  214. :rowData="rowData"
  215. :adFullName="adFullName"
  216. :projectName="addObj.name"
  217. ></problem-list>
  218. </el-container>
  219. </div>
  220. </template>
  221. <script>
  222. import request from "@util/gw_ajax_request.js";
  223. import unlimitDatePicker from '@baseWidget/unLimitdatePicker.vue'
  224. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  225. import problemList from '../../addProlemMidForm/yigongliProblemList'
  226. import adminDivisionCom from './components/adminDivisionCom'
  227. import {getGcyxglTb} from '@api/duChaTianBao.js'
  228. import {dateFormat} from '@util/gw_date';
  229. export default {
  230. components: {
  231. unlimitDatePicker,
  232. problemDialog,
  233. problemList,
  234. upload: resolve => {
  235. require(["@widget/uploadPdf.vue"], resolve);
  236. },
  237. adminDivisionCom
  238. },
  239. props: ['currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'currentResCode', 'rowData', 'rowId', 'adFullName'],
  240. data() {
  241. return {
  242. dialogFormVisible: false,
  243. formLabelWidth: "220px",
  244. loading: true,
  245. addObj: {
  246. name: "",//工程名称
  247. sour: "",//项目来源(建设部门)1水利 2国土 3发改 4农业 5财政(原农发)6烟草 7其他
  248. sourNote: "",//项目来源其他
  249. // compDate: "",//建成时间
  250. isCurryearComp: "",//建成时间
  251. beforeCurryearComp: "",//2000之后
  252. afterCurryearComp: "",//2000之前
  253. strgVlm: "",// 蓄水容积(m3)
  254. valdVlm: "",// 有效容积(m3) ,
  255. availIrrWtr: "",// 可供灌溉水量(m3)
  256. irrArea: "",//控制灌溉面积(亩)
  257. higStnType: "",//是否属于高标准农田 1是 2否 3部分属于
  258. adName: "",//行政区名称
  259. adCode: "",//
  260. prjPbmArea: "",//因工程问题导致原先可灌溉但现在无法灌溉的面积(亩)但现在无法灌溉的面积(亩) 但现在无法 灌溉的面积(亩)
  261. prjWhoTend: "",//工程所有权人1乡镇或县级 2村集体 3用水合作组织 4个人 5不明确"
  262. prjWhoTendNote: "",//混合备注
  263. prjUsrType: "",//工程使用权1村集体 2用水合作组织 3个人
  264. whoTend: "",//管护主体 1乡镇 2村集体 3用水合作组织 4个人 5专业管理队伍 6不明确
  265. isTendRcrd: "",//是否有管护记录 1有 2 否
  266. tendRcrdType: "",//有管护记录 1好 2一般 3差
  267. isRun: "",//是否能引水 1是2 否2
  268. notRunType: "",//不能正常提水灌溉原因 1水泵及机电(其他动力设备)不配套或损坏2地下水位下降明显,发生吊泵3井壁坍塌,井管破坏严重4其他
  269. notRunNote: "",//不能正常提水灌溉原因其他说明
  270. isSlpCll: "",//边坡有无坍塌1是 2 否 ,
  271. isSlpCllCate: "",//边坡有无坍塌 是 严重程度
  272. isAlluvial: "",//有无淤积 1是 2 否 ,
  273. isAlluvialCate: "",//有无淤积 是 严重程度
  274. evaluate: "",//工程状况总体评价 1 好 2一般 3较差
  275. note: "",//意见建议或需要说明的情况
  276. invsrName: "",//调研人员姓名
  277. invsrPhone: "",//调研人员联系电话
  278. invsrTm: "",//调研时间
  279. centerX: "",//PC经度
  280. centerY: "",//PC纬度
  281. state: "",//督查状态
  282. },
  283. operationType: "",
  284. rsvrRules: null,
  285. probId: '',
  286. showAddProblemDialog: false,
  287. showProblemList: false,
  288. checkList: [],
  289. projectSourceList: [
  290. {label: '水利', value: '1'},
  291. {label: '国土', value: '2'},
  292. {label: '发改', value: '3'},
  293. {label: '农业', value: '4'},
  294. {label: '财政(原农发)', value: '5'},
  295. {label: '烟草', value: '6'},
  296. {label: '其他', value: '7'}
  297. ],
  298. prjWhoTendList: [
  299. {label: '乡镇或县级', value: '1'},
  300. {label: '村集体', value: '2'},
  301. {label: '用水合作组织', value: '3'},
  302. {label: '个人', value: '4'},
  303. {label: '不明确', value: '5'}
  304. ],
  305. prjUsrTypeList: [
  306. {label: '村集体', value: '1'},
  307. {label: '用水合作组织', value: '2'},
  308. {label: '个人', value: '3'}
  309. ],
  310. whoTendList: [
  311. {label: '乡镇', value: '1'},
  312. {label: '村集体', value: '2'},
  313. {label: '用水合作组织', value: '3'},
  314. {label: '个人', value: '4'},
  315. {label: '专业管理队伍', value: '5'},
  316. {label: '不明确', value: '6'}
  317. ],
  318. beforeCurryearList: [
  319. {label: "20-60年代", value: '1'},
  320. {label: '60-70年代', value: '2'},
  321. {label: '70-80年代', value: '3'},
  322. {label: '80-90年代', value: '4'},
  323. {label: '90-00年代', value: '5'}
  324. ],
  325. };
  326. },
  327. computed: {
  328. recPersId() {
  329. return localStorage.getItem("userid") ? localStorage.getItem("userid") : "1098101939614724096";
  330. }
  331. },
  332. mounted() {
  333. this.findItemByType();
  334. this.addObj.adCode = this.currentResCode;
  335. this.addObj.adName = this.currentObjectName;
  336. if (this.rowId) this.getformList();
  337. },
  338. methods: {
  339. getformList() {
  340. let _self = this;
  341. getGcyxglTb(_self.rowId).then(res => {
  342. if (res.success) {
  343. if (res.data) {
  344. _self.addObj = res.data;
  345. _self.addObj.sour = _self.addObj.sour ? _self.addObj.sour.split(',') : ''
  346. // _self.addObj.prjWhoTend = _self.addObj.prjWhoTend ? _self.addObj.prjWhoTend.split(',') : ''
  347. // _self.addObj.prjUsrType = _self.addObj.prjUsrType ? _self.addObj.prjUsrType.split(',') : ''
  348. // _self.addObj.whoTend = _self.addObj.whoTend ? _self.addObj.whoTend.split(',') : ''
  349. _self.addObj.notRunType = _self.addObj.notRunType ? _self.addObj.notRunType.split(',') : ''
  350. }
  351. } else {
  352. this.$message.error(res.message)
  353. }
  354. });
  355. },
  356. //保存
  357. makesure() {
  358. let _self = this;
  359. _self.addObj["rgstrId"] = _self.currentObjectRgstrId;
  360. _self.addObj["objId"] = _self.currentObjectId;
  361. _self.addObj["persId"] = _self.recPersId;
  362. _self.addObj.sour = _self.addObj.sour ? _self.addObj.sour.join(',') : ''
  363. // _self.addObj.prjWhoTend = _self.addObj.prjWhoTend ? _self.addObj.prjWhoTend.join(',') : ''
  364. // _self.addObj.prjUsrType = _self.addObj.prjUsrType ? _self.addObj.prjUsrType.join(',') : ''
  365. // _self.addObj.whoTend = _self.addObj.whoTend ? _self.addObj.whoTend.join(',') : ''
  366. _self.addObj.notRunType = _self.addObj.notRunType ? _self.addObj.notRunType.join(',') : ''
  367. this.$refs['ruleForm'].validate((valid) => {
  368. if (valid) {
  369. this.$confirm("确认保存填写的信息吗?", "提示", {
  370. confirmButtonText: "确定",
  371. cancelButtonText: "取消",
  372. type: "warning"
  373. }).then(() => {
  374. request.post("/bis/insp/irr/pond", _self.addObj).then(res => {
  375. if (res.success) {
  376. _self.$message.success("保存成功");
  377. _self.$emit("addShuiKuSuccess");
  378. }
  379. });
  380. }).catch((err) => {
  381. this.$message.info(err)
  382. });
  383. } else {
  384. this.$message.warning('请检查填写信息')
  385. return
  386. }
  387. });
  388. },
  389. formatDate(timestamp) {
  390. return timestamp ? dateFormat(timestamp, 'yyyy-MM-dd') : "";
  391. },
  392. currentDivision(obj) {
  393. this.addObj.adCode = obj.adCode
  394. this.addObj.adName = obj.adName
  395. },
  396. irriChange(obj) {
  397. this.addObj.irrName = obj.irrName
  398. this.addObj.irrCode = obj.id
  399. },
  400. cancelHandler() {
  401. this.$emit("cancelHandler");
  402. },
  403. findItemByType() {
  404. const obj = {
  405. tname: "BIS_INSP_IRR_POND"
  406. }
  407. request.post("/bis/insp/item/ques/info/findItemByType", obj).then(res => {
  408. this.rsvrRules = res.data;
  409. })
  410. },
  411. addProblemList(item) {
  412. let rest = this.rsvrRules.filter(e => {
  413. return e.eName === item;
  414. });
  415. this.probId = rest[0].id;
  416. this.showProblemList = true;
  417. this.showAddProblemDialog = true
  418. },
  419. getdialogFormVisible(val) {
  420. this.showProblemList = val
  421. },
  422. }
  423. };
  424. </script>
  425. <style lang="scss">
  426. .gcyxgl_tb {
  427. label.el-radio {
  428. /*width: 60px;*/
  429. }
  430. .el-form {
  431. width: 540px;
  432. margin-top: 10px;
  433. }
  434. .add-problem-icon {
  435. font-size: 16px;
  436. }
  437. .sjxg_fj > div > div {
  438. margin: 0 !important;
  439. display: inline-block;
  440. width: 80px !important;
  441. }
  442. .w300 {
  443. width: 180px;
  444. text-align: left;
  445. }
  446. .font_red {
  447. color: red;
  448. }
  449. .input50 {
  450. width: 200px !important;
  451. margin: 0 12px 12px 0;
  452. }
  453. .span200 {
  454. width: 200px;
  455. }
  456. }
  457. </style>