b5324d1da4d0613ea2922c472d98d921b49cf9fc.svn-base 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. <template>
  2. <div id="shuikutianbaoId">
  3. <el-dialog :title="currentObjectName+'督查填报'" width="60%" :before-close="closeDialog"
  4. :visible.sync="dialogFormVisible">
  5. <el-container>
  6. <el-main id="dxdcListMain" style="padding:5px 20px;">
  7. <el-tabs v-model="currentViewId" type="card" @tab-click="tabIndexChange">
  8. <el-tab-pane
  9. :label="option.label"
  10. :name="option.label"
  11. v-for="option in options"
  12. :key="option.value">
  13. <component
  14. :is="option.value"
  15. :currentObjectRgstrId="currentObjectRgstrId"
  16. :currentObjectName="currentObjectName"
  17. :currentResCode="currentResCode"
  18. :currentObjectId="currentObjectId"
  19. :activeLabel="activeLabel"
  20. :pType="pType"
  21. :openType="openType"
  22. :labelList="signatureLabelList"
  23. @cancelHandler="cancelHandler"
  24. @addShuiKuSuccess="addShuiKuSuccess"
  25. ></component>
  26. </el-tab-pane>
  27. </el-tabs>
  28. </el-main>
  29. </el-container>
  30. </el-dialog>
  31. </div>
  32. </template>
  33. <script>
  34. import request from "@util/gw_ajax_request.js";
  35. import {getrgstrIdObject, getRsByRgstrId} from "@api/duChaTianBao.js";
  36. import jichuxinxi from "./xsksd/jichuxinxi.vue"
  37. import dutyStat from "./xsksd/dutyStat.vue"
  38. import fcsStat from "./xsksd/fcsStat.vue"
  39. import rprStat from "./xsksd/rprStat.vue"
  40. import synStat from "./xsksd/synStat.vue"
  41. import bldnStat from "./xsksd/bldnStat.vue"
  42. import fcltyStat from "./xsksd/fcltyStat.vue"
  43. import problemList from "./xsksdProblemList.vue"
  44. export default {
  45. components: {
  46. jichuxinxi,
  47. dutyStat,
  48. fcsStat,
  49. rprStat,
  50. synStat,
  51. bldnStat,
  52. fcltyStat,
  53. problemList
  54. },
  55. props: ['rowData', 'currentObjectRgstrId', 'currentResCode', 'currentObjectId', 'currentObjectName', 'pType','openType'],
  56. data() {
  57. return {
  58. options: [
  59. {
  60. value: "jichuxinxi",
  61. label: "基础信息"
  62. },
  63. {
  64. value: "dutyStat",
  65. label: '防汛“三个责任人”落实情况'
  66. },
  67. {
  68. value: "fcsStat",
  69. label: '防汛“三个重点环节”落实情况'
  70. },
  71. {
  72. value: "rprStat",
  73. label: '日常巡查、大坝监测及维修养护'
  74. },
  75. {
  76. value: "synStat",
  77. label: '综合管理'
  78. },
  79. {
  80. value: "bldnStat",
  81. label: '主题建筑物'
  82. },
  83. {
  84. value: "fcltyStat",
  85. label: '设备设施'
  86. },
  87. {
  88. value: "problemList",
  89. label: '问题清单'
  90. }
  91. ],
  92. value: "",
  93. dialogShow: false,
  94. currentViewId: "基础信息",
  95. dialogFormVisible: true,
  96. activeLabel: '',
  97. signatureLabelList: ['督查人员','被检查人员']
  98. };
  99. },
  100. computed: {
  101. persId() {
  102. return localStorage.getItem("userid")
  103. ? localStorage.getItem("userid")
  104. : "1098101939614724096";
  105. },
  106. currentRlcode() {
  107. return localStorage.getItem('currentRlcode') ? localStorage.getItem('currentRlcode') : ''
  108. }
  109. },
  110. mounted() {
  111. },
  112. watch: {},
  113. methods: {
  114. submitHandler() {
  115. var _self = this;
  116. getRsByRgstrId(this.currentObjectRgstrId, this.pType).then(
  117. (res) => {
  118. if (res.data.baseStat == '0') {
  119. this.$message({
  120. message: '请填写重点环节落实情况!',
  121. type: 'warning'
  122. });
  123. return
  124. } else if (res.data.presStat == '0') {
  125. this.$message({
  126. message: '请填写责任人状态!',
  127. type: 'warning'
  128. });
  129. return
  130. } else if (res.data.resRunStat == '0') {
  131. this.$message({
  132. message: '请填写水库工程实体和运行管理情况!',
  133. type: 'warning'
  134. });
  135. return
  136. } else if (res.data.viewStat == '0') {
  137. this.$message({
  138. message: '走访用户状态!',
  139. type: 'warning'
  140. });
  141. return
  142. }
  143. this.$confirm('请确认所有信息填报完毕?', '提示', {
  144. confirmButtonText: '确定',
  145. cancelButtonText: '取消',
  146. type: 'warning'
  147. }).then(() => {
  148. let formObj = {
  149. "rgstrId": this.currentObjectRgstrId,
  150. "state": "2"
  151. }
  152. let url = '/dc/insp/rsvrRgstr/update';
  153. if(this.pType==22){
  154. url = '/bis/insp/rsml/rgstr';
  155. }
  156. request.post(url, formObj).then((res) => {
  157. if (res.success) {
  158. _self.$emit("addShuiKuSuccess");
  159. _self.$message.success("提交成功");
  160. } else {
  161. _self.$emit('cancelHandler');
  162. }
  163. });
  164. }).catch(() => {
  165. });
  166. }, (err) => {
  167. });
  168. },
  169. closeHandler() {
  170. this.dialogShow = false
  171. this.$emit("addShuiKuSuccess");
  172. },
  173. appearDialog(type) {
  174. this.dialogShow = true
  175. // this.problemSmallType = type
  176. },
  177. closePDialog() {
  178. this.dialogShow = false
  179. },
  180. showDialog() {
  181. this.dialogFormVisible = true;
  182. },
  183. cancelHandler() {
  184. this.$emit('cancelHandler');
  185. },
  186. addShuiKuSuccess() {
  187. this.$emit('addShuiKuSuccess');
  188. },
  189. closeDialog() {
  190. this.$confirm('确认退出吗?', '提示', {
  191. confirmButtonText: '确定',
  192. cancelButtonText: '取消',
  193. type: 'warning'
  194. }).then(() => {
  195. this.$emit('cancelHandler');
  196. }).catch(() => {
  197. });
  198. },
  199. tabIndexChange(item) {
  200. if (item.label == '问题清单') {
  201. this.activeLabel = item.label
  202. } else {
  203. this.activeLabel = ''
  204. }
  205. }
  206. }
  207. };
  208. </script>
  209. <style>
  210. #shuikutianbaoId .el-dialog {
  211. margin-top: 10vh;
  212. }
  213. </style>