0e233c07129fb65e00cb78a356c9dae2778c5fa1.svn-base 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274
  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. <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules">
  7. <el-form-item label="河长湖长公示牌是否竖立在河湖显著位置且河长湖长公示牌未损坏、内容规范、信息准确完整" :required="true">
  8. <el-radio v-model="formObj.isPblcFull" label="1">是</el-radio>
  9. <el-radio v-model="formObj.isPblcFull" label="2">否</el-radio>
  10. <el-button
  11. @click="addProblem('isPblcFull',formObj.isPblcFull)"
  12. type="text"
  13. v-if="formObj.isPblcFull =='2'">
  14. <i class="el-icon-circle-plus add-problem-icon"></i>
  15. </el-button>
  16. </el-form-item>
  17. <el-form-item label="描述" v-if="formObj.isPblcFull=='1'">
  18. <el-input type="textarea" v-model="formObj.pblcFullNote" style="width: 300px;"></el-input>
  19. <i @click="showPic('pblcFullNote')" class="el-icon-camera-solid"></i>
  20. </el-form-item>
  21. <el-form-item label="未出现工作时间多次拨打河长湖长公示牌电话不通或者无人接听的现象" :required="true">
  22. <el-radio v-model="formObj.isTelNo" label="1">是</el-radio>
  23. <el-radio v-model="formObj.isTelNo" label="2">否</el-radio>
  24. <el-button
  25. @click="addProblem('isTelNo',formObj.isTelNo)"
  26. type="text"
  27. v-if="formObj.isTelNo =='2'">
  28. <i class="el-icon-circle-plus add-problem-icon"></i>
  29. </el-button>
  30. </el-form-item>
  31. <el-form-item label="描述" v-if="formObj.isTelNo=='1'">
  32. <el-input type="textarea" v-model="formObj.telNoNote" style="width: 300px;"></el-input>
  33. <i @click="showPic('telNoNote')" class="el-icon-camera-solid"></i>
  34. </el-form-item>
  35. <el-form-item label="是否建立社会公众参与河湖管理保护机制" :required="true">
  36. <el-radio v-model="formObj.isBuldPrtct" label="1">是</el-radio>
  37. <el-radio v-model="formObj.isBuldPrtct" label="2">否</el-radio>
  38. <el-button
  39. @click="addProblem('isBuldPrtct',formObj.isBuldPrtct)"
  40. type="text"
  41. v-if="formObj.isBuldPrtct =='2'">
  42. <i class="el-icon-circle-plus add-problem-icon"></i>
  43. </el-button>
  44. </el-form-item>
  45. <el-form-item label="描述" v-if="formObj.isBuldPrtct=='1'">
  46. <el-input type="textarea" v-model="formObj.buldPrtctNote" style="width: 300px;"></el-input>
  47. <i @click="showPic('buldPrtctNote')" class="el-icon-camera-solid"></i>
  48. </el-form-item>
  49. <el-form-item label="">
  50. <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
  51. </el-form-item>
  52. </el-form>
  53. </el-main>
  54. <problem-dialog
  55. v-if="showAddProblemDialog && openType"
  56. :objType="76"
  57. :villType="76"
  58. :objId="currentObjectId"
  59. :objName="currentObjectName"
  60. :problemMiddleType="'河湖长制'"
  61. :problData="probId"
  62. @closeDialog="closePlDialog"
  63. :currentObjectRgstrId="currentObjectRgstrId"
  64. ></problem-dialog>
  65. <add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>
  66. </el-container>
  67. </div>
  68. </template>
  69. <script>
  70. import inputWith from "@widget/inuptWith.vue"
  71. import problemDialog from "../../duChaWenTi/problemDialog.vue";
  72. import addPicCom from "./addPic.vue"
  73. import request from "@util/gw_ajax_request.js"
  74. import {getRgstriyWdmnStat} from "@api/duChaTianBao.js"
  75. import {formatDateTimeD} from "@util/gw_date.js"
  76. export default {
  77. components: {
  78. inputWith: inputWith,
  79. problemDialog,
  80. addPicCom
  81. },
  82. props: ['currentObjectId','currentObjectName','currentObjectRgstrId','openType'],
  83. data() {
  84. var checkTel = (rule, value, callback) => {
  85. var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
  86. var isMob= /^[1][3,4,5,7,8][0-9]{9}$/;// 座机格式
  87. if (value&&!isMob.test(value)&&!isPhone.test(value)) {
  88. callback(new Error('请输入合理电话'));
  89. } else if(value&&(isMob.test(value)||isPhone.test(value))){
  90. callback();
  91. }
  92. // setTimeout(() => {
  93. // }, 1000);
  94. };
  95. return {
  96. id:"",
  97. objtbStatu:{
  98. wtuntStat:"",
  99. rgstrId:"",
  100. id:"",
  101. state:""
  102. },
  103. rules:{
  104. wiunWaoLegPersTel:[
  105. { validator: checkTel,trigger: 'blur' }
  106. ],
  107. techPersTel:[
  108. { validator: checkTel,trigger: 'blur' }
  109. ],
  110. patrolPersTel:[
  111. { validator: checkTel,trigger: 'blur' }
  112. ],
  113. },
  114. jqmmDialogShow: false,
  115. type: '',
  116. formObj: {
  117. isPblcFull:"",
  118. pblcFullNote:"",
  119. isTelNo:"",
  120. telNoNote:"",
  121. isBuldPrtct:"",
  122. buldPrtctNote:"",
  123. },
  124. dialogFormVisible: false,
  125. formLabelWidth: '180px',
  126. loading: true,
  127. operationType1:'',
  128. rsvrRules: null,
  129. probId: '',
  130. showAddProblemDialog: false
  131. }
  132. },
  133. computed:{
  134. recPersId(){
  135. return localStorage.getItem("userid")? localStorage.getItem("userid"): ''
  136. }
  137. },
  138. created(){
  139. this.findItemByType()
  140. },
  141. mounted() {
  142. this.getRgstridObj();
  143. },
  144. watch: {
  145. currentObjectRgstrId(n,o){
  146. this.getRgstridObj();
  147. },
  148. },
  149. methods: {
  150. jqmmDialogClose() {
  151. this.jqmmDialogShow = false;
  152. },
  153. showPic(type){
  154. this.type = type
  155. this.jqmmDialogShow = true
  156. },
  157. getRgstridObj(){
  158. var _self = this;
  159. getRgstriyWdmnStat(_self.currentObjectRgstrId).then((res)=>{
  160. _self.formObj = res.data;
  161. _self.id = res.data.id;
  162. });
  163. },
  164. addHandler(){
  165. var _self = this;
  166. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  167. _self.formObj['recPersId'] = _self.recPersId;
  168. if(this.formObj.isPblcFull == "" &&
  169. this.formObj.isTelNo == "" &&
  170. this.formObj.isBuldPrtct == ""
  171. ){
  172. this.formObj.state = "0"
  173. }else if(this.formObj.isPblcFull != "" &&
  174. this.formObj.isTelNo != "" &&
  175. this.formObj.isBuldPrtct != ""
  176. ){
  177. this.formObj.state = "2";
  178. }else{
  179. this.formObj.state = "1"
  180. }
  181. this.$confirm('确认保存现场督查情况信息?', '提示', {
  182. confirmButtonText: '确定',
  183. cancelButtonText: '取消',
  184. type: 'warning'
  185. })
  186. .then(() => {
  187. try{
  188. request.post('/bis/insp/dpgm/wdmn',_self.formObj).then((res)=>{
  189. if (res.success) {
  190. _self.$message.success("修改成功");
  191. _self.$emit("addShuiKuSuccess");
  192. }
  193. });
  194. } catch(e) {
  195. }
  196. })
  197. .catch(() => {
  198. });
  199. },
  200. cancelHandler(){
  201. this.$emit('cancelHandler');
  202. },
  203. findItemByType(){
  204. const obj ={
  205. tname: "BIS_INSP_DPGM_WDMN",
  206. }
  207. request.post("/bis/insp/item/ques/info/findItemByType",obj).then(res =>{
  208. this.rsvrRules = res.data;
  209. })
  210. },
  211. addProblem(item,iValue){
  212. let rest = this.rsvrRules.filter(e => {
  213. return e.iValue === iValue && e.eName === item;
  214. });
  215. if (rest[0]){
  216. this.probId = rest[0].id;
  217. }
  218. this.showAddProblemDialog = true;
  219. },
  220. formatRadio(val){
  221. if(val == '1'){
  222. return '是'
  223. }else if(val == '2'){
  224. return '否'
  225. }else{
  226. return val
  227. }
  228. },
  229. closePlDialog(val) {
  230. this.showAddProblemDialog = false;
  231. }
  232. },
  233. }
  234. </script>
  235. <style scoped>
  236. #dcdxHeader {
  237. padding: 15px 20px;
  238. }
  239. #dxdcFooter {
  240. text-align: center;
  241. }
  242. #dxdcAside {
  243. border:1px solid #d5d5ff;
  244. }
  245. .el-dialog__wrapper .el-treeWhite{
  246. /* max-height: 260px !important; */
  247. }
  248. .add-problem-icon{
  249. font-size: 16px;
  250. }
  251. .el-icon-camera-solid,.el-icon-circle-plus{
  252. margin-left: 20px;
  253. color: #00bbff;
  254. font-size: 18px;
  255. line-height: 12px;
  256. vertical-align: middle;
  257. cursor: pointer;
  258. }
  259. .el-icon-circle-plus{
  260. vertical-align: top;
  261. }
  262. </style>