From 60ee8093a60e2c556e304a4ec7903ca63f43c260 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 23 Jan 2024 18:40:47 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_web

---
 src/views/userHouse/houseList.vue |   95 +++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 78 insertions(+), 17 deletions(-)

diff --git a/src/views/userHouse/houseList.vue b/src/views/userHouse/houseList.vue
index 0005bee..0ddc5df 100644
--- a/src/views/userHouse/houseList.vue
+++ b/src/views/userHouse/houseList.vue
@@ -7,23 +7,26 @@
                     @row-save="rowSave" :before-open="beforeOpen" :page.sync="page" @search-change="searchChange"
                     @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
                     @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
-                    <!-- <template slot="menuLeft"> -->
-                    <!-- <el-button type="danger" size="small" plain icon="el-icon-delete" v-if="permission.house_del"
+                    <template slot="menuLeft">
+                        <el-button type="danger" size="small" plain icon="el-icon-delete" v-if="permission.house_del"
                             @click="handleDelete">删 除
-                        </el-button> -->
-                    <!-- <el-button type="success" size="small" plain v-if="userInfo.role_name.includes('admin')"
+                        </el-button>
+                        <!-- <el-button type="success" size="small" plain v-if="userInfo.role_name.includes('admin')"
                             icon="el-icon-upload2" @click="handleImport">导入
                         </el-button>
                         <el-button type="warning" size="small" plain v-if="userInfo.role_name.includes('admin')"
                             icon="el-icon-download" @click="handleExport">导出
                         </el-button> -->
-                    <!-- <el-button type="success" size="small" plain v-if="permission.house_import"
-                            icon="el-icon-upload2" @click="handleImport">导入
-                        </el-button>
-                        <el-button type="warning" size="small" plain v-if="permission.house_export"
-                            icon="el-icon-download" @click="handleExport">导出
+                        <!-- <el-button type="success" size="small" plain v-if="permission.house_import" icon="el-icon-upload2"
+                            @click="handleImport">导入
                         </el-button> -->
-                    <!-- </template> -->
+                        <!-- <el-button type="warning" size="small" plain v-if="permission.house_export" icon="el-icon-download"
+                            @click="handleExport">导出
+                        </el-button> -->
+                    </template>
+                    <template slot-scope="{row}" slot="location">
+                        <span v-text="showLocation(row.location)"></span>
+                    </template>
 
                     <template slot-scope="{row, size}" slot="menu">
                         <el-button :size="size" type="text" icon="el-icon-circle-plus-outline"
@@ -96,7 +99,7 @@
         </el-col>
     </el-row>
 </template>
-
+ 
 <script>
 import { setLabelColor } from '@/util/util'
 
@@ -133,7 +136,6 @@
 } from "@/util/date"
 import NProgress from 'nprogress'
 import 'nprogress/nprogress.css'
-import func from "@/util/func"
 import householdManager from "./components/householdManager"
 import Qs from "qs"
 export default {
@@ -237,12 +239,32 @@
                         overHidden: true,
                         label: '地址',
                         parent: false,
-                        prop: "houseName",
+                        prop: "address",
                         display: false,
                         searchLabelWidth: 66,
                         searchSpan: 4,
                         search: true,
                     },
+                    {
+                        overHidden: true,
+                        slot: true,
+                        label: "地址",
+                        prop: "location",
+                        type: 'map',
+                        disabled: false,
+                        dataType: "string",
+                        searchLabelWidth: 66,
+                        hide: true,
+                        value: [117.966460, 28.431002, ""],
+                        rules: [
+                            {
+                                required: true,
+                                message: "请选择巡查地址",
+                                trigger: "blur",
+                            },
+                        ],
+                    },
+
                     {
                         hide: true,
                         parent: false,
@@ -487,7 +509,23 @@
             }
         }
     },
-    watch: {},
+    watch: {
+        'form.source': {
+            handler (newData) {
+
+                let locationColumn = this.findObject(
+                    this.option.column,
+                    'location'
+                )
+
+                if (newData == 1) {
+                    locationColumn.disabled = true
+                } else {
+                    locationColumn.disabled = false
+                }
+            },
+        },
+    },
     computed: {
         ...mapGetters(["userInfo", "permission"]),
         permissionList () {
@@ -512,6 +550,17 @@
                 }
             }
         },
+        showLocation () {
+            return (data) => {
+                if (data != null && data.indexOf(',') != -1) {
+                    data = data.split(',')
+
+                    return data[2]
+                } else {
+                    return data || ''
+                }
+            }
+        },
 
         labelDispose () {
             return (list) => {
@@ -527,6 +576,15 @@
     },
     mounted () { },
     methods: {
+        locationDispose (data) {
+            data = data.split(',')
+
+            return {
+                lng: data[0],
+                lat: data[1],
+                address: data[2]
+            }
+        },
 
         onsubmit () {
             if (this.labelForm.color === '#EBEDF0') {
@@ -618,7 +676,8 @@
                 row.imageUrls = urls.join(",")
             }
 
-            add(row).then(() => {
+            add({ ...row, ...this.locationDispose(row.location) }
+            ).then(() => {
                 this.initFlag = false
                 this.onLoad(this.page)
                 this.$message({
@@ -642,7 +701,7 @@
                 row.imageUrls = urls.join(",")
             }
 
-            update(row).then(() => {
+            update({ ...row, ...this.locationDispose(row.location) }).then(() => {
                 this.initFlag = false
                 this.onLoad(this.page)
                 this.$message({
@@ -752,6 +811,8 @@
                 }).then(res => {
                     this.form = res.data.data
 
+                    this.form.location = [this.form.lng, this.form.lat, this.form.address].join(',')
+
                     if (this.form.imageUrls) {
                         if (this.form.imageUrls.length > 0) {
                             var urls = []
@@ -812,7 +873,7 @@
     }
 }
 </script>
-
+ 
 <style>
 .box {
     height: 800px;

--
Gitblit v1.9.3