From 5e2aafeede13d337380f736567caf74f49713be7 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 09 Aug 2024 14:38:32 +0800
Subject: [PATCH] 代码优化

---
 src/views/cGovernance/taskECallTwo/index.vue |  450 ++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 260 insertions(+), 190 deletions(-)

diff --git a/src/views/cGovernance/taskECallTwo/index.vue b/src/views/cGovernance/taskECallTwo/index.vue
index 65c077d..63571ff 100644
--- a/src/views/cGovernance/taskECallTwo/index.vue
+++ b/src/views/cGovernance/taskECallTwo/index.vue
@@ -14,10 +14,10 @@
         </el-button>
       </template>
 
-      <!-- <template slot="menu" slot-scope="{row, size, index}">
+      <template slot="menu" slot-scope="{row, size, index}">
         <el-button size="small" type="text" icon="el-icon-share" plain @click="share(row)">分享
         </el-button>
-      </template> -->
+      </template>
 
       <template slot-scope="{row, size}" slot="phone">
         <el-button :size="size" type="text" @click="showStringDispose(row, 'phoneflag')"
@@ -36,7 +36,7 @@
     </avue-crud>
 
     <el-dialog title="编辑" append-to-body :visible.sync="editPopup" center @close="editClose">
-      <avue-form ref="formRef" :option="option" v-model="editForm" @submit="rowUpdate">
+      <avue-form ref="formRef" :option="option" v-model="editForm" @submit="handleSubmit">
 
         <template slot-scope="{type, disabled}" slot="sceneGeo">
           <el-button type="primary" style="font-size: 14px;  border: none;" icon="el-icon-map-location"
@@ -67,11 +67,18 @@
 
 <script>
   import {
+    setToken,
+    setRefreshToken,
+    removeToken,
+    removeRefreshToken,
+  } from "@/util/auth";
+  import {
     getList,
     remove,
     update,
     add,
-    getDetail
+    getDetail,
+    synchronizeData
   } from "@/api/task/eCallEventTwo"
   import {
     add as circleAdd,
@@ -80,6 +87,9 @@
     getList as getHouseList,
     getDetatil as getHouseDetail
   } from "@/api/doorplateAddress/doorplateAddress.js"
+  import {
+    getDept
+  } from "@/api/system/dept"
   import {
     mapGetters
   } from "vuex"
@@ -121,7 +131,7 @@
           // searchLabelWidth: 96,
           searchShow: true,
           searchMenuSpan: 3,
-          menuWidth: 310,
+          menuWidth: 160,
           delBtn: false,
           editBtn: false,
 
@@ -139,82 +149,14 @@
           column: [{
               label: "工单号",
               prop: "orderCode",
+              viewDisplay: false,
               span: 12,
               searchSpan: 4,
-              width: 100,
+              width: 160,
+              overHidden: true,
               search: true,
               searchLabelWidth: 76,
-              rules: [{
-                required: true,
-                message: "请输入工单号",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              width: 156,
-              label: "诉求主题",
-              prop: "issueTitle",
-              search: true,
-              searchSpan: 4,
-              rules: [{
-                required: true,
-                message: "请选择诉求主题",
-                trigger: "blur",
-              }],
-            },
-            {
-              width: 100,
-              label: "诉求来源",
-              prop: "issueOrigin",
-              span: 12,
-              searchSpan: 4,
-              dataType: "number",
-              type: "select",
-              dicData: [{
-                label: "热线",
-                value: 0
-              }, {
-                label: "公安110",
-                value: 1
-              }, {
-                label: "微信",
-                value: 2
-              }, {
-                label: "微博",
-                value: 3
-              }],
-              rules: [{
-                required: true,
-                message: "请选择诉求来源",
-                trigger: "blur",
-              }, ],
-            },
-            {
-              label: "诉求内容",
-              parent: false,
-              prop: "issueContent",
-              search: false,
-              rules: [{
-                required: true,
-                message: "请选择诉求内容",
-                trigger: "blur",
-              }, ],
-            },
-
-            {
-              label: "诉求用户类别",
-              prop: "applicantType",
-              span: 12,
-              searchSpan: 4,
-              width: 100,
-              type: "select",
-              dicData: [{
-                label: "个人",
-                value: "0"
-              }, {
-                label: "企业",
-                value: "1"
-              }],
+              addDisplay: false,
             },
             {
               width: 110,
@@ -252,12 +194,12 @@
               slot: true
             },
             {
-              width: 100,
-              label: "现场联系电话",
+              width: 120,
+              label: "诉求人联系电话",
               prop: "applicantPhone",
               rules: [{
                   required: true,
-                  message: "请输入现场联系电话",
+                  message: "请输入诉求人联系电话",
                   trigger: "blur",
                 },
                 {
@@ -265,6 +207,76 @@
                   trigger: 'blur'
                 }
               ],
+            },
+            {
+              width: 100,
+              label: "诉求来源",
+              prop: "issueOrigin",
+              disabled: true,
+              span: 12,
+              searchSpan: 4,
+              dataType: "number",
+              type: "select",
+              dicUrl: "/api/blade-system/dict-biz/dictionary?code=ehjb_org",
+              props: {
+                label: "dictValue",
+                value: "dictKey",
+              },
+              rules: [{
+                required: true,
+                message: "请选择诉求来源",
+                trigger: "blur",
+              }, ],
+            },
+            {
+              width: 156,
+              label: "诉求标题",
+              prop: "issueTitle",
+              search: true,
+              searchSpan: 4,
+              width: 160,
+              overHidden: true,
+              rules: [{
+                required: true,
+                message: "请选择诉求标题",
+                trigger: "blur",
+              }],
+            },
+
+            {
+              label: "诉求用户类别",
+              prop: "applicantType",
+              span: 12,
+              searchSpan: 4,
+              width: 100,
+              type: "select",
+              dicData: [{
+                label: "个人",
+                value: "0"
+              }, {
+                label: "企业",
+                value: "1"
+              }],
+              rules: [{
+                required: true,
+                message: "请输入诉求用户类别",
+                trigger: "blur",
+              }],
+            },
+            {
+              label: "办结内容",
+              parent: false,
+              prop: "issueContent",
+              search: false,
+              type: 'textarea',
+              width: 160,
+              span: 24,
+              overHidden: true,
+              rules: [{
+                required: true,
+                message: "请选择办结内容",
+                trigger: "blur",
+              }, ],
             },
             {
               label: "事发地址",
@@ -281,16 +293,19 @@
                 trigger: "blur",
               }],
             },
-
             {
               prop: "sceneGeo",
               dataType: "string",
               type: 'map',
+              hide: true,
+              width: 100,
+              viewDisplay: false,
               // dataType: "string",
               span: 24,
               // value: [117.966460, 28.431002, ""]
             },
             {
+              width: 100,
               label: "事发地点-经度",
               prop: "sceneGeoLng",
               disabled: true,
@@ -301,6 +316,7 @@
               }, ],
             },
             {
+              width: 100,
               label: "事发地点-纬度",
               prop: "sceneGeoLat",
               disabled: true,
@@ -321,37 +337,132 @@
                 value: "code"
               },
             },
+            // {
+            //   label: "事发场所",
+            //   width: 100,
+            //   prop: "scenePlace",
+            // },
             {
-              label: "事发场所",
-              prop: "scenePlace",
+              label: "受理时间",
+              prop: "createTime",
+              type: "datetime",
+              format: "yyyy-MM-dd HH:mm:ss",
+              valueFormat: "yyyy-MM-dd HH:mm:ss",
+              // labelWidth: 100,
+              rules: [{
+                required: true,
+                message: "请输入受理时间",
+                trigger: "blur",
+              }],
             },
             {
               label: "归口类型",
               prop: "issueClazz",
-              type: "tree",
+              // type: "tree",
+              type: "cascader",
+              dicUrl: "/api/blade-issueClazz/issueClazz/tree",
+              // showAllLevels: false,
+              props: {
+                label: "title",
+                value: "id"
+              },
+              rules: [{
+                required: true,
+                message: "请选择归口类型",
+                trigger: "blur",
+              }, ],
+              span: 12,
+              filterable: true,
+            },
+            {
+              label: "承办单位",
+              prop: "acptOrgName",
+              // type: "tree",
+              // type: "cascader",
               // dicUrl: "/api/blade-issueClazz/issueClazz/tree",
               // props: {
               //   label: "title",
               //   value: "id"
               // },
-              // rules: [{
-              //   required: true,
-              //   message: "请选择归口类型",
-              //   trigger: "blur",
-              // }, ],
+              rules: [{
+                required: true,
+                message: "请选择归口类型",
+                trigger: "blur",
+              }, ],
               span: 12,
             },
+
             {
               label: "紧急程度",
               prop: "issueLevel",
               type: "select",
+              value: "1",
               dicData: [{
                 label: "一般",
                 value: "0"
               }, {
                 label: "即办",
                 value: "1"
+              }, {
+                label: "重大",
+                value: "2"
+              }, {
+                label: "紧急重大",
+                value: "3"
               }],
+            },
+            {
+              label: "是否保密",
+              prop: "is_secret",
+              type: "select",
+              value: "1",
+              dicData: [{
+                label: "否",
+                value: "0"
+              }, {
+                label: "是",
+                value: "1"
+              }],
+              rules: [{
+                required: true,
+                message: "请选择是否保密",
+                trigger: "blur",
+              }, ],
+            },
+            {
+              label: "诉求类型",
+              prop: "issue_type",
+              // disabled: true,
+              // addDisplay: false,
+              type: "select",
+              value: "2",
+              dicData: [{
+                label: "咨询",
+                value: "0"
+              }, {
+                label: "投诉",
+                value: "1"
+              }, {
+                label: "求助",
+                value: "2"
+              }, {
+                label: "举报",
+                value: "3"
+              }, {
+                label: "建议",
+                value: "4"
+              }, {
+                label: "表扬",
+                value: "5"
+              }, {
+                label: "无效投诉",
+                value: "6"
+              }],
+              rules: [{
+                required: true,
+                message: "请选择诉求类型",
+                trigger: "blur",
+              }, ],
             },
             {
               label: "工单附件",
@@ -370,87 +481,26 @@
               label: "工单状态",
               prop: "status",
               disabled: true,
+              addDisplay: false,
               type: "select",
-              value: "0",
+              value: "2",
               dicData: [{
                 label: "受理",
-                value: "0"
-              }, {
-                label: "处理中",
                 value: "1"
               }, {
-                label: "已归档",
+                label: "处理中",
                 value: "2"
-              }],
-            },
-            {
-              label: "已反馈",
-              prop: "tagDoing",
-              type: "select",
-              value: "Y",
-              dicData: [{
-                label: "否",
-                value: "N"
               }, {
-                label: "是",
-                value: "Y"
+                label: "已归档",
+                value: "3"
               }],
             },
-            {
-              label: "已答复",
-              prop: "tagResp",
-              value: "Y",
-              type: "select",
-              dicData: [{
-                label: "否",
-                value: "N"
-              }, {
-                label: "是",
-                value: "Y"
-              }],
-            },
-            {
-              label: "已办结",
-              prop: "tagDone",
-              value: "Y",
-              type: "select",
-              dicData: [{
-                label: "否",
-                value: "N"
-              }, {
-                label: "是",
-                value: "Y"
-              }],
-            },
-            {
-              label: "已回访",
-              prop: "tagCheck",
-              value: "Y",
-              type: "select",
-              dicData: [{
-                label: "否",
-                value: "N"
-              }, {
-                label: "是",
-                value: "Y"
-              }],
-            },
-            {
-              label: "核实/督办",
-              prop: "tagRedo",
-              value: "Y",
-              type: "select",
-              dicData: [{
-                label: "否",
-                value: "N"
-              }, {
-                label: "是",
-                value: "Y"
-              }],
-            },
+
+
           ],
         },
         data: [],
+        dept: {},
       }
     },
     watch: {
@@ -458,7 +508,9 @@
         // form是表单或者表格绑定的数据集,v-model='form'
         handler(val) {
           if (typeof val == "object") {
-            if (!val) {
+            console.log("*****11**********" + val)
+            console.log("*****789111**********" + !val)
+            if (val.length <= 0) {
               return
             }
             console.log("*****789**********" + val)
@@ -467,29 +519,36 @@
             //经纬度替换
             this.form.sceneGeoLat = arr[1]
             this.form.sceneGeoLng = arr[0]
+            this.form.location = arr[2]
           }
         },
-        immediate: true,
       },
 
       "editForm.sceneGeo": {
         // form是表单或者表格绑定的数据集,v-model='form'
         handler(val) {
           if (typeof val == "object") {
-            if (!val) {
+            if (val.length <= 0) {
               return
             }
             console.log("*****789**********" + val)
+            console.log("*****78910**********" + !val)
 
             var arr = val
             //经纬度替换
             this.editForm.sceneGeoLat = arr[1]
             this.editForm.sceneGeoLng = arr[0]
+            this.editForm.location = arr[2]
           }
         },
-        immediate: true,
       },
     },
+    // created() {
+    //   const token = this.$route.query.token
+    //   if (token) {
+    //     setToken(token)
+    //   }
+    // },
     computed: {
       ...mapGetters(["permission", "userInfo"]),
       permissionList() {
@@ -522,6 +581,13 @@
       }
     },
     methods: {
+      getDeptInfo() {
+        getDept(this.userInfo.dept_id).then(res => {
+          this.dept = res.data.data
+          this.form.issueOrigin = res.data.data.sort
+          // console.log("*********res.data.data*************" + JSON.stringify(res.data.data))
+        })
+      },
       openMap() {
         this.$refs.avueInputMap.box = true
         console.log(this.$refs.avueInputMap)
@@ -566,8 +632,25 @@
           }
         )
       },
-      rowUpdate(row, index, done, loading) {
 
+      handleSubmit(form, done) {
+        update(form).then(
+          () => {
+            this.onLoad(this.page)
+            this.editPopup = false
+            this.$message({
+              type: "success",
+              message: "操作成功!",
+            })
+            done()
+          },
+          (error) => {
+            window.console.log(error)
+            loading()
+          }
+        )
+      },
+      rowUpdate(row, index, done, loading) {
         update(row).then(
           () => {
             this.onLoad(this.page)
@@ -590,7 +673,7 @@
             type: "warning",
           })
           .then(() => {
-            return remove(row.orderId)
+            return remove(row.id)
           })
           .then(() => {
             this.onLoad(this.page)
@@ -631,8 +714,8 @@
         param.houseCode = this.shareCircleRow.addressCode
         param.circleImages = this.shareCircleRow.imageUrls
         param.communityCode = this.shareCircleRow.communityCode
-        param.circleText = this.shareCircleRow.remark
-        param.evenType = 2
+        param.circleText = "标题:" + this.shareCircleRow.issueTitle + " 内容: " + this.shareCircleRow.issueContent
+        param.evenType = 3
         param.eventId = this.shareCircleRow.id
         circleAdd(param).then(
           () => {
@@ -653,8 +736,10 @@
         this.sharePopup = false
       },
       handleEdit(row) {
-        this.editForm = row
-        this.editPopup = true
+        getDetail(row.orderId).then((res) => {
+          this.editForm = res.data.data
+          this.editPopup = true
+        })
       },
       handleDelete() {
         if (this.selectionList.length === 0) {
@@ -682,15 +767,6 @@
         if (["edit", "view"].includes(type)) {
           getDetail(this.form.orderId).then((res) => {
             this.form = res.data.data
-            // this.form.sceneAddr = [this.form.sceneGeoLng, this.form.sceneGeoLat, this.form.sceneAddr].join(',')
-            // if (this.form.imageUrls.length > 0) {
-            //   var urls = []
-            //   var names = this.form.imageUrls.split(",")
-            //   names.forEach(name => {
-            //     urls.push(website.minioUrl + name)
-            //   })
-            //   this.form.imageUrls = urls.join(",")
-            // }
           })
         }
         // con
@@ -722,26 +798,20 @@
           values.dateTime = null
         }
         this.loading = true
+        // this.getDeptInfo();
+
         getList(page.currentPage, page.pageSize, values).then((res) => {
           const data = res.data.data
           this.page.total = data.total
           this.data = data.records
-          this.data.forEach(item => {
-            // this.$set(item, 'phoneflag', false)
-            // if (item.imageUrls) {
-            //   if (item.imageUrls.length > 0) {
-            //     var urls = []
-            //     var names = item.imageUrls.split(",")
-            //     names.forEach(name => {
-            //       urls.push(website.minioUrl + name)
-            //     })
-            //     item.imageUrls = urls.join(",")
-            //   }
-            // }
-          })
+
           this.loading = false
           this.selectionClear()
         })
+
+        // synchronizeData().then((res) => {
+
+        // })
       }
     },
   }

--
Gitblit v1.9.3