From 66f009989644d9d3aab1c0c66924429fc7b97bff Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Fri, 08 Dec 2023 16:37:57 +0800
Subject: [PATCH] e呼即应修改,新增地图选点

---
 src/views/task/eCall/index.vue |  184 ++++++++++++++++++++++++++-------------------
 1 files changed, 106 insertions(+), 78 deletions(-)

diff --git a/src/views/task/eCall/index.vue b/src/views/task/eCall/index.vue
index 7e6caa3..814bd16 100644
--- a/src/views/task/eCall/index.vue
+++ b/src/views/task/eCall/index.vue
@@ -18,10 +18,10 @@
 import {
   getList as getHouseList,
   getDetatil as getHouseDetail
-} from "@/api/userHouse/list/house.js";
+} from "@/api/doorplateAddress/doorplateAddress.js";
 import { mapGetters } from "vuex";
 import website from '@/config/website';
-
+import AvueMap from "avue-plugin-map";
 export default {
   data() {
     return {
@@ -42,7 +42,7 @@
         tip: false,
         searchShow: true,
         searchMenuSpan: 3,
-        menuWidth: 350,
+        menuWidth: 220,
         border: true,
         //stripe:true,
         index: true,
@@ -56,7 +56,7 @@
             prop: "name",
             span: 12,
             searchSpan: 4,
-            width:100,
+            width: 100,
             search: true,
             rules: [
               {
@@ -72,8 +72,8 @@
             span: 12,
             searchSpan: 4,
             dataType: "number",
-            type:"select",
-            width:100,
+            type: "select",
+            width: 100,
             dicUrl: "/api/blade-system/dict-biz/dictionary?code=eCallEventType",
             props: {
               label: "dictValue",
@@ -93,9 +93,9 @@
             prop: "communityCode",
             // search: true,
             // searchSpan: 4,
-            width:150,
+            width: 150,
             type: "tree",
-            dicUrl:"/api/blade-system/region/tree?parentCode=361102005",
+            dicUrl: "/api/blade-system/region/tree?parentCode=361102005",
             props: {
               label: "name",
               value: "id"
@@ -113,21 +113,20 @@
             prop: "source",
             span: 12,
             searchSpan: 4,
-            width:100,
-            hide:true,
+            width: 100,
+            hide: true,
             // search: true,
           },
-          
           {
             label: "姓名",
             prop: "realName",
             span: 12,
             searchSpan: 4,
-            width:100,
+            width: 100,
             search: true,
             rules: [
               {
-                required: true,
+                required: false,
                 message: "请输入姓名",
                 trigger: "blur",
               },
@@ -137,7 +136,7 @@
             label: "联系方式",
             prop: "phone",
             span: 12,
-            width:100,
+            width: 100,
             searchSpan: 4,
             search: true,
             rules: [
@@ -149,12 +148,48 @@
             ],
           },
           {
+            label: "事发地点",
+            prop: "scene",
+            overHidden: true,
+            rules: [
+              {
+                required: true,
+                message: "请输入事发地点",
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "事发时间",
+            prop: "occurrenceTime",
+            width: 100,
+            type: "date",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+            rules: [
+              {
+                required: true,
+                message: "请选择事发时间",
+                trigger: "blur",
+              },
+            ],
+          },
+          {
+            label: "事发位置",
+            prop: "location",
+            submitBtn:"提交",
+            hide: true,
+            type: 'map',
+            span: 24,
+            value: [117.966460, 28.431002, ""]
+          },
+          {
             label: "标准地址",
             prop: "addressCode",
             hide: true,
             type: "table",
-            span:24,
-            row:true,
+            span: 24,
+            row: true,
             children: {
               border: true,
               height: 400,
@@ -162,23 +197,24 @@
               searchMenuSpan: 6,
               submitText: "确定",
               column: [
+                // {
+                //   label: "小区",
+                //   prop: "aoiName",
+                //   search: true,
+                //   searchSpan: 4,
+                //   rules: [
+                //     {
+                //       required: true,
+                //       message: "请选择小区",
+                //       trigger: "blur",
+                //     },
+                //   ],
+                // }, 
                 {
-                  label: "小区",
-                  prop: "districtName",
-                  search: true,
-                  searchSpan: 4,
-                  rules: [
-                    {
-                      required: true,
-                      message: "请选择小区",
-                      trigger: "blur",
-                    },
-                  ],
-                }, {
                   label: "标准地址",
                   search: true,
                   searchSpan: 8,
-                  prop: "houseName",
+                  prop: "addressName",
                   display: false
                 },
               ],
@@ -189,7 +225,7 @@
               total: 0
             },
             formatter: (row) => {
-              return row.houseName
+              return row.addressName
               // if (!row.districtName) return ''
               // return row.districtName + '-' + row.unit  + row.building  + row.room 
             },
@@ -197,7 +233,7 @@
               //首次加载去查询对应的值
               if (value) {
                 getHouseDetail({
-                  houseCode: value
+                  addressCode: value
                 }).then(res => {
                   var resData = res.data.data;
                   // 查询对应行数据
@@ -209,7 +245,7 @@
                 this.loading = true;
                 var params = {
                   ...data,
-                  streetCode: "361102005"
+                  townStreetCode: "361102005"
                 }
                 getHouseList(page.currentPage, page.pageSize, Object.assign(params)).then(res => {
                   const resData = res.data.data;
@@ -226,19 +262,20 @@
               }
             },
             props: {
-              label: 'houseName',
-              value: 'houseCode'
+              label: 'addressName',
+              value: 'addressCode'
             }
           },
+         
           {
             label: "现场图片",
             prop: "imageUrls",
-            width:80,
+            width: 80,
             type: "upload",
             listType: "picture-card",
-            dataType:"string",
+            dataType: "string",
             multiple: true,
-            row:true,
+            row: true,
             action: "/api/blade-resource/oss/endpoint/put-file-attach",
             propsHttp: {
               res: "data",
@@ -247,37 +284,11 @@
             },
             span: 24,
           },
-          {
-            label: "事发地点",
-            prop: "scene",
-            overHidden:true,
-            rules: [
-              {
-                required: true,
-                message: "请输入事发地点",
-                trigger: "blur",
-              },
-            ],
-          },
-          {
-            label: "事发时间",
-            prop: "occurrenceTime",
-            width: 160,
-            type: "date",
-            format: "yyyy-MM-dd",
-            valueFormat: "yyyy-MM-dd",
-            rules: [
-              {
-                required: true,
-                message: "请选择事发时间",
-                trigger: "blur",
-              },
-            ],
-          },
+          
           {
             label: "事件简述",
             prop: "remark",
-            type:"textarea",
+            type: "textarea",
             span: 24,
           },
           // {
@@ -288,17 +299,17 @@
           //   span: 24,
           // },
           {
-            label: "回访情况",
-            prop: "retVis",
-            type:"textarea",
-            hide:true,
+            label: "处理结果",
+            prop: "disRes",
+            type: "textarea",
+            hide: true,
             span: 24,
           },
           {
-            label: "处理结果",
-            prop: "disRes",
-            type:"textarea",
-            hide:true,
+            label: "回访情况",
+            prop: "retVis",
+            type: "textarea",
+            hide: true,
             span: 24,
           },
           // {
@@ -313,6 +324,23 @@
     };
   },
   watch: {
+    "form.location": {
+      // form是表单或者表格绑定的数据集,v-model='form'
+      handler(val) {
+        
+        var that = this;
+        if (val) {
+          console.log(val,7777)
+          var arr = val.split(",");
+          console.log(val,88888)
+          //经纬度替换
+          this.form.lat = arr[0];
+          this.form.lng = arr[1];
+          // this.form.location = arr[2];
+        }
+      },
+      immediate: true,
+    },
   },
   computed: {
     ...mapGetters(["permission", "userInfo"]),
@@ -446,7 +474,7 @@
           if (this.form.imageUrls.length > 0) {
             var urls = []
             var names = this.form.imageUrls.split(",");
-            names.forEach(name=>{
+            names.forEach(name => {
               urls.push(website.minioUrl + name)
             })
             this.form.imageUrls = urls.join(",")
@@ -484,12 +512,12 @@
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
-        this.data.forEach(item=>{
-          if(item.imageUrls){
-            if(item.imageUrls.length>0){
+        this.data.forEach(item => {
+          if (item.imageUrls) {
+            if (item.imageUrls.length > 0) {
               var urls = []
               var names = item.imageUrls.split(",");
-              names.forEach(name=>{
+              names.forEach(name => {
                 urls.push(website.minioUrl + name)
               })
               item.imageUrls = urls.join(",")

--
Gitblit v1.9.3