From fd282503eae38683bd725475bb89887349b0b4f5 Mon Sep 17 00:00:00 2001 From: duanliangtao <48194157+duanliangtao@users.noreply.github.com> Date: Mon, 5 Aug 2024 15:52:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B1=85=E6=B0=91=E4=B8=8A=E6=8A=A5=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=E5=8F=B0=E4=B8=9C=E9=9C=80=E6=B1=82=E7=9A=84=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8C=E6=B6=89=E5=8F=8A=EF=BC=9A=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E3=80=81=E4=BA=8B=E4=BB=B6=E5=88=97=E8=A1=A8=E3=80=81=E7=9D=A3?= =?UTF-8?q?=E5=8A=9E=E5=82=AC=E5=8A=9E=E3=80=81=E4=BA=8B=E4=BB=B6=E7=9A=84?= =?UTF-8?q?=E9=A2=9C=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/shequzhili/eventOld/cpts/add.vue | 60 ++++++++++- .../modules/shequzhili/eventOld/eventList.vue | 101 +++++++++++++++++- 2 files changed, 155 insertions(+), 6 deletions(-) diff --git a/src/views/modules/shequzhili/eventOld/cpts/add.vue b/src/views/modules/shequzhili/eventOld/cpts/add.vue index 56d644e51..659ca86ed 100644 --- a/src/views/modules/shequzhili/eventOld/cpts/add.vue +++ b/src/views/modules/shequzhili/eventOld/cpts/add.vue @@ -13,7 +13,30 @@ @change="handleChangeAgency" clearable> - + + + 事件上报 + 城管事件 + + + + + + + + + + + + + + + + + + + +
@@ -21,7 +44,7 @@ @click="handleShowPersonList">居民信息中选择
- + @@ -132,6 +155,7 @@ var geocoder; // 新建一个正逆地址解析类 function iniFmData() { return { + demandType:"report",// 诉求类型 gridId: "", //所属网格 reportUserId: "", // 上报人ID name: "", // 上报人姓名 @@ -148,6 +172,7 @@ function iniFmData() { // operationType: '0',// 处理方式 // content: '',//回复内容 // status: '',// 处理中:processing;已办结:closed_case + responsibleUnit:"yes", }; } @@ -233,13 +258,25 @@ export default { components: {}, computed: { dataRule() { + const isReport = this.formData.demandType === "report"; + const isChengguan = this.formData.responsibleUnit === "yes"; return { gridId: [ { required: true, message: "所属网格不能为空", trigger: "blur" }, ], - name: [{ required: true, message: "上报人不能为空", trigger: "change" }], + demandType: [ + { required: true, message: "诉求类型不能为空", trigger: "blur" }, + ], + responsibleUnit: [ + { required: true, message: "有无责任单位不能为空", trigger: "blur" }, + ], + name: [{ required: isReport, message: "上报人不能为空", trigger: "change" }], mobile: [ - { required: true, message: "联系电话不能为空", trigger: "blur" }, + { required: isReport, message: "联系电话不能为空", trigger: "blur" }, + ], + responsibleName: [{ required: isChengguan, message: "责任人不能为空", trigger: "change" }], + responsibleMobile: [ + { required: isChengguan, message: "联系电话不能为空", trigger: "blur" }, ], // idCard: [ // { required: true, message: "证件号不能为空", trigger: "blur" }, @@ -311,6 +348,10 @@ export default { ); this.obj.level = this.sarr[this.sarr.length - 1].level }, + handleDemandTypeChange() { + this.$refs.ref_form1.clearValidate(); // 清除所有验证 + this.formData.demandType = this.formData.demandType; // 重新设置诉求类型 + }, getLastItem(list, vals, key) { let LIST = list || []; for (let item of LIST) { @@ -440,13 +481,22 @@ export default { app.util.validateRule(messageObj); return false; } else { - if (!formVltHelper.userOrMobile(this.formData.mobile)) { + if (this.formData.demandType === "report" && !formVltHelper.userOrMobile(this.formData.mobile)) { this.$message({ type: "error", message: "联系电话格式有误", }); return false; } + + if (this.formData.demandType === "chengguan" && this.formData.responsibleUnit === "yes" && !formVltHelper.userOrMobile(this.formData.responsibleMobile)) { + this.$message({ + type: "error", + message: "责任人电话格式有误", + }); + return false; + } + const regCard = /(^\d{15}$)|(^\d{17}(\d|X)$)/; //证件号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X if ( this.formData.idCard && diff --git a/src/views/modules/shequzhili/eventOld/eventList.vue b/src/views/modules/shequzhili/eventOld/eventList.vue index bc7664961..c523e0f3e 100644 --- a/src/views/modules/shequzhili/eventOld/eventList.vue +++ b/src/views/modules/shequzhili/eventOld/eventList.vue @@ -87,6 +87,15 @@ + + + + + + + 取消标记 + 督办催办 + @selection-change="handleSelectionChange" :height="maxTableHeight" :row-class-name="tableRowClassName"> @@ -160,6 +170,12 @@ + + + + + + @@ -252,6 +268,19 @@ 取消 + + + + + + + + + @@ -357,6 +386,21 @@ export default { }, ], + overPeriodArray: [ + { + value: "0", + label: "2天以下", + }, + { + value: "1", + label: "3-4天", + }, + { + value: "2", + label: "4天以上", + }, + ], + qudaoArray: [ { value: "0", @@ -424,9 +468,14 @@ export default { eventDetailData: {}, showVoice: false, + showSupervise: false, selVoiceUrl: "", multipleSelection: [], + + superviseFrom:{ + content: "", + }, }; }, computed: { @@ -477,6 +526,19 @@ export default { }); }, + tableRowClassName({ row }) { + switch (row.overPeriod) { + case '0': + return 'row-over-period-0'; + case '1': + return 'row-over-period-1'; + case '2': + return 'row-over-period-2'; + default: + return 'row-default'; + } + }, + // 查看 handleLook(row) { let { name,reportUserId } = row @@ -527,6 +589,28 @@ export default { this.$message.error(msg); } }, + async handleSuperviseEvent(){ + this.showSupervise = true; + }, + + async doSuperviseEvent() { + const url = "/governance/icEventOld/doSuperviseEvent"; + if (this.multipleSelection.length == 0) { + this.$message.warning('请选择督办催办的事件') + return + } + let params = { + icEventIdList: this.multipleSelection, + content: this.superviseFrom.content, + }; + const { data, code, msg } = await requestPost(url, params); + if (code === 0) { + this.$message.success("督办催办成功"); + this.getTableData(); + } else { + this.$message.error(msg); + } + }, handleSearch(val) { this.pageNo = 1; @@ -893,3 +977,18 @@ export default { color: #fff; } + +