6f5b9f61c5ffd28e61fe607830cad9dfd9bf4845.svn-base 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462
  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. <br/>
  7. <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules">
  8. <el-form-item label="检查对象" :required="true">
  9. <el-input v-model="formObj.nm" style="width: 300px;" ></el-input>
  10. </el-form-item>
  11. <p style="margin-top:10px;margin-bottom: 10px;text-indent: 10px;background: #9dd1fb">
  12. <i class="left-vertical"></i>
  13. <span>测的出</span>
  14. <span class="hrs"></span>
  15. </p>
  16. <el-form-item label="雨量站到报率是否达到95%以上" :required="true">
  17. <el-radio v-model="formObj.isMntRain" label="1">是</el-radio>
  18. <el-radio v-model="formObj.isMntRain" label="2">否</el-radio>
  19. <el-button
  20. @click="addProblem('isMntRain',formObj.isMntRain)"
  21. type="text"
  22. v-if="formObj.isMntRain =='2'">
  23. <i class="el-icon-circle-plus add-problem-icon"></i>
  24. </el-button>
  25. </el-form-item>
  26. <el-form-item label="县级平台是否达到100%正常" :required="true">
  27. <el-radio v-model="formObj.isMntNrml" label="1">是</el-radio>
  28. <el-radio v-model="formObj.isMntNrml" label="2">否</el-radio>
  29. <el-button
  30. @click="addProblem('isMntNrml',formObj.isMntNrml)"
  31. type="text"
  32. v-if="formObj.isMntNrml =='2'">
  33. <i class="el-icon-circle-plus add-problem-icon"></i>
  34. </el-button>
  35. </el-form-item>
  36. <el-form-item label="县级平台能否满足共享水文、气象信息" :required="true">
  37. <el-radio v-model="formObj.isMntShare" label="1">是</el-radio>
  38. <el-radio v-model="formObj.isMntShare" label="2">否</el-radio>
  39. <el-button
  40. @click="addProblem('isMntShare',formObj.isMntShare)"
  41. type="text"
  42. v-if="formObj.isMntShare =='2'">
  43. <i class="el-icon-circle-plus add-problem-icon"></i>
  44. </el-button>
  45. </el-form-item>
  46. <el-form-item label="县级平台、视频会商是否落实有专人管理和熟练操作" :required="true">
  47. <el-radio v-model="formObj.isMntMeet" label="1">是</el-radio>
  48. <el-radio v-model="formObj.isMntMeet" label="2">否</el-radio>
  49. <el-button
  50. @click="addProblem('isMntMeet',formObj.isMntMeet)"
  51. type="text"
  52. v-if="formObj.isMntMeet =='2'">
  53. <i class="el-icon-circle-plus add-problem-icon"></i>
  54. </el-button>
  55. </el-form-item>
  56. <p style="margin-top:10px;margin-bottom: 10px;text-indent: 10px;background: #9dd1fb">
  57. <i class="left-vertical"></i>
  58. <span>报的准</span>
  59. <span class="hrs"></span>
  60. </p>
  61. <el-form-item label="是否建立县级山洪预警信息发布责任制" :required="true">
  62. <el-radio v-model="formObj.isSendPub" label="1">是</el-radio>
  63. <el-radio v-model="formObj.isSendPub" label="2">否</el-radio>
  64. <el-button
  65. @click="addProblem('isSendPub',formObj.isSendPub)"
  66. type="text"
  67. v-if="formObj.isSendPub =='2'">
  68. <i class="el-icon-circle-plus add-problem-icon"></i>
  69. </el-button>
  70. </el-form-item>
  71. <el-form-item label="是否建立完善预警信息接受人白名单并录入县级平台" :required="true">
  72. <el-radio v-model="formObj.isSendWarn" label="1">是</el-radio>
  73. <el-radio v-model="formObj.isSendWarn" label="2">否</el-radio>
  74. <el-button
  75. @click="addProblem('isSendWarn',formObj.isSendWarn)"
  76. type="text"
  77. v-if="formObj.isSendWarn =='2'">
  78. <i class="el-icon-circle-plus add-problem-icon"></i>
  79. </el-button>
  80. </el-form-item>
  81. <el-form-item label="是否严格制定并落实汛期值班制度" :required="true">
  82. <el-radio v-model="formObj.isSendDuty" label="1">是</el-radio>
  83. <el-radio v-model="formObj.isSendDuty" label="2">否</el-radio>
  84. <el-button
  85. @click="addProblem('isSendDuty',formObj.isSendDuty)"
  86. type="text"
  87. v-if="formObj.isSendDuty =='2'">
  88. <i class="el-icon-circle-plus add-problem-icon"></i>
  89. </el-button>
  90. </el-form-item>
  91. <el-form-item label="是否及时研究部署强降雨过程应对工作并有会议记录" :required="true">
  92. <el-radio v-model="formObj.isSendPlan" label="1">是</el-radio>
  93. <el-radio v-model="formObj.isSendPlan" label="2">否</el-radio>
  94. <el-button
  95. @click="addProblem('isSendPlan',formObj.isSendPlan)"
  96. type="text"
  97. v-if="formObj.isSendPlan =='2'">
  98. <i class="el-icon-circle-plus add-problem-icon"></i>
  99. </el-button>
  100. </el-form-item>
  101. <el-form-item label="是否对乡村级防御责任人进行技术培训" :required="true">
  102. <el-radio v-model="formObj.isSendTrain" label="1">是</el-radio>
  103. <el-radio v-model="formObj.isSendTrain" label="2">否</el-radio>
  104. <el-button
  105. @click="addProblem('isSendTrain',formObj.isSendTrain)"
  106. type="text"
  107. v-if="formObj.isSendTrain =='2'">
  108. <i class="el-icon-circle-plus add-problem-icon"></i>
  109. </el-button>
  110. </el-form-item>
  111. <p style="margin-top:10px;margin-bottom: 10px;text-indent: 10px;background: #9dd1fb">
  112. <i class="left-vertical"></i>
  113. <span>跑的对</span>
  114. <span class="hrs"></span>
  115. </p>
  116. <el-form-item label="是否开展乡、村级山洪灾害防御知识宣传并建立影像台账资料" :required="true">
  117. <el-radio v-model="formObj.isRightPub" label="1">是</el-radio>
  118. <el-radio v-model="formObj.isRightPub" label="2">否</el-radio>
  119. <el-button
  120. @click="addProblem('isRightPub',formObj.isRightPub)"
  121. type="text"
  122. v-if="formObj.isRightPub =='2'">
  123. <i class="el-icon-circle-plus add-problem-icon"></i>
  124. </el-button>
  125. </el-form-item>
  126. <el-form-item label="是否所有危险区(村)设立山洪灾害警示牌、宣传栏" :required="true">
  127. <el-radio v-model="formObj.isRightLogo" label="1">是</el-radio>
  128. <el-radio v-model="formObj.isRightLogo" label="2">否</el-radio>
  129. <el-button
  130. @click="addProblem('isRightLogo',formObj.isRightLogo)"
  131. type="text"
  132. v-if="formObj.isRightLogo =='2'">
  133. <i class="el-icon-circle-plus add-problem-icon"></i>
  134. </el-button>
  135. </el-form-item>
  136. <!-- <el-form-item label="是否乡、村均需修订完善预案并每年演练(有文本有演练证据)" :required="true">-->
  137. <!-- <el-radio v-model="formObj.isRightPlan" label="1">是</el-radio>-->
  138. <!-- <el-radio v-model="formObj.isRightPlan" label="2">否</el-radio>-->
  139. <!-- <el-button-->
  140. <!-- @click="addProblem('isRightPlan',formObj.isRightPlan)"-->
  141. <!-- type="text"-->
  142. <!-- v-if="formObj.isRightPlan =='2'">-->
  143. <!-- <i class="el-icon-circle-plus add-problem-icon"></i>-->
  144. <!-- </el-button>-->
  145. <!-- </el-form-item>-->
  146. <el-form-item label="村级是否张贴一页纸预案,每户发放明白卡" :required="true">
  147. <el-radio v-model="formObj.isRightJump" label="1">是</el-radio>
  148. <el-radio v-model="formObj.isRightJump" label="2">否</el-radio>
  149. <el-button
  150. @click="addProblem('isRightJump',formObj.isRightJump)"
  151. type="text"
  152. v-if="formObj.isRightJump =='2'">
  153. <i class="el-icon-circle-plus add-problem-icon"></i>
  154. </el-button>
  155. </el-form-item>
  156. <!-- <el-form-item label="是否村制定汛期防御工作制度并落实责任人责任" :required="true">-->
  157. <!-- <el-radio v-model="formObj.isRightDuty" label="1">是</el-radio>-->
  158. <!-- <el-radio v-model="formObj.isRightDuty" label="2">否</el-radio>-->
  159. <!-- <el-button-->
  160. <!-- @click="addProblem('isRightDuty',formObj.isRightDuty)"-->
  161. <!-- type="text"-->
  162. <!-- v-if="formObj.isRightDuty =='2'">-->
  163. <!-- <i class="el-icon-circle-plus add-problem-icon"></i>-->
  164. <!-- </el-button>-->
  165. <!-- </el-form-item>-->
  166. <el-form-item label="检查人" :required="true">
  167. <el-input v-model="formObj.chkPers" style="width: 300px;" ></el-input>
  168. </el-form-item>
  169. <el-form-item label="检查时间" :required="true">
  170. <el-date-picker
  171. v-model="formObj.chkTm"
  172. type="date"
  173. format="yyyy-MM-dd"
  174. placeholder="选择日期">
  175. </el-date-picker>
  176. </el-form-item>
  177. <el-form-item label="完成时限" :required="true">
  178. <el-input v-model="formObj.ackNote" style="width: 300px;" ></el-input>
  179. </el-form-item>
  180. <el-form-item label="">
  181. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  182. </el-form-item>
  183. </el-form>
  184. </el-main>
  185. <problem-dialog
  186. v-if="showAddProblemDialog && openType"
  187. :objType="94"
  188. :villType="94"
  189. :objId="currentObjectId"
  190. :objName="currentObjectName"
  191. :problemMiddleType="'山洪灾害防御'"
  192. :problData="probId"
  193. @closeDialog="closePlDialog"
  194. :currentObjectRgstrId="currentObjectRgstrId"
  195. ></problem-dialog>
  196. </el-container>
  197. </div>
  198. </template>
  199. <script>
  200. import inputWith from "@widget/inuptWith.vue"
  201. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  202. import request from "@util/gw_ajax_request.js"
  203. import {getRgstriyCityStat} from "@api/duChaTianBao.js"
  204. import {formatDateTimeD} from "@util/gw_date.js"
  205. export default {
  206. components: {
  207. inputWith: inputWith,
  208. problemDialog
  209. },
  210. props: ['currentObjectId','currentObjectName','currentObjectRgstrId','openType'],
  211. data() {
  212. var checkTel = (rule, value, callback) => {
  213. var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
  214. var isMob= /^[1][3,4,5,7,8][0-9]{9}$/;// 座机格式
  215. if (value&&!isMob.test(value)&&!isPhone.test(value)) {
  216. callback(new Error('请输入合理电话'));
  217. } else if(value&&(isMob.test(value)||isPhone.test(value))){
  218. callback();
  219. }
  220. // setTimeout(() => {
  221. // }, 1000);
  222. };
  223. return {
  224. id:"",
  225. options:[
  226. {
  227. value:'1', label:'明查'
  228. },
  229. {
  230. value:'2', label:'现场暗访'
  231. },
  232. {
  233. value:'3', label:'电话问询'
  234. },
  235. {
  236. value:'4', label:'视频连线'
  237. },
  238. {
  239. value:'5', label:'其他'
  240. },
  241. ],
  242. objtbStatu:{
  243. wtuntStat:"",
  244. rgstrId:"",
  245. id:"",
  246. state:""
  247. },
  248. rules:{
  249. wiunWaoLegPersTel:[
  250. { validator: checkTel,trigger: 'blur' }
  251. ],
  252. techPersTel:[
  253. { validator: checkTel,trigger: 'blur' }
  254. ],
  255. patrolPersTel:[
  256. { validator: checkTel,trigger: 'blur' }
  257. ],
  258. },
  259. jqmmDialogShow: false,
  260. type: '',
  261. formObj: {
  262. nm:"",
  263. isMntRain:"",
  264. isMntNrml:"",
  265. isMntShare:"",
  266. isMntMeet:"",
  267. isSendPub:"",
  268. isSendWarn:"",
  269. isSendDuty:"",
  270. isSendPlan:"",
  271. isSendTrain:"",
  272. isRightPub:"",
  273. isRightLogo:"",
  274. // isRightPlan:"",
  275. isRightJump:"",
  276. // isRightDuty:"",
  277. chkPers:"",
  278. chkTm:"",
  279. ackNote:""
  280. },
  281. dialogFormVisible: false,
  282. formLabelWidth: '180px',
  283. loading: true,
  284. operationType1:'',
  285. rsvrRules: null,
  286. probId: '',
  287. showAddProblemDialog: false
  288. }
  289. },
  290. computed:{
  291. recPersId(){
  292. return localStorage.getItem("userid")? localStorage.getItem("userid"): ''
  293. }
  294. },
  295. created(){
  296. this.findItemByType()
  297. },
  298. mounted() {
  299. this.getRgstridObj();
  300. },
  301. watch: {
  302. currentObjectRgstrId(n,o){
  303. this.getRgstridObj();
  304. },
  305. },
  306. methods: {
  307. jqmmDialogClose() {
  308. this.jqmmDialogShow = false;
  309. },
  310. showPic(type){
  311. this.type = type
  312. this.jqmmDialogShow = true
  313. },
  314. getRgstridObj(){
  315. var _self = this;
  316. getRgstriyCityStat(_self.currentObjectRgstrId).then((res)=>{
  317. _self.formObj = res.data;
  318. _self.id = res.data.id;
  319. });
  320. },
  321. addHandler(){
  322. var _self = this;
  323. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  324. _self.formObj['recPersId'] = _self.recPersId;
  325. if(
  326. this.formObj.nm==null &&
  327. this.formObj.isMntRain==null &&
  328. this.formObj.isMntNrml==null &&
  329. this.formObj.isMntShare==null &&
  330. this.formObj.isMntMeet==null &&
  331. this.formObj.isSendPub==null &&
  332. this.formObj.isSendWarn==null &&
  333. this.formObj.isSendDuty==null &&
  334. this.formObj.isSendPlan==null &&
  335. this.formObj.isSendTrain==null &&
  336. this.formObj.isRightPub==null &&
  337. this.formObj.isRightLogo==null &&
  338. // this.formObj.isRightPlan==null &&
  339. this.formObj.isRightJump==null &&
  340. // this.formObj.isRightDuty==null &&
  341. this.formObj.chkPers==null &&
  342. this.formObj.chkTm==null &&
  343. this.formObj.ackNote==null
  344. ){
  345. this.formObj.state = "0"
  346. }else if(
  347. this.formObj.nm!=null &&
  348. this.formObj.isMntRain!=null &&
  349. this.formObj.isMntNrml!=null &&
  350. this.formObj.isMntShare!=null &&
  351. this.formObj.isMntMeet!=null &&
  352. this.formObj.isSendPub!=null &&
  353. this.formObj.isSendWarn!=null &&
  354. this.formObj.isSendDuty!=null &&
  355. this.formObj.isSendPlan!=null &&
  356. this.formObj.isSendTrain!=null &&
  357. this.formObj.isRightPub!=null &&
  358. this.formObj.isRightLogo!=null &&
  359. // this.formObj.isRightPlan!=null &&
  360. this.formObj.isRightJump!=null &&
  361. // this.formObj.isRightDuty!=null &&
  362. this.formObj.chkPers!=null &&
  363. this.formObj.chkTm!=null &&
  364. this.formObj.ackNote!=null
  365. ){
  366. this.formObj.state = "2";
  367. }else{
  368. this.formObj.state = "1"
  369. }
  370. this.$confirm('确认保存现场督查情况信息?', '提示', {
  371. confirmButtonText: '确定',
  372. cancelButtonText: '取消',
  373. type: 'warning'
  374. })
  375. .then(() => {
  376. try{
  377. request.post('/bis/insp/mfdpqh/city',_self.formObj).then((res)=>{
  378. if (res.success) {
  379. _self.$message.success("修改成功");
  380. _self.$emit("addShuiKuSuccess");
  381. }
  382. });
  383. } catch(e) {
  384. }
  385. })
  386. .catch(() => {
  387. });
  388. },
  389. cancelHandler(){
  390. this.$emit('cancelHandler');
  391. },
  392. findItemByType(){
  393. const obj ={
  394. tname: "BIS_INSP_MFDPQH_CITY",
  395. }
  396. request.post("/bis/insp/item/ques/info/findItemByType",obj).then(res =>{
  397. this.rsvrRules = res.data;
  398. })
  399. },
  400. addProblem(item,iValue){
  401. let rest = this.rsvrRules.filter(e => {
  402. return e.iValue === iValue && e.eName === item;
  403. });
  404. if (rest[0]){
  405. this.probId = rest[0].id;
  406. }
  407. this.showAddProblemDialog = true;
  408. },
  409. formatRadio(val){
  410. if(val == '1'){
  411. return '是'
  412. }else if(val == '2'){
  413. return '否'
  414. }else{
  415. return val
  416. }
  417. },
  418. closePlDialog(val) {
  419. this.showAddProblemDialog = false;
  420. }
  421. },
  422. }
  423. </script>
  424. <style scoped>
  425. #dcdxHeader {
  426. padding: 15px 20px;
  427. }
  428. #dxdcFooter {
  429. text-align: center;
  430. }
  431. #dxdcAside {
  432. border:1px solid #d5d5ff;
  433. }
  434. .el-dialog__wrapper .el-treeWhite{
  435. /* max-height: 260px !important; */
  436. }
  437. .add-problem-icon{
  438. font-size: 16px;
  439. }
  440. .el-icon-camera-solid,.el-icon-circle-plus{
  441. margin-left: 20px;
  442. color: #00bbff;
  443. font-size: 18px;
  444. line-height: 12px;
  445. vertical-align: middle;
  446. cursor: pointer;
  447. }
  448. .el-icon-circle-plus{
  449. vertical-align: top;
  450. }
  451. </style>