3352b7a15f0e180e1a73aa55c06795e32cd619fc.svn-base 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  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. <p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span style="width:120px;padding-left: 10px">行政责任人信息</span><span class="hrs"></span></p>
  9. <el-form-item label="是否有行政责任人" required="true">
  10. <el-radio v-model="formObj.hasWiunWaoLegPers" label="1">是</el-radio>
  11. <el-radio v-model="formObj.hasWiunWaoLegPers" label="2">否</el-radio>
  12. </el-form-item>
  13. <el-form-item label="责任人名称">
  14. <el-input v-model="formObj.wiunWaoLegPers" autocomplete="off" style="width:70%;"></el-input>
  15. </el-form-item>
  16. <el-form-item label="责任人电话" prop="wiunWaoLegPersTel">
  17. <el-input v-model="formObj.wiunWaoLegPersTel" autocomplete="off" style="width:70%;"></el-input>
  18. </el-form-item>
  19. <el-form-item label="责任人职务">
  20. <el-input v-model="formObj.wiunWaoLegPersDuty" autocomplete="off" style="width:70%;"></el-input>
  21. </el-form-item>
  22. <el-form-item label="履职情况" :required="this.formObj.hasWiunWaoLegPers === '1' ? true:false">
  23. <el-radio v-model="formObj.wiunWaoLegPersResu" label="1">好</el-radio>
  24. <el-radio v-model="formObj.wiunWaoLegPersResu" label="2">一般</el-radio>
  25. <el-radio v-model="formObj.wiunWaoLegPersResu" label="3">差</el-radio>
  26. </el-form-item>
  27. <p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span style="width:120px;padding-left: 10px">技术责任人情况</span><span class="hrs"></span></p>
  28. <el-form-item label="是否有技术责任人" required="true">
  29. <el-radio v-model="formObj.hasTechPers" label="1">是</el-radio>
  30. <el-radio v-model="formObj.hasTechPers" label="2">否</el-radio>
  31. </el-form-item>
  32. <el-form-item label="责任人名称">
  33. <el-input v-model="formObj.techPers" autocomplete="off" style="width:70%;"></el-input>
  34. </el-form-item>
  35. <el-form-item label="责任人电话" prop="techPersTel">
  36. <el-input v-model="formObj.techPersTel" autocomplete="off" style="width:70%;"></el-input>
  37. </el-form-item>
  38. <el-form-item label="责任人职务">
  39. <el-input v-model="formObj.techPersDuty" autocomplete="off" style="width:70%;"></el-input>
  40. </el-form-item>
  41. <el-form-item label="履职情况">
  42. <el-radio v-model="formObj.techPersResu" label="1">好</el-radio>
  43. <el-radio v-model="formObj.techPersResu" label="2">一般</el-radio>
  44. <el-radio v-model="formObj.techPersResu" label="3">差</el-radio>
  45. </el-form-item>
  46. <p style="margin-top:10px;margin-bottom: 10px"><i class="el-icon-caret-right"></i><span style="width:120px;padding-left: 10px">巡查责任人情况</span><span class="hrs"></span></p>
  47. <el-form-item label="是否有巡查责任人" required="true">
  48. <el-radio v-model="formObj.hasPatrolPers" label="1">是</el-radio>
  49. <el-radio v-model="formObj.hasPatrolPers" label="2">否</el-radio>
  50. </el-form-item>
  51. <el-form-item label="责任人名称">
  52. <el-input v-model="formObj.patrolPers" autocomplete="off" style="width:70%;"></el-input>
  53. </el-form-item>
  54. <el-form-item label="责任人电话" prop="patrolPersTel">
  55. <el-input v-model="formObj.patrolPersTel" autocomplete="off" style="width:70%;"></el-input>
  56. </el-form-item>
  57. <!-- <el-form-item label="责任人职务">
  58. <el-input v-model="formObj.patrolPersDuty" autocomplete="off" style="width:70%;"></el-input>
  59. </el-form-item> -->
  60. <el-form-item label="责任人身份">
  61. <el-radio v-model="formObj.patrolPersDuty" label="1">专职</el-radio>
  62. <el-radio v-model="formObj.patrolPersDuty" label="2">兼职</el-radio>
  63. </el-form-item>
  64. <el-form-item label="是否参加过培训">
  65. <el-radio v-model="formObj.hasAttendTrain" label="1">是</el-radio>
  66. <el-radio v-model="formObj.hasAttendTrain" label="2">否</el-radio>
  67. </el-form-item>
  68. <el-form-item label="履职情况">
  69. <el-radio v-model="formObj.patrolPersResu" label="1">好</el-radio>
  70. <el-radio v-model="formObj.patrolPersResu" label="2">一般</el-radio>
  71. <el-radio v-model="formObj.patrolPersResu" label="3">差</el-radio>
  72. </el-form-item>
  73. <el-form-item label="经费来源">
  74. <el-input v-model="formObj.fundSour" autocomplete="off" style="width:70%;"></el-input>
  75. </el-form-item>
  76. <el-form-item label="">
  77. <!-- <el-button @click="cancelHandler">取 消</el-button> -->
  78. <el-button type="primary" @click="addHandler">保 存</el-button>
  79. </el-form-item>
  80. </el-form>
  81. </el-main>
  82. </el-container>
  83. <!-- <span slot="footer" class="dialog-footer" style="justify-content: flex-end;display: flex;">
  84. <el-button @click="cancelHandler">取 消</el-button>
  85. <el-button type="primary" @click="addHandler">确 定</el-button>
  86. </span> -->
  87. <!-- </el-dialog> -->
  88. </div>
  89. </template>
  90. <script>
  91. import inputWith from "../../widgets/inuptWith.vue"
  92. import request from "../../utils/gw_ajax_request.js"
  93. import {getRgstrid,addBasePres} from "../../api/duChaTianBao.js"
  94. import {formatDateTimeD} from "../../utils/gw_date.js"
  95. export default {
  96. components: {
  97. inputWith: inputWith
  98. },
  99. props: ['currentObjectRgstrId'],
  100. data() {
  101. var checkTel = (rule, value, callback) => {
  102. // if (!value) {
  103. // return callback(new Error('不能为空'));
  104. // }
  105. var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
  106. var isMob= /^[1][3,4,5,7,8][0-9]{9}$/;// 座机格式
  107. if (!isMob.test(value)&&!isPhone.test(value)) {
  108. callback(new Error('请输入合理电话'));
  109. } else {
  110. callback();
  111. }
  112. // setTimeout(() => {
  113. // }, 1000);
  114. };
  115. return {
  116. objtbStatu:{
  117. presStat:"",
  118. rgstrId:"",
  119. },
  120. rules:{
  121. wiunWaoLegPersTel:[
  122. { validator: checkTel,trigger: 'blur' }
  123. ],
  124. techPersTel:[
  125. { validator: checkTel,trigger: 'blur' }
  126. ],
  127. patrolPersTel:[
  128. { validator: checkTel,trigger: 'blur' }
  129. ],
  130. },
  131. formObj: {
  132. "dutyId":'',
  133. "hasPatrolPers": "",//是否有巡查责任人
  134. "hasTechPers": "",//是否有技术责任人
  135. "hasWiunWaoLegPers": "",//是否有行政责任人
  136. "patrolPers": "",//巡查责任人姓名
  137. "patrolPersDuty": "",//巡查责任人职务
  138. "patrolPersResu": "",//巡查责任人履职情况 0 1 2
  139. "patrolPersTel": "",//巡查责任人电话
  140. "rgstrId": "",//水库督查登记ID
  141. "techPers": "",//技术责任人姓名
  142. "techPersDuty": "",//技术责任人职务
  143. "techPersResu": "",//技术责任人履职情况
  144. "techPersTel": "",//技术责任人电话
  145. "wiunWaoLegPers": "",//行政责任人姓名
  146. "wiunWaoLegPersDuty": "",//行政责任人职务
  147. "wiunWaoLegPersResu": "",//行政责任人履职情况
  148. "wiunWaoLegPersTel": "",//行政责任人电话
  149. "hasAttendTrain":"",//是否参加过培训
  150. "patrolFundSour":"",//巡查经费来源
  151. },
  152. dialogFormVisible: false,
  153. formLabelWidth: '160px',
  154. loading: true,
  155. operationType1:''
  156. }
  157. },
  158. computed:{
  159. recPersId(){
  160. return localStorage.getItem("userid")? localStorage.getItem("userid"): ''
  161. }
  162. },
  163. mounted() {
  164. this.getRgstridObj();
  165. },
  166. watch: {
  167. currentObjectRgstrId(n,o){
  168. this.getRgstridObj();
  169. },
  170. },
  171. methods: {
  172. getRgstridObj(){
  173. var _self = this;
  174. getRgstrid(_self.currentObjectRgstrId).then((res)=>{
  175. if(res.data){
  176. _self.formObj = res.data;
  177. _self.operationType1 = 'update';
  178. }else{
  179. _self.formObj = {};
  180. _self.operationType1 = 'add';
  181. }
  182. });
  183. },
  184. addHandler(){
  185. var _self = this;
  186. _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
  187. _self.formObj['recPersId'] = _self.recPersId;
  188. _self.objtbStatu.rgstrId = _self.currentObjectRgstrId;
  189. // if(_self.formObj.hasWiunWaoLegPers == '1' && !_self.formObj.wiunWaoLegPersResu || !_self.formObj.hasWiunWaoLegPers){
  190. // this.$message.info('请填写行政责任人信息')
  191. // return
  192. // }
  193. // if(_self.formObj.hasTechPers == '1' && !_self.formObj.techPersResu || !_self.formObj.hasTechPers){
  194. // this.$message.info('请填写技术责任人信息')
  195. // return
  196. // }
  197. // if(!_self.formObj.hasPatrolPers){
  198. // this.$message.info('请填写巡查责任人信息')
  199. // return
  200. // }
  201. // if(_self.formObj.hasPatrolPers == '1'){
  202. // if( !_self.formObj.patrolPersDuty || !_self.formObj.hasAttendTrain || !_self.formObj.patrolPersResu){
  203. // this.$message.info('请填写巡查责任人信息')
  204. // return
  205. // }
  206. // }
  207. if(_self.formObj.hasWiunWaoLegPers == '2' && _self.formObj.hasTechPers == '2' && _self.formObj.hasPatrolPers == '2' ){
  208. this.objtbStatu.presStat = "2"
  209. }else{
  210. if(_self.formObj.hasWiunWaoLegPers ==undefined &&
  211. _self.formObj.wiunWaoLegPersResu ==undefined &&
  212. _self.formObj.hasTechPers ==undefined &&
  213. _self.formObj.techPersResu ==undefined &&
  214. _self.formObj.hasPatrolPers ==undefined ){
  215. this.objtbStatu.presStat = "0"
  216. }
  217. if(_self.formObj.hasWiunWaoLegPers == '1' &&
  218. _self.formObj.wiunWaoLegPersResu &&
  219. _self.formObj.hasTechPers == '1' &&
  220. _self.formObj.techPersResu &&
  221. _self.formObj.hasPatrolPers == '1'){
  222. this.objtbStatu.presStat = "2"
  223. }
  224. if(_self.formObj.hasWiunWaoLegPers || _self.formObj.hasTechPers || _self.formObj.hasPatrolPers ){
  225. this.objtbStatu.presStat = "1"
  226. }
  227. }
  228. this.$confirm('确认保存责任人落实情况信息?', '提示', {
  229. confirmButtonText: '确定',
  230. cancelButtonText: '取消',
  231. type: 'warning'
  232. })
  233. .then(() => {
  234. if(_self.operationType1 == 'add'){
  235. try{
  236. request.post('/dc/insp/basePres',_self.formObj).then((res)=>{
  237. if (res.success) {
  238. _self.$message.success("添加成功");
  239. request.post("/dc/insp/rsvrRgstr/update",_self.objtbStatu).then((res)=>{
  240. res;
  241. })
  242. _self.$emit("addShuiKuSuccess");
  243. }
  244. });
  245. } catch(e) {
  246. }
  247. }else if(_self.operationType1 == 'update'){
  248. try{
  249. request.post('/dc/insp/basePres/update',_self.formObj).then((res)=>{
  250. if (res.success) {
  251. _self.$message.success("修改成功");
  252. request.post("/dc/insp/rsvrRgstr/update",_self.objtbStatu).then((res)=>{
  253. res;
  254. })
  255. _self.$emit("addShuiKuSuccess");
  256. }
  257. });
  258. } catch(e) {
  259. }
  260. }
  261. })
  262. .catch(() => {
  263. });
  264. this.$emit('cancelHandler');
  265. },
  266. cancelHandler(){
  267. this.$emit('cancelHandler');
  268. },
  269. formatRadio(val){
  270. if(val == '1'){
  271. return '是'
  272. }else if(val == '0'){
  273. return '否'
  274. }else{
  275. return val
  276. }
  277. }
  278. },
  279. }
  280. </script>
  281. <style>
  282. #dcdxHeader {
  283. padding: 15px 20px;
  284. }
  285. #dxdcFooter {
  286. text-align: center;
  287. }
  288. #dxdcAside {
  289. border:1px solid #d5d5ff;
  290. }
  291. .el-dialog__wrapper .el-treeWhite{
  292. /* max-height: 260px !important; */
  293. }
  294. </style>