1aade73f4ce64d7485636f7635bfb710867c434a.svn-base 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. <template>
  2. <div>
  3. <!-- <el-dialog :title="'责任人填报'" :visible.sync="dialogFormVisible"> -->
  4. <el-container style="height:520px;">
  5. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  6. <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;">信息填报</p>
  7. <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules">
  8. <el-form-item label="2019年度是否超定额用水" :required="true">
  9. <el-radio v-model="formObj.isOvrRule" label="1">是</el-radio>
  10. <el-radio v-model="formObj.isOvrRule" label="2">否</el-radio>
  11. <el-radio v-model="formObj.isOvrRule" label="3">无定额</el-radio>
  12. <el-button
  13. @click="addProblem('isOvrRule',formObj.isOvrRule)"
  14. type="text"
  15. v-if="formObj.isOvrRule =='1'">
  16. <i class="el-icon-circle-plus add-problem-icon"></i>
  17. </el-button>
  18. <i @click="showPic('isOvrRule')" class="el-icon-camera-solid" v-if="formObj.isOvrRule=='2'"></i>
  19. </el-form-item>
  20. <el-form-item label="2019年是否超计划用水" :required="true">
  21. <el-radio v-model="formObj.isOvrPlan" label="1">是</el-radio>
  22. <el-radio v-model="formObj.isOvrPlan" label="2">否</el-radio>
  23. <el-radio v-model="formObj.isOvrPlan" label="3">未下达计划</el-radio>
  24. <el-button
  25. @click="addProblem('isOvrPlan',formObj.isOvrPlan)"
  26. type="text"
  27. v-if="formObj.isOvrPlan =='1' || formObj.isOvrPlan=='3'">
  28. <i class="el-icon-circle-plus add-problem-icon"></i>
  29. </el-button>
  30. <i @click="showPic('isOvrPlan')" class="el-icon-camera-solid" v-if="formObj.isOvrPlan=='2'"></i>
  31. </el-form-item>
  32. <el-form-item label="是否建立节约用水管理制度" :required="true">
  33. <el-radio v-model="formObj.isBudSys" label="1">是</el-radio>
  34. <el-radio v-model="formObj.isBudSys" label="2">否</el-radio>
  35. <el-button
  36. @click="addProblem('isBudSys',formObj.isBudSys)"
  37. type="text"
  38. v-if="formObj.isBudSys =='2'">
  39. <i class="el-icon-circle-plus add-problem-icon"></i>
  40. </el-button>
  41. <i @click="showPic('isBudSys')" class="el-icon-camera-solid" v-if="formObj.isBudSys=='1'"></i>
  42. </el-form-item>
  43. <el-form-item label="是否在主要用水部位和人流密集场所张贴节水海报或悬挂节水标识标" :required="true">
  44. <el-radio v-model="formObj.isPub" label="1">是</el-radio>
  45. <el-radio v-model="formObj.isPub" label="2">否</el-radio>
  46. <el-button
  47. @click="addProblem('isPub',formObj.isPub)"
  48. type="text"
  49. v-if="formObj.isPub =='2'">
  50. <i class="el-icon-circle-plus add-problem-icon"></i>
  51. </el-button>
  52. <i @click="showPic('isPub')" class="el-icon-camera-solid" v-if="formObj.isPub=='1'"></i>
  53. </el-form-item>
  54. <el-form-item label="是否组织开展节水宣传和教育活动" :required="true">
  55. <el-radio v-model="formObj.isOrgPub" label="1">是</el-radio>
  56. <el-radio v-model="formObj.isOrgPub" label="2">否</el-radio>
  57. <el-button
  58. @click="addProblem('isOrgPub',formObj.isOrgPub)"
  59. type="text"
  60. v-if="formObj.isOrgPub =='2'">
  61. <i class="el-icon-circle-plus add-problem-icon"></i>
  62. </el-button>
  63. <i @click="showPic('isOrgPub')" class="el-icon-camera-solid" v-if="formObj.isOrgPub=='1'"></i>
  64. </el-form-item>
  65. <el-form-item label="是否按规定开展水平衡测试" :required="true">
  66. <el-radio v-model="formObj.isBlnTest" label="1">是</el-radio>
  67. <el-radio v-model="formObj.isBlnTest" label="2">否</el-radio>
  68. <el-button
  69. @click="addProblem('isBlnTest',formObj.isBlnTest)"
  70. type="text"
  71. v-if="formObj.isBlnTest =='2'">
  72. <i class="el-icon-circle-plus add-problem-icon"></i>
  73. </el-button>
  74. <i @click="showPic('isBlnTest')" class="el-icon-camera-solid" v-if="formObj.isBlnTest=='1'"></i>
  75. </el-form-item>
  76. <el-form-item label="是否未使用国家明令淘汰的用水设备和器具" :required="true">
  77. <el-radio v-model="formObj.isFrbEqp" label="1">是</el-radio>
  78. <el-radio v-model="formObj.isFrbEqp" label="2">否</el-radio>
  79. <el-button
  80. @click="addProblem('isFrbEqp',formObj.isFrbEqp)"
  81. type="text"
  82. v-if="formObj.isFrbEqp =='2'">
  83. <i class="el-icon-circle-plus add-problem-icon"></i>
  84. </el-button>
  85. <i @click="showPic('isFrbEqp')" class="el-icon-camera-solid" v-if="formObj.isFrbEqp=='1'"></i>
  86. </el-form-item>
  87. <el-form-item label="是否存在跑冒滴漏现象" :required="true">
  88. <el-radio v-model="formObj.isLeak" label="1">是</el-radio>
  89. <el-radio v-model="formObj.isLeak" label="2">否</el-radio>
  90. <el-button
  91. @click="addProblem('isLeak',formObj.isLeak)"
  92. type="text"
  93. v-if="formObj.isLeak =='1'">
  94. <i class="el-icon-circle-plus add-problem-icon"></i>
  95. </el-button>
  96. <i @click="showPic('isLeak')" class="el-icon-camera-solid" v-if="formObj.isLeak=='2'"></i>
  97. </el-form-item>
  98. <el-form-item label="">
  99. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  100. </el-form-item>
  101. </el-form>
  102. </el-main>
  103. <problem-dialog
  104. v-if="showAddProblemDialog && openType"
  105. :objType="54"
  106. :villType="54"
  107. :objId="currentObjectId"
  108. :objName="currentObjectName"
  109. :problemMiddleType="'节水载体复核'"
  110. :problData="probId"
  111. @closeDialog="closePlDialog"
  112. :currentObjectRgstrId="currentObjectRgstrId"
  113. ></problem-dialog>
  114. <add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>
  115. </el-container>
  116. </div>
  117. </template>
  118. <script>
  119. import inputWith from "@widget/inuptWith.vue"
  120. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  121. import addPicCom from "./addPic.vue"
  122. import request from "@util/gw_ajax_request.js"
  123. import {getRgstridWtcrrRev} from "@api/duChaTianBao.js"
  124. import {formatDateTimeD} from "@util/gw_date.js"
  125. export default {
  126. components: {
  127. inputWith: inputWith,
  128. problemDialog,
  129. addPicCom
  130. },
  131. props: ['currentObjectId','currentObjectName','currentObjectRgstrId','openType'],
  132. data() {
  133. var checkTel = (rule, value, callback) => {
  134. var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
  135. var isMob= /^[1][3,4,5,7,8][0-9]{9}$/;// 座机格式
  136. if (value&&!isMob.test(value)&&!isPhone.test(value)) {
  137. callback(new Error('请输入合理电话'));
  138. } else if(value&&(isMob.test(value)||isPhone.test(value))){
  139. callback();
  140. }
  141. // setTimeout(() => {
  142. // }, 1000);
  143. };
  144. return {
  145. id:"",
  146. objtbStatu:{
  147. wtuntStat:"",
  148. rgstrId:"",
  149. id:"",
  150. state:""
  151. },
  152. rules:{
  153. wiunWaoLegPersTel:[
  154. { validator: checkTel,trigger: 'blur' }
  155. ],
  156. techPersTel:[
  157. { validator: checkTel,trigger: 'blur' }
  158. ],
  159. patrolPersTel:[
  160. { validator: checkTel,trigger: 'blur' }
  161. ],
  162. },
  163. jqmmDialogShow: false,
  164. type: '',
  165. formObj: {
  166. "isOvrRule":'',
  167. "isOvrPlan":'',
  168. "isBudSys":'',
  169. "isPub":'',
  170. "isOrgPub":'',
  171. "isBlnTest":'',
  172. "isFrbEqp":'',
  173. "isLeak":'',
  174. },
  175. dialogFormVisible: false,
  176. formLabelWidth: '180px',
  177. loading: true,
  178. operationType1:'',
  179. rsvrRules: null,
  180. probId: '',
  181. showAddProblemDialog: false
  182. }
  183. },
  184. computed:{
  185. recPersId(){
  186. return localStorage.getItem("userid")? localStorage.getItem("userid"): ''
  187. }
  188. },
  189. created(){
  190. this.findItemByType()
  191. },
  192. mounted() {
  193. this.getRgstridObj();
  194. },
  195. watch: {
  196. currentObjectRgstrId(n,o){
  197. this.getRgstridObj();
  198. },
  199. },
  200. methods: {
  201. jqmmDialogClose() {
  202. this.jqmmDialogShow = false;
  203. },
  204. showPic(type){
  205. this.type = type
  206. this.jqmmDialogShow = true
  207. },
  208. getRgstridObj(){
  209. var _self = this;
  210. getRgstridWtcrrRev(_self.currentObjectRgstrId).then((res)=>{
  211. _self.formObj = res.data;
  212. _self.id = res.data.id;
  213. });
  214. },
  215. addHandler(){
  216. var _self = this;
  217. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  218. _self.formObj['recPersId'] = _self.recPersId;
  219. _self.objtbStatu.rgstrId = _self.currentObjectRgstrId;
  220. _self.objtbStatu.id = _self.currentObjectRgstrId;
  221. if(this.formObj.isOvrRule!=null &&
  222. this.formObj.isOvrPlan!=null &&
  223. this.formObj.isBudSys!=null &&
  224. this.formObj.isPub!=null &&
  225. this.formObj.isOrgPub!=null &&
  226. this.formObj.isBlnTest!=null &&
  227. this.formObj.isFrbEqp!=null &&
  228. this.formObj.isLeak!=null){
  229. this.objtbStatu.wtuntStat = "2"
  230. this.objtbStatu.state = "1"
  231. }else if(this.formObj.isOvrRule!=null &&
  232. this.formObj.isOvrPlan!=null &&
  233. this.formObj.isBudSys==null &&
  234. this.formObj.isPub==null &&
  235. this.formObj.isOrgPub==null &&
  236. this.formObj.isBlnTest==null &&
  237. this.formObj.isFrbEqp==null &&
  238. this.formObj.isLeak==null
  239. ){
  240. this.objtbStatu.wtuntStat = "0"
  241. this.formObj['state'] = "0";
  242. }else{
  243. this.objtbStatu.wtuntStat = "1"
  244. this.objtbStatu.state = "1"
  245. }
  246. this.$confirm('确认保存现场督查情况信息?', '提示', {
  247. confirmButtonText: '确定',
  248. cancelButtonText: '取消',
  249. type: 'warning'
  250. })
  251. .then(() => {
  252. try{
  253. request.post('/bis/insp/wtcrr/rev',_self.formObj).then((res)=>{
  254. if (res.success) {
  255. _self.$message.success("修改成功");
  256. request.post("/bis/insp/wtcrr",_self.objtbStatu).then((res)=>{
  257. res;
  258. })
  259. _self.$emit("addShuiKuSuccess");
  260. }
  261. });
  262. } catch(e) {
  263. }
  264. })
  265. .catch(() => {
  266. });
  267. },
  268. cancelHandler(){
  269. this.$emit('cancelHandler');
  270. },
  271. findItemByType(){
  272. const obj ={
  273. tname: "BIS_INSP_WTCRR_RGSTR_REV",
  274. }
  275. request.post("/bis/insp/item/ques/info/findItemByType",obj).then(res =>{
  276. this.rsvrRules = res.data;
  277. })
  278. },
  279. addProblem(item,iValue){
  280. let rest = this.rsvrRules.filter(e => {
  281. return e.iValue === iValue && e.eName === item;
  282. });
  283. if (rest[0]){
  284. this.probId = rest[0].id;
  285. }
  286. this.showAddProblemDialog = true;
  287. },
  288. formatRadio(val){
  289. if(val == '1'){
  290. return '是'
  291. }else if(val == '2'){
  292. return '否'
  293. }else{
  294. return val
  295. }
  296. },
  297. closePlDialog(val) {
  298. this.showAddProblemDialog = false;
  299. }
  300. },
  301. }
  302. </script>
  303. <style scoped>
  304. #dcdxHeader {
  305. padding: 15px 20px;
  306. }
  307. #dxdcFooter {
  308. text-align: center;
  309. }
  310. #dxdcAside {
  311. border:1px solid #d5d5ff;
  312. }
  313. .el-dialog__wrapper .el-treeWhite{
  314. /* max-height: 260px !important; */
  315. }
  316. .add-problem-icon{
  317. font-size: 16px;
  318. }
  319. .el-icon-camera-solid,.el-icon-circle-plus{
  320. margin-left: 20px;
  321. color: #00bbff;
  322. font-size: 18px;
  323. line-height: 12px;
  324. vertical-align: middle;
  325. cursor: pointer;
  326. }
  327. .el-icon-circle-plus{
  328. vertical-align: top;
  329. }
  330. </style>