a9170483f98615f203a15997be86c38e2e99e5d7.svn-base 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  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. <table>
  7. <tr style="height: 60px">
  8. <td rowspan="2" style="font-weight: 700;">检查名称</td>
  9. <td colspan="2">
  10. <j-popup
  11. v-model="model.jcmc"
  12. field="xmmc"
  13. org-fields="xmmc,id,spzt"
  14. dest-fields="jcmc,jsxmid,spqk"
  15. code="xmrklist"
  16. :multi="true"
  17. @input="popupCallback"
  18. />
  19. </td>
  20. <td rowspan="2" style="font-weight: 700;">检查时间</td>
  21. <td colspan="2"> <j-date placeholder="请选择竣工日期" v-model="model.jcsj" style="width: 100%; border: 0" /></td>
  22. </tr>
  23. <tr>
  24. <tr>
  25. <td rowspan="2" style="font-weight: 700;">施工资料审核情况</td>
  26. <td>是否审核</td>
  27. <td colspan="2">施工审核机关、文件、时间</td>
  28. <td>施工单位</td>
  29. </tr>
  30. <tr>
  31. <td>
  32. <j-dict-select-tag type="list" style="border:0" v-model="model.sfsh" dictCode="yn" placeholder="请选择施工资料是否审核" />
  33. </td>
  34. <td colspan="2">
  35. <a-input v-model="model.sgshjgwjsj" style="border:0" placeholder="请输入施工审核机关、文件、时间" ></a-input>
  36. </td>
  37. <td>
  38. <a-input v-model="model.sgdw" style="border:0" placeholder="请输入施工单位" ></a-input>
  39. </td>
  40. </tr>
  41. <tr>
  42. <td rowspan="2" style="font-weight: 700;">监管情况</td>
  43. <td >监管单位</td>
  44. <td >监管负责人</td>
  45. <td>施工现场是否符合要求</td>
  46. <td>施工结束是否恢复河道原状</td>
  47. </tr>
  48. <tr>
  49. <td >
  50. <a-input v-model="model.jgdw" style="border: 0" placeholder="请输入监管单位" ></a-input>
  51. </td>
  52. <td >
  53. <a-input v-model="model.jgfzr" style="border: 0" placeholder="请输入监管负责人" ></a-input>
  54. </td>
  55. <td>
  56. <j-dict-select-tag type="list"style="border: 0" v-model="model.sgxcsffhyq" dictCode="yn" placeholder="请选择施工现场是否符合要求" />
  57. </td>
  58. <td>
  59. <j-dict-select-tag type="list" style="border: 0" v-model="model.sgjssfhfhdyz" dictCode="yn" placeholder="请选择施工结束是否恢复河道原状" />
  60. </td>
  61. </tr>
  62. <tr>
  63. <td rowspan="2" style="font-weight: 700;">度汛措施情况</td>
  64. <td>是否跨汛施工</td>
  65. <td>度汛方案是否编制</td>
  66. <td>责任制是否落实</td>
  67. <td>人员、物资是否落实</td>
  68. </tr>
  69. <tr>
  70. <td>
  71. <j-dict-select-tag type="list" style="border: 0" v-model="model.sfkxsg" dictCode="yn" placeholder="请选择是否跨汛施工" />
  72. </td>
  73. <td>
  74. <j-dict-select-tag type="list" style="border: 0" v-model="model.dxfasfbz" dictCode="yn" placeholder="请选择度汛方案是否编制" />
  75. </td>
  76. <td>
  77. <j-dict-select-tag type="list" style="border: 0" v-model="model.zrzsfls" dictCode="yn" placeholder="请选择责任制是否落实" />
  78. </td>
  79. <td>
  80. <j-dict-select-tag type="list" style="border: 0" v-model="model.rywzsfls" dictCode="yn" placeholder="请选择人员、物资是否落实" />
  81. </td>
  82. </tr>
  83. <tr>
  84. <td rowspan="2" style="font-weight: 700;">影响补救工程情况</td>
  85. <td>是否要求</td>
  86. <td colspan="2">按要求完成情况</td>
  87. <td>是否验收</td>
  88. </tr>
  89. <tr>
  90. <td>
  91. <j-dict-select-tag type="list" style="border:0" v-model="model.sfyq" dictCode="yn" placeholder="影响补救工程情况(请选择是否要求)" />
  92. </td>
  93. <td colspan="2">
  94. <j-dict-select-tag type="list" style="border:0" v-model="model.ayqwcqk" dictCode="ayqwcqk" placeholder="请选择按要求完成情况" />
  95. </td>
  96. <td>
  97. <j-dict-select-tag type="list" style="border:0" v-model="model.sfys" dictCode="yn" placeholder="请选择按是否验收" />
  98. </td>
  99. </tr>
  100. <tr>
  101. <td rowspan="2" style="font-weight: 700;">审批情况</td>
  102. </tr>
  103. <tr>
  104. <td colspan="4">
  105. <j-dict-select-tag type="list" style="border:0" v-model="model.spqk" dictCode="spzt" placeholder="审批情况" />
  106. </td>
  107. <tr>
  108. <td rowspan="2" style="font-weight: 700;">竣工验收情况</td>
  109. <td>建设项目是否已竣工验收</td>
  110. <td colspan="2" >是否参加建设项目竣工验收</td>
  111. <td>有关资料是否报备</td>
  112. </tr>
  113. <tr>
  114. <td>
  115. <j-dict-select-tag type="list" style="border: 0" v-model="model.jsxmsfyjgys" dictCode="yn" placeholder="请选择建设项目是否已竣工验收" />
  116. </td>
  117. <td colspan="2">
  118. <j-dict-select-tag type="list" style="border: 0" v-model="model.sfcjjsxmjgys" dictCode="yn" placeholder="请选择是否参加建设项目竣工验收" />
  119. </td>
  120. <td>
  121. <j-dict-select-tag type="list" style="border: 0" v-model="model.ygzlsfbb" dictCode="yn" placeholder="请选择有关资料是否报备" />
  122. </td>
  123. </tr>
  124. <tr>
  125. <td rowspan="2" style="font-weight: 700;hight: 100px">位置信息</td>
  126. <td colspan="2" >横坐标</td>
  127. <td colspan="2" >纵坐标</td>
  128. </tr>
  129. <tr>
  130. <td colspan="2">
  131. <a-input v-model="model.hzb" style="border:0" placeholder="如有多个横坐标请用,分割" ></a-input>
  132. </td>
  133. <td colspan="2">
  134. <a-input v-model="model.zzb" style="border:0" placeholder="如有多个纵坐标请用,分割" ></a-input>
  135. </td>
  136. </tr>
  137. <tr>
  138. <td colspan="5" rowspan="4">
  139. <div style="display: flex;width: 100%;height: 100%;">
  140. <div style="font-weight: 700;">存在问题及处理情况:</div>
  141. <a-textarea v-model="model.czwtjclqk" placeholder="请输入存在问题及处理情况" rows="10" cols="94" style="border: 0;margin-left:40px;width:85%;resize:none;font-size: 15px;" />
  142. <!-- <textarea rows="10" cols="94" style="border: 0;resize:none;font-size: 19px;" ></textarea>-->
  143. </div>
  144. </td>
  145. </tr>
  146. </table>
  147. <a-col :span="18" >
  148. <a-form-model-item style="margin-top: 10px" label="相关图件(现场检查表、施工资料、补救工程验收资料、主体工程竣工验收资料等。)" :labelCol="labelCol1" :wrapperCol="wrapperCol1" prop="xgtj">
  149. <j-image-upload isMultiple v-model="model.xgtj" ></j-image-upload>
  150. </a-form-model-item>
  151. </a-col>
  152. </a-row>
  153. </a-form-model>
  154. </j-form-container>
  155. </a-spin>
  156. </template>
  157. <script>
  158. import { httpAction, getAction } from '@/api/manage'
  159. import { validateDuplicateValue } from '@/utils/util'
  160. export default {
  161. name: 'RmXcjgjlForm',
  162. components: {
  163. },
  164. props: {
  165. //表单禁用
  166. disabled: {
  167. type: Boolean,
  168. default: false,
  169. required: false
  170. }
  171. },
  172. data () {
  173. return {
  174. model:{
  175. },
  176. labelCol: {
  177. xs: { span: 24 },
  178. sm: { span: 5 },
  179. },
  180. wrapperCol: {
  181. xs: { span: 24 },
  182. sm: { span: 16 },
  183. },
  184. labelCol1: {
  185. xs: { span: 24 },
  186. sm: { span: 10 },
  187. },
  188. wrapperCol1: {
  189. xs: { span: 24 },
  190. sm: { span: 12 },
  191. },
  192. confirmLoading: false,
  193. validatorRules: {
  194. },
  195. url: {
  196. add: "/hzz.shjsgc.xcjgjl/rmXcjgjl/add",
  197. edit: "/hzz.shjsgc.xcjgjl/rmXcjgjl/edit",
  198. queryById: "/hzz.shjsgc.xcjgjl/rmXcjgjl/queryById"
  199. }
  200. }
  201. },
  202. computed: {
  203. formDisabled(){
  204. return this.disabled
  205. },
  206. },
  207. created () {
  208. //备份model原始值
  209. this.modelDefault = JSON.parse(JSON.stringify(this.model));
  210. },
  211. methods: {
  212. add () {
  213. this.edit(this.modelDefault);
  214. },
  215. edit (record) {
  216. this.model = Object.assign({}, record);
  217. this.visible = true;
  218. },
  219. submitForm () {
  220. const that = this;
  221. // 触发表单验证
  222. this.$refs.form.validate(valid => {
  223. if (valid) {
  224. that.confirmLoading = true;
  225. let httpurl = '';
  226. let method = '';
  227. if(!this.model.id){
  228. httpurl+=this.url.add;
  229. method = 'post';
  230. }else{
  231. httpurl+=this.url.edit;
  232. method = 'post';
  233. }
  234. httpAction(httpurl,this.model,method).then((res)=>{
  235. if(res.success){
  236. that.$message.success(res.message);
  237. that.$emit('ok');
  238. }else{
  239. that.$message.warning(res.message);
  240. }
  241. }).finally(() => {
  242. that.confirmLoading = false;
  243. })
  244. }
  245. })
  246. },
  247. popupCallback(value,row){
  248. this.model = Object.assign(this.model, row);
  249. },
  250. }
  251. }
  252. </script>
  253. <style scoped>
  254. input[type=text] {
  255. width: 100%;
  256. height: 100%;
  257. }
  258. table,
  259. tr,
  260. td {
  261. border-collapse: collapse;
  262. border: 1px darkgray solid;
  263. text-align: center;
  264. }
  265. label {
  266. padding-left: 50px;
  267. }
  268. table {
  269. width: 90%;
  270. height: 90vh;
  271. margin: auto;
  272. }
  273. </style>