fae1b3ac33458badaeef50dbcc4b738690649daf.svn-base 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452
  1. <template>
  2. <div>
  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. <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules" ref="glzrtxRef"
  7. style="padding-top: 10px;">
  8. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  9. <!--style="width:120px;padding-left: 10px">主管单位</span><span class="hrs"></span></p>-->
  10. <el-form-item label="所在堤防名称">
  11. <el-input v-model="formObj.sapName" autocomplete="off" style="width:70%;"></el-input>
  12. </el-form-item>
  13. <el-form-item label="险工险段长度(m)">
  14. <el-input v-model="formObj.sapLen" placeholder="请输入详细地点" autocomplete="off"
  15. style="width:70%;"></el-input>
  16. </el-form-item>
  17. <el-form-item label="堤防级别">
  18. <el-select v-model="formObj.dikeGrad" placeholder="请选择" clearable>
  19. <el-option v-for="item in difangdengji" :key="item.value" :label="item.label"
  20. :value="item.value"></el-option>
  21. </el-select>
  22. </el-form-item>
  23. <el-form-item label="规划防洪(潮)标准[重现期]">
  24. <el-input v-model="formObj.planFlSta" autocomplete="off" style="width:70%;"></el-input>
  25. </el-form-item>
  26. <el-form-item label="所属河岸">
  27. <el-input v-model="formObj.riverBank" autocomplete="off" style="width:70%;"></el-input>
  28. </el-form-item>
  29. <el-form-item label="所属湖泊">
  30. <el-input v-model="formObj.lake" autocomplete="off" style="width:70%;"></el-input>
  31. </el-form-item>
  32. <el-form-item label="所属海岸">
  33. <el-input v-model="formObj.coast" autocomplete="off" style="width:70%;"></el-input>
  34. </el-form-item>
  35. <el-form-item label="主管部门名称">
  36. <el-input v-model="formObj.compUnit" autocomplete="off" style="width:70%;"></el-input>
  37. </el-form-item>
  38. <el-form-item label="管理单位名称">
  39. <el-input v-model="formObj.mampu" autocomplete="off" style="width:70%;"></el-input>
  40. </el-form-item>
  41. <el-form-item label="管理单位联系人">
  42. <el-input v-model="formObj.mampuAttn" autocomplete="off" style="width:70%;"></el-input>
  43. </el-form-item>
  44. <el-form-item label="管理单位联系人电话">
  45. <el-input v-model="formObj.mampuAttnTel" autocomplete="off" style="width:70%;"></el-input>
  46. </el-form-item>
  47. <!---->
  48. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  49. <!--style="width:120px;padding-left: 10px">管护主体</span><span class="hrs"></span></p>-->
  50. <!--<el-form-item label="是否有管护主体且管护主体明确">-->
  51. <!--<el-radio v-model="formObj.wmbpIsC" label="1">是</el-radio>-->
  52. <!--<el-radio v-model="formObj.wmbpIsC" label="2">否</el-radio>-->
  53. <!--<el-button-->
  54. <!--@click="addProblem('wmbpIsC')"-->
  55. <!--type="text"-->
  56. <!--v-if="formObj.wmbpIsC =='2'">-->
  57. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  58. <!--</el-button>-->
  59. <!--</el-form-item>-->
  60. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  61. <!--style="width:120px;padding-left: 10px">管护人员</span><span class="hrs"></span></p>-->
  62. <!--<el-form-item label="是否配备管护人员">-->
  63. <!--<el-radio v-model="formObj.pssIsH" label="1">是</el-radio>-->
  64. <!--<el-radio v-model="formObj.pssIsH" label="2">否</el-radio>-->
  65. <!--<el-button-->
  66. <!--@click="addProblem('pssIsH')"-->
  67. <!--type="text"-->
  68. <!--v-if="formObj.pssIsH =='2'">-->
  69. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  70. <!--</el-button>-->
  71. <!--</el-form-item>-->
  72. <!--<el-form-item label="是否参加岗位培训" v-if="formObj.pssIsH == '1'" prop="pssIsC">-->
  73. <!--<el-radio v-model="formObj.pssIsC" label="1">是</el-radio>-->
  74. <!--<el-radio v-model="formObj.pssIsC" label="2">否</el-radio>-->
  75. <!--<el-button-->
  76. <!--@click="addProblem('pssIsC')"-->
  77. <!--type="text"-->
  78. <!--v-if="formObj.pssIsC =='2'">-->
  79. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  80. <!--</el-button>-->
  81. <!--</el-form-item>-->
  82. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  83. <!--style="width:120px;padding-left: 10px">管理责任人</span><span class="hrs"></span></p>-->
  84. <!--<el-form-item label="是否落实防汛行政责任人">-->
  85. <!--<el-radio v-model="formObj.prftaofcIsH" label="1">是</el-radio>-->
  86. <!--<el-radio v-model="formObj.prftaofcIsH" label="2">否</el-radio>-->
  87. <!--<el-button-->
  88. <!--@click="addProblem('prftaofcIsH')"-->
  89. <!--type="text"-->
  90. <!--v-if="formObj.prftaofcIsH =='2'">-->
  91. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  92. <!--</el-button>-->
  93. <!--</el-form-item>-->
  94. <!--<el-form-item label="防汛行政责任人是否履职到位" v-if="formObj.prftaofcIsH == '1'" prop="prftaofcInfo">-->
  95. <!--<el-radio v-model="formObj.prftaofcInfo" label="1">是</el-radio>-->
  96. <!--<el-radio v-model="formObj.prftaofcInfo" label="2">否</el-radio>-->
  97. <!--<el-button-->
  98. <!--@click="addProblem('prftaofcInfo')"-->
  99. <!--type="text"-->
  100. <!--v-if="formObj.prftaofcInfo =='2'">-->
  101. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  102. <!--</el-button>-->
  103. <!--</el-form-item>-->
  104. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  105. <!--style="width:120px;padding-left: 10px">经费落实</span><span class="hrs"></span></p>-->
  106. <!--<el-form-item label="人员基本支出经费是否足额到位">-->
  107. <!--<el-radio v-model="formObj.befpIsFip" label="1">是</el-radio>-->
  108. <!--<el-radio v-model="formObj.befpIsFip" label="2">否</el-radio>-->
  109. <!--<el-button-->
  110. <!--@click="addProblem('befpIsFip')"-->
  111. <!--type="text"-->
  112. <!--v-if="formObj.befpIsFip =='2'">-->
  113. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  114. <!--</el-button>-->
  115. <!--</el-form-item>-->
  116. <!--<el-form-item label="工程维修养护经费是否是否足额">-->
  117. <!--<el-radio v-model="formObj.pmameIsFip" label="1">是</el-radio>-->
  118. <!--<el-radio v-model="formObj.pmameIsFip" label="2">否</el-radio>-->
  119. <!--<el-button-->
  120. <!--@click="addProblem('pmameIsFip')"-->
  121. <!--type="text"-->
  122. <!--v-if="formObj.pmameIsFip =='2'">-->
  123. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  124. <!--</el-button>-->
  125. <!--</el-form-item>-->
  126. <!--<p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span-->
  127. <!--style="width:120px;padding-left: 10px">穿(跨、临)堤建筑物管理</span><span class="hrs"></span></p>-->
  128. <!--<el-form-item label="是否存在穿(跨、临)建筑物">-->
  129. <!--<el-radio v-model="formObj.hasEbm" label="1">是</el-radio>-->
  130. <!--<el-radio v-model="formObj.hasEbm" label="2">否</el-radio>-->
  131. <!--</el-form-item>-->
  132. <!--<el-form-item label="是否有管护主体且管护主体明确" v-if="formObj.hasEbm == '1'" prop="ebmWmbpIsC">-->
  133. <!--<el-radio v-model="formObj.ebmWmbpIsC" label="1">是</el-radio>-->
  134. <!--<el-radio v-model="formObj.ebmWmbpIsC" label="2">否</el-radio>-->
  135. <!--<el-button-->
  136. <!--@click="addProblem('ebmWmbpIsC')"-->
  137. <!--type="text"-->
  138. <!--v-if="formObj.ebmWmbpIsC =='2'">-->
  139. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  140. <!--</el-button>-->
  141. <!--</el-form-item>-->
  142. <!--<el-form-item label="是否落实管护责任且管护责任明确" v-if="formObj.hasEbm == '1'" prop="ebmIsIacTrotm">-->
  143. <!--<el-radio v-model="formObj.ebmIsIacTrotm" label="1">是</el-radio>-->
  144. <!--<el-radio v-model="formObj.ebmIsIacTrotm" label="2">否</el-radio>-->
  145. <!--<el-button-->
  146. <!--@click="addProblem('ebmIsIacTrotm')"-->
  147. <!--type="text"-->
  148. <!--v-if="formObj.ebmIsIacTrotm =='2'">-->
  149. <!--<i class="el-icon-circle-plus add-problem-icon"></i>-->
  150. <!--</el-button>-->
  151. <!--</el-form-item>-->
  152. <el-form-item label="">
  153. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  154. </el-form-item>
  155. </el-form>
  156. </el-main>
  157. <problem-dialog
  158. v-if="showAddProblemDialog && openType"
  159. :objType="pType"
  160. :villType="pType"
  161. :objId="currentObjectId"
  162. :objName="currentObjectName"
  163. :problemMiddleType="'堤防险工险段'"
  164. :problData="probId"
  165. @closeDialog="closePlDialog"
  166. :currentObjectRgstrId="currentObjectRgstrId"
  167. ></problem-dialog>
  168. </el-container>
  169. </div>
  170. </template>
  171. <script>
  172. import inputWith from "@widget/inuptWith.vue"
  173. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  174. import request from "@util/gw_ajax_request.js"
  175. import {getBaseSituation} from "@api/duChaTianBao.js"
  176. export default {
  177. components: {
  178. inputWith: inputWith,
  179. problemDialog
  180. },
  181. props: ['currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'pType','openType'],
  182. data() {
  183. var checkTel = (rule, value, callback) => {
  184. var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
  185. var isMob = /^[1][3,4,5,7,8,9][0-9]{9}$/;// 座机格式
  186. if (value && !isMob.test(value) && !isPhone.test(value)) {
  187. callback(new Error('请输入合理电话'));
  188. } else if (value && (isMob.test(value) || isPhone.test(value))) {
  189. callback();
  190. }
  191. };
  192. return {
  193. rules: {
  194. compUnit: [
  195. {required: true, message: '请输入主管单位', trigger: 'blur'}
  196. ],
  197. // prftaofcInfo: [
  198. // {required: true, message: '请选择防汛行政责任人是否履职到位', trigger: 'change'}
  199. // ],
  200. // pssIsC: [
  201. // {required: true, message: '请选择是否参加岗位培训', trigger: 'change'}
  202. // ],
  203. // ebmIsIacTrotm: [
  204. // {required: true, message: '请选择是否落实管护责任且管护责任明确', trigger: 'change'}
  205. // ],
  206. // ebmWmbpIsC: [
  207. // {required: true, message: '请选择是否有管护主体且管护主体明确', trigger: 'change'}
  208. // ],
  209. },
  210. formObj: {
  211. // befpIsFip: "",//人员基本支出经费是否足额到位(1:是;2:否;0:未填) ,
  212. // compUnit: "",//主管单位名称 ,
  213. // ebmIsIacTrotm: "",//堤建筑物管理-是否落实管护责任且管护责任明确(1:是;2:否;0:未填) ,
  214. // ebmWmbpIsC: "",//堤建筑物管理-是否有管护主体且管护主体明确(1:是;2:否;0:未填) ,
  215. // pmameIsFip: "",//工程维修养护经费是否足额到位(1:是;2:否;0:未填) ,
  216. // prftaofcInfo: "",//防汛行政责任人是否履职到位(1:是;2:否;0:未填) ,
  217. // prftaofcIsH: "",//是否落实防汛行政责任人(1:是;2:否;0:未填) ,
  218. // pssIsC: "",//管护人员是否经过岗位培训(1:是;2:否;0:未填) ,
  219. // pssIsH: "",//是否配备管护人员(1:是;2:否;0:未填) ,
  220. // status: "",//填报状态(0:未填报;1:填报中;2:已填报) ,
  221. // wmbpIsC: "",//是否有管护主体且管护主体明确(1:是;2:否;0:未填)
  222. // hasEbm: ""
  223. sapName: '',//险工险段名称 ,
  224. sapLen: '',//险工险段长度(m) ,
  225. dikeGrad: '',//堤防级别 ,
  226. planFlSta: '',//规划防洪(潮)标准[重现期] ,
  227. rvLkCst: '',//所属河/湖/海岸名称 ,
  228. compUnit: '',//主管部门名称 ,
  229. mampu: '',//管理单位 ,
  230. mampuAttn: '',//管理单位责任人 ,
  231. mampuAttnTel: '',//管理单位责任人电话 ,
  232. status: '',//填报状态(0:未填报;1:填报中;2:已填报)
  233. },
  234. difangdengji: [
  235. {
  236. value: "1",
  237. label: "1级"
  238. },
  239. {
  240. value: "2",
  241. label: "2级"
  242. },
  243. {
  244. value: "3",
  245. label: "3级"
  246. },
  247. {
  248. value: "4",
  249. label: "4级"
  250. },
  251. {
  252. value: "5",
  253. label: "5级"
  254. },
  255. {
  256. value: "6",
  257. label: "5级以下"
  258. }
  259. ],
  260. dialogFormVisible: false,
  261. formLabelWidth: '260px',
  262. loading: true,
  263. operationType1: '',
  264. rsvrRules: null,
  265. probId: '',
  266. showAddProblemDialog: false,
  267. saveLoading: false
  268. }
  269. },
  270. computed: {
  271. recPersId() {
  272. return localStorage.getItem("userid") ? localStorage.getItem("userid") : ''
  273. }
  274. },
  275. created() {
  276. // this.findItemByType()
  277. },
  278. mounted() {
  279. this.getRgstridObj();
  280. },
  281. watch: {
  282. // currentObjectRgstrId(n, o) {
  283. // this.getRgstridObj();
  284. // },
  285. },
  286. methods: {
  287. getRgstridObj() {
  288. var _self = this;
  289. getBaseSituation(_self.currentObjectRgstrId).then((res) => {
  290. if (res.success && Object.keys(res.data).length) {
  291. _self.formObj = res.data;
  292. _self.operationType1 = 'update';
  293. } else {
  294. _self.formObj = {};
  295. _self.operationType1 = 'add';
  296. }
  297. });
  298. },
  299. addHandler() {
  300. this.$refs.glzrtxRef.validate((valid) => {
  301. if (valid) {
  302. var _self = this;
  303. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  304. _self.formObj['recPersId'] = _self.recPersId;
  305. console.log(_self.formObj);
  306. if (_self.formObj.sapName &&
  307. _self.formObj.sapLen &&
  308. _self.formObj.dikeGrad &&
  309. _self.formObj.planFlSta &&
  310. _self.formObj.compUnit &&
  311. _self.formObj.mampu &&
  312. _self.formObj.mampuAttn &&
  313. _self.formObj.mampuAttnTel &&
  314. _self.formObj.riverBank &&
  315. _self.formObj.lake &&
  316. _self.formObj.coast
  317. ) {
  318. this.formObj.status = "2"
  319. } else {
  320. this.formObj.status = "1"
  321. }
  322. if (_self.formObj.sapName === undefined &&
  323. _self.formObj.sapLen === undefined &&
  324. _self.formObj.dikeGrad === undefined &&
  325. _self.formObj.planFlSta === undefined &&
  326. _self.formObj.compUnit === undefined &&
  327. _self.formObj.mampu === undefined &&
  328. _self.formObj.mampuAttn === undefined &&
  329. _self.formObj.mampuAttnTel === undefined &&
  330. _self.formObj.riverBank === undefined &&
  331. _self.formObj.lake === undefined &&
  332. _self.formObj.coast === undefined) {
  333. this.formObj.status = "0"
  334. }
  335. this.$confirm('确认保存管理责任体系情况信息?', '提示', {
  336. confirmButtonText: '确定',
  337. cancelButtonText: '取消',
  338. type: 'warning'
  339. })
  340. .then(() => {
  341. if (_self.operationType1 == 'add') {
  342. try {
  343. if (!this.saveLoading) {
  344. this.saveLoading = true
  345. request.post('/bis/insp/waga/sap/rgstr/base', _self.formObj).then((res) => {
  346. if (res.success) {
  347. _self.$message.success("添加成功");
  348. _self.$emit("addShuiKuSuccess");
  349. }
  350. this.saveLoading = false
  351. }).catch(err => {
  352. this.saveLoading = false
  353. this.$message.info(err)
  354. });
  355. }
  356. } catch (e) {
  357. }
  358. } else if (_self.operationType1 == 'update') {
  359. try {
  360. if (!this.saveLoading) {
  361. this.saveLoading = true
  362. request.post('/bis/insp/waga/sap/rgstr/base', _self.formObj).then((res) => {
  363. if (res.success) {
  364. _self.$message.success("修改成功");
  365. _self.$emit("addShuiKuSuccess");
  366. }
  367. this.saveLoading = false
  368. }).catch(err => {
  369. this.saveLoading = false
  370. this.$message.info(err)
  371. });
  372. }
  373. } catch (e) {
  374. }
  375. }
  376. })
  377. .catch(() => {
  378. });
  379. } else {
  380. this.$message.warning('请检查填写信息');
  381. return false
  382. }
  383. })
  384. },
  385. cancelHandler() {
  386. this.$emit('cancelHandler');
  387. },
  388. findItemByType() {
  389. const obj = {
  390. tname: "BIS_INSP_WAGA_SAP_RGSTR_MRS_CI"
  391. }
  392. request.post("/bis/insp/item/ques/info/findItemByType", obj).then(res => {
  393. this.rsvrRules = res.data;
  394. })
  395. },
  396. addProblem(item) {
  397. let rest = this.rsvrRules.filter(e => {
  398. return e.eName === item;
  399. });
  400. this.probId = rest[0].id;
  401. this.showAddProblemDialog = true
  402. },
  403. formatRadio(val) {
  404. if (val == '1') {
  405. return '是'
  406. } else if (val == '2') {
  407. return '否'
  408. } else {
  409. return val
  410. }
  411. },
  412. closePlDialog(val) {
  413. this.showAddProblemDialog = false;
  414. }
  415. },
  416. }
  417. </script>
  418. <style>
  419. #dcdxHeader {
  420. padding: 15px 20px;
  421. }
  422. #dxdcFooter {
  423. text-align: center;
  424. }
  425. #dxdcAside {
  426. border: 1px solid #d5d5ff;
  427. }
  428. .el-dialog__wrapper .el-treeWhite {
  429. /* max-height: 260px !important; */
  430. }
  431. .add-problem-icon {
  432. font-size: 16px;
  433. }
  434. </style>