e32c5b47be32ab5f6397cac948c4b479ca4ed1d4.svn-base 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. <template>
  2. <a-spin :spinning="confirmLoading">
  3. <j-form-container :disabled="formDisabled">
  4. <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
  5. <a-row>
  6. <a-col :span="12">
  7. <a-form-model-item label="堤防编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfbm">
  8. <a-input v-model="model.dfbm" placeholder="请输入堤防编码"></a-input>
  9. </a-form-model-item>
  10. </a-col>
  11. <a-col :span="12">
  12. <a-form-model-item label="堤防名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfmc">
  13. <a-input v-model="model.dfmc" placeholder="请输入堤防名称"></a-input>
  14. </a-form-model-item>
  15. </a-col>
  16. <a-col :span="12">
  17. <a-form-model-item label="起点位置行政区划" :labelCol="labelCol" :wrapperCol="wrapperCol"
  18. prop="qdwzxzqh">
  19. <j-area-linkage type="cascader" v-model="model.qdwzxzqh" placeholder="请输入省市区"/>
  20. </a-form-model-item>
  21. </a-col>
  22. <a-col :span="12">
  23. <a-form-model-item label="终点位置行政区划" :labelCol="labelCol" :wrapperCol="wrapperCol"
  24. prop="zdwzxzqh">
  25. <j-area-linkage type="cascader" v-model="model.zdwzxzqh" placeholder="请输入省市区"/>
  26. </a-form-model-item>
  27. </a-col>
  28. <a-col :span="12">
  29. <a-form-model-item label="起点经度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="qdjd">
  30. <a-input v-model="model.qdjd" placeholder="请输入起点经度" style="width: 100%"/>
  31. </a-form-model-item>
  32. </a-col>
  33. <a-col :span="12">
  34. <a-form-model-item label="起点纬度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="qdwd">
  35. <a-input v-model="model.qdwd" placeholder="请输入起点纬度" style="width: 100%"/>
  36. </a-form-model-item>
  37. </a-col>
  38. <a-col :span="12">
  39. <a-form-model-item label="终点经度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zdjd">
  40. <a-input v-model="model.zdjd" placeholder="请输入终点经度" style="width: 100%"/>
  41. </a-form-model-item>
  42. </a-col>
  43. <a-col :span="12">
  44. <a-form-model-item label="终点纬度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zdwd">
  45. <a-input v-model="model.zdwd" placeholder="请输入终点纬度" style="width: 100%"/>
  46. </a-form-model-item>
  47. </a-col>
  48. <a-col :span="12">
  49. <a-form-model-item label="流域" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ly">
  50. <j-dict-select-tag type="list" v-model="model.ly" dictCode="ly" placeholder="请选择流域"/>
  51. </a-form-model-item>
  52. </a-col>
  53. <a-col :span="12">
  54. <a-form-model-item label="水系" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sx">
  55. <j-dict-select-tag type="list" v-model="model.sx" dictCode="sx" placeholder="请选择水系"/>
  56. </a-form-model-item>
  57. </a-col>
  58. <a-col :span="12">
  59. <a-form-model-item label="河段名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hdmc">
  60. <a-input v-model="model.hdmc" placeholder="请输入河段名称"></a-input>
  61. </a-form-model-item>
  62. </a-col>
  63. <a-col :span="12">
  64. <a-form-model-item label="所在河流(湖泊、海岸)类型" :labelCol="labelCol" :wrapperCol="wrapperCol"
  65. prop="szhllx">
  66. <j-dict-select-tag type="list" v-model="model.szhllx" dictCode="szhllx"
  67. placeholder="请选择所在河流(湖泊、海岸)类型"/>
  68. </a-form-model-item>
  69. </a-col>
  70. <a-col :span="12">
  71. <a-form-model-item label="所在河流(湖泊、海岸)名称" :labelCol="labelCol" :wrapperCol="wrapperCol"
  72. prop="szhlmc">
  73. <j-popup
  74. v-model="model.szhlmc"
  75. field="szhlmc"
  76. org-fields="hlmc"
  77. dest-fields="szhlmc"
  78. code="hllist"
  79. :multi="false"
  80. @input="popupCallback"
  81. />
  82. </a-form-model-item>
  83. </a-col>
  84. <a-col :span="12">
  85. <a-form-model-item label="河流岸别" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hlab">
  86. <j-dict-select-tag type="list" v-model="model.anbie" dictCode="hlab" placeholder="请输入河流岸别"/>
  87. </a-form-model-item>
  88. </a-col>
  89. <a-col :span="12">
  90. <a-form-model-item label="堤防类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dflx">
  91. <j-dict-select-tag type="list" v-model="model.dflx" dictCode="dflx" placeholder="请选择堤防类型"/>
  92. </a-form-model-item>
  93. </a-col>
  94. <a-col :span="12">
  95. <a-form-model-item label="堤防型式" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfxs">
  96. <j-dict-select-tag type="list" v-model="model.dfxs" dictCode="dfxs" placeholder="请选择堤防型式"/>
  97. </a-form-model-item>
  98. </a-col>
  99. <a-col :span="12">
  100. <a-form-model-item label="堤防跨界情况" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfkjqk">
  101. <j-dict-select-tag type="list" v-model="model.dfkjqk" dictCode="dfkjqk"
  102. placeholder="请选择堤防跨界情况"/>
  103. </a-form-model-item>
  104. </a-col>
  105. <a-col :span="12">
  106. <a-form-model-item label="工程建设情况" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="gcjsqk">
  107. <j-dict-select-tag type="list" v-model="model.gcjsqk" dictCode="gcjsqk"
  108. placeholder="请选择工程建设情况"/>
  109. </a-form-model-item>
  110. </a-col>
  111. <a-col :span="12">
  112. <a-form-model-item label="开工年月" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="kgny">
  113. <j-date placeholder="请选择开工年月" v-model="model.kgny" style="width: 100%"/>
  114. </a-form-model-item>
  115. </a-col>
  116. <a-col :span="12">
  117. <a-form-model-item label="建成年月" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="jcny">
  118. <j-date placeholder="请选择建成年月" v-model="model.jcny" style="width: 100%"/>
  119. </a-form-model-item>
  120. </a-col>
  121. <a-col :span="12">
  122. <a-form-model-item label="工程任务" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="gcrw">
  123. <j-dict-select-tag type="list" v-model="model.gcrw" dictCode="gcrw" placeholder="请选择工程任务"/>
  124. </a-form-model-item>
  125. </a-col>
  126. <a-col :span="12">
  127. <a-form-model-item label="堤防级别" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfjb">
  128. <j-dict-select-tag type="list" v-model="model.dfjb" dictCode="dfjb" placeholder="请选择堤防级别"/>
  129. </a-form-model-item>
  130. </a-col>
  131. <a-col :span="12">
  132. <a-form-model-item label="堤防长度(m)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dfcd">
  133. <a-input v-model="model.dfcd" placeholder="请输入堤防长度(m)"></a-input>
  134. </a-form-model-item>
  135. </a-col>
  136. <a-col :span="12">
  137. <a-form-model-item label="达到规划防洪(潮)标准的长度(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  138. prop="ddghfhdcd">
  139. <a-input v-model="model.ddghfhdcd" placeholder="请输入达到规划防洪(潮)标准的长度(m)"></a-input>
  140. </a-form-model-item>
  141. </a-col>
  142. <a-col :span="12">
  143. <a-form-model-item label="规划防洪潮标准[重现期](年)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  144. prop="ghfhcbz">
  145. <a-input v-model="model.ghfhcbz" placeholder="请输入规划防洪潮标准[重现期](年)"></a-input>
  146. </a-form-model-item>
  147. </a-col>
  148. <a-col :span="12">
  149. <a-form-model-item label="高程系统" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="gcxt">
  150. <a-input v-model="model.gcxt" placeholder="请输入高程系统"></a-input>
  151. </a-form-model-item>
  152. </a-col>
  153. <a-col :span="12">
  154. <a-form-model-item label="堤顶高程起点高程(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  155. prop="ddgcqdgc">
  156. <a-input v-model="model.ddgcqdgc" placeholder="请输入堤顶高程起点高程(m)"></a-input>
  157. </a-form-model-item>
  158. </a-col>
  159. <a-col :span="12">
  160. <a-form-model-item label="堤顶高程终点高程(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  161. prop="ddgczdgc">
  162. <a-input v-model="model.ddgczdgc" placeholder="请输入堤顶高程终点高程(m)"></a-input>
  163. </a-form-model-item>
  164. </a-col>
  165. <a-col :span="12">
  166. <a-form-model-item label="设计水(高潮)位(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  167. prop="sjsw">
  168. <a-input v-model="model.sjsw" placeholder="请输入设计水(高潮)位(m)"></a-input>
  169. </a-form-model-item>
  170. </a-col>
  171. <a-col :span="12">
  172. <a-form-model-item label="堤防高度最小值(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  173. prop="dfgdzxz">
  174. <a-input v-model="model.dfgdzxz" placeholder="请输入堤防高度最小值(m)"></a-input>
  175. </a-form-model-item>
  176. </a-col>
  177. <a-col :span="12">
  178. <a-form-model-item label="堤防高度最大值(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  179. prop="dfgdzdz">
  180. <a-input v-model="model.dfgdzdz" placeholder="请输入堤防高度最大值(m)"></a-input>
  181. </a-form-model-item>
  182. </a-col>
  183. <a-col :span="12">
  184. <a-form-model-item label="堤防宽度最小值(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  185. prop="dfkdzxz">
  186. <a-input v-model="model.dfkdzxz" placeholder="请输入堤防宽度最小值(m)"></a-input>
  187. </a-form-model-item>
  188. </a-col>
  189. <a-col :span="12">
  190. <a-form-model-item label="堤防宽度最大值(m)" :labelCol="labelCol" :wrapperCol="wrapperCol"
  191. prop="dfkdzdz">
  192. <a-input v-model="model.dfkdzdz" placeholder="请输入堤防宽度最大值(m)"></a-input>
  193. </a-form-model-item>
  194. </a-col>
  195. <a-col :span="12">
  196. <a-form-model-item label="水闸数量(个)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="szsl">
  197. <a-input v-model="model.szsl" placeholder="请输入水闸数量(个)"></a-input>
  198. </a-form-model-item>
  199. </a-col>
  200. <a-col :span="12">
  201. <a-form-model-item label="管涵数量(个)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ghsl">
  202. <a-input v-model="model.ghsl" placeholder="请输入管涵数量(个)"></a-input>
  203. </a-form-model-item>
  204. </a-col>
  205. <a-col :span="12">
  206. <a-form-model-item label="泵站数量(处)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bzsl">
  207. <a-input v-model="model.bzsl" placeholder="请输入泵站数量(处)"></a-input>
  208. </a-form-model-item>
  209. </a-col>
  210. <a-col :span="12">
  211. <a-form-model-item label="倒虹吸数量(个)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dxhsl">
  212. <a-input v-model="model.dxhsl" placeholder="请输入倒虹吸数量(个)"></a-input>
  213. </a-form-model-item>
  214. </a-col>
  215. <a-col :span="12">
  216. <a-form-model-item label="堤防工程管理单位名称" :labelCol="labelCol" :wrapperCol="wrapperCol"
  217. prop="dfgcgldwmc">
  218. <a-input v-model="model.dfgcgldwmc" placeholder="请输入堤防工程管理单位名称"></a-input>
  219. </a-form-model-item>
  220. </a-col>
  221. <a-col :span="12">
  222. <a-form-model-item label="堤防工程归口管理部门" :labelCol="labelCol" :wrapperCol="wrapperCol"
  223. prop="dfgcgkglbmA">
  224. <a-input v-model="model.dfgcgkglbmA" placeholder="请输入堤防工程归口管理部门"></a-input>
  225. </a-form-model-item>
  226. </a-col>
  227. <a-col :span="12">
  228. <a-form-model-item label="堤防工程归口管理部门" :labelCol="labelCol" :wrapperCol="wrapperCol"
  229. prop="dfgcgkglbmB">
  230. <j-dict-select-tag type="list" v-model="model.dfgcgkglbmB" dictCode="bzgkglbm"
  231. placeholder="请选择堤防工程归口管理部门"/>
  232. </a-form-model-item>
  233. </a-col>
  234. <a-col :span="12">
  235. <a-form-model-item label="是否完成划界" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfwchj">
  236. <j-dict-select-tag type="list" v-model="model.sfwchj" dictCode="yn"
  237. placeholder="请选择是否完成划界"/>
  238. </a-form-model-item>
  239. </a-col>
  240. <a-col :span="12">
  241. <a-form-model-item label="是否完成确权" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfwcqq">
  242. <j-dict-select-tag type="list" v-model="model.sfwcqq" dictCode="yn"
  243. placeholder="请选择是否完成确权"/>
  244. </a-form-model-item>
  245. </a-col>
  246. <a-col :span="12">
  247. <a-form-model-item label="审批文件" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="scwj">
  248. <j-upload v-model="model.scwj"></j-upload>
  249. </a-form-model-item>
  250. </a-col>
  251. <a-col :span="12">
  252. <a-form-model-item label="导入矢量文件" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="geopath">
  253. <j-upload v-model="model.geopath" file-type="zip" biz-path="hzz"></j-upload>
  254. </a-form-model-item>
  255. </a-col>
  256. </a-row>
  257. </a-form-model>
  258. </j-form-container>
  259. </a-spin>
  260. </template>
  261. <script>
  262. import {httpAction, getAction} from '@/api/manage'
  263. import {validateDuplicateValue} from '@/utils/util'
  264. export default {
  265. name: 'RmDfgcForm',
  266. components: {},
  267. props: {
  268. //表单禁用
  269. disabled: {
  270. type: Boolean,
  271. default: false,
  272. required: false
  273. }
  274. },
  275. data() {
  276. return {
  277. model: {},
  278. labelCol: {
  279. xs: {span: 24},
  280. sm: {span: 5},
  281. },
  282. wrapperCol: {
  283. xs: {span: 24},
  284. sm: {span: 16},
  285. },
  286. confirmLoading: false,
  287. validatorRules: {
  288. dfbm: [
  289. {required: true, message: '堤坊编码!'},
  290. ],
  291. dfmc: [
  292. {required: true, message: '堤防名称!'},
  293. ],
  294. qdwzxzqh: [
  295. {required: true, message: '起点位置行政区划!'},
  296. ],
  297. zdwzxzqh: [
  298. {required: true, message: '终点位置行政区划!'},
  299. ],
  300. qdjd: [
  301. {required: true, message: '起点经度!'},
  302. ],
  303. qdwd: [
  304. {required: true, message: '起点纬度!'},
  305. ],
  306. zdjd: [
  307. {required: true, message: '终点经度!'},
  308. ],
  309. zdwd: [
  310. {required: true, message: '终点纬度!'},
  311. ],
  312. },
  313. url: {
  314. add: "/hzz.shjsgc.dfgc/rmDfgc/add",
  315. edit: "/hzz.shjsgc.dfgc/rmDfgc/edit",
  316. queryById: "/hzz.shjsgc.dfgc/rmDfgc/queryById"
  317. }
  318. }
  319. },
  320. computed: {
  321. formDisabled() {
  322. return this.disabled
  323. },
  324. },
  325. created() {
  326. //备份model原始值
  327. this.modelDefault = JSON.parse(JSON.stringify(this.model));
  328. },
  329. methods: {
  330. add() {
  331. this.edit(this.modelDefault);
  332. },
  333. edit(record) {
  334. this.model = Object.assign({}, record);
  335. this.visible = true;
  336. },
  337. submitForm() {
  338. const that = this;
  339. // 触发表单验证
  340. this.$refs.form.validate(valid => {
  341. if (valid) {
  342. that.confirmLoading = true;
  343. let httpurl = '';
  344. let method = '';
  345. if (!this.model.id) {
  346. httpurl += this.url.add;
  347. method = 'post';
  348. } else {
  349. httpurl += this.url.edit;
  350. //method = 'put';
  351. method = 'post';
  352. }
  353. httpAction(httpurl, this.model, method).then((res) => {
  354. if (res.success) {
  355. that.$message.success(res.message);
  356. that.$emit('ok');
  357. } else {
  358. that.$message.warning(res.message);
  359. }
  360. }).finally(() => {
  361. that.confirmLoading = false;
  362. })
  363. }
  364. })
  365. },
  366. popupCallback(value, row) {
  367. this.model = Object.assign(this.model, row);
  368. }
  369. }
  370. }
  371. </script>