From 87e98d5b5efeb7a9cf6330ae03e6dd53699b7ef1 Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期一, 15 一月 2024 17:10:25 +0800
Subject: [PATCH] 代码更新

---
 src/components/left/layerTree/messageInfo.vue |  105 +++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 78 insertions(+), 27 deletions(-)

diff --git a/src/components/left/layerTree/messageInfo.vue b/src/components/left/layerTree/messageInfo.vue
index 06bb843..ab246e4 100644
--- a/src/components/left/layerTree/messageInfo.vue
+++ b/src/components/left/layerTree/messageInfo.vue
@@ -5,23 +5,30 @@
         <div>灞炴�т俊鎭�</div>
         <div class="modelmenu">
           <div v-show="showMenuGrid">
-            <el-link style="color: white;font-size: 14x;">缂栬緫</el-link>
+            <el-link v-show="disabled" @click="disabled = false" style="color: white;font-size: 14x;">缂栬緫</el-link>
+            <el-link v-show="!disabled" @click="setObjSave" style="color: white;font-size: 14x;">淇濆瓨</el-link>
           </div>
-          <div class="modelClose" @click="$store.state.showMessageInfo = false"> X</div>
+          <div class="modelClose" @click="$store.state.showMessageInfo = false">X</div>
         </div>
 
       </div>
     </div>
     <div class="modelContent">
       <div v-show="!showMenuGrid" class="contentMessage" v-for="(item, index) in modelOption" :key="index">
-        <div>{{ item.name }}</div>
+        <div>
+          <label>{{ item.name }}</label>
+        
+        </div>
         <div>{{ item.value }}</div>
       </div>
       <div v-show="showMenuGrid" class="contentMessage" v-for="(item, index) in modelOption" :key="index">
         <div>{{ item.name }}</div>
         <div v-show="item.name == 'ID'">{{ item.value }}
         </div>
-        <div v-show="item.name != 'ID'"><el-input style="width: 100%;" v-model="item.value" placeholder=""></el-input>
+        <div v-show="item.name == 'type'">{{ item.value }}
+        </div>
+        <div v-show="item.name != 'ID' && item.name != 'type'"><el-input style="width: 100%;  text-align: center;"
+            v-model="item.value" :disabled="disabled"></el-input>
         </div>
       </div>
     </div>
@@ -32,7 +39,7 @@
 <script>
 import model from '../../../assets/js/Layer/model';
 import mapInfo from '../../../assets/js/Layer/mapInfo';
-import {Grid_SelectById} from '@/api/api'
+import { Grid_SelectById, Grid_UpdateById } from '../../../api/api'
 export default {
   name: "modelEdit",
   components: {
@@ -43,6 +50,9 @@
     return {
       modelOption: null,
       showMenuGrid: false,
+      disabled: true,
+      gid: null,
+      obj: null,
     };
   },
   mounted() {
@@ -52,41 +62,78 @@
 
   },
   methods: {
-
     setLayerStart() {
+      this.obj = null;
       var data = mapInfo.mssageInfo;
       if (!data) {
         this.$store.state.showMessageInfo = false;
         return
       }
       var flag = false;
-      var id=null;
-      // for(var i in data){
-      //   if(data[i].name == '绫诲瀷' && data[i].value =='缃戞牸'){
-      //     flag = true;
-      //   }
-      //   if(data[i].name =='ID'){
-      //     id=data[i].value;
-      //   }
-      // }
-      // if(flag){
-      //   this.getInfoMessage(id)
-      // }else{
-      //   this.setInfoMesgData(data);
-      // }
+      for (var i in data) {
+        if (data[i].name == "TYPE" && data[i].value == 'DrawGrid') {
+          flag = true;
+          break;
+        }
+      }
+      if (flag) {
+        for (var i in data) {
+          if (data[i].name == "gid") {
+            this.gid = data[i].value
+            this.getInfoMessage(this.gid);
+            break;
+          }
+        }
 
-      this.setInfoMesgData(data);
+      } else {
+        this.setInfoMesgData(data);
+      }
     },
     setInfoMesgData(res) {
       this.modelOption = res
     },
-   async getInfoMessage(res){
+    async setObjSave() {
+      var properties = this.obj.features[0].properties;
+      for (var key in properties) {
+        for (var i in this.modelOption) {
+          if (this.modelOption[i].name == key) {
+            properties[key] = this.modelOption[i].value
+          }
+        }
+      }
+      const data = await Grid_UpdateById({
+        id: this.gid,
+        json: JSON.stringify(this.obj.features[0])
+      });
+      if (data.status == 200) {
+        this.$message({
+          message: "淇濆瓨鎴愬姛",
+          type: "success",
+        });
+        this.disabled = true;
+      }
+    },
+    async getInfoMessage(res) {
       const data = await Grid_SelectById(res);
-       if(data.status == 200){
+      if (data.status == 200) {
+        this.obj = data.data;
+        var properties = this.obj.features[0].properties;
+        console.log(data.data.features[0])
+        var std = [];
+        for (var key in properties) {
+          std.push({
+            name: key,
+            value: properties[key]
+          })
+        }
+        this.showMenuGrid = true
+        this.modelOption = std;
 
-       }
+      }
     }
-  }
+
+  },
+
 };
 </script>
 
@@ -131,6 +178,7 @@
       font-size: 14x;
       margin-left: 20px;
 
+
     }
   }
 
@@ -157,6 +205,9 @@
         // margin-bottom: 5%;
         line-height: 50px;
         border-right: 1px solid white;
+        border-top: 1px solid white !important;
+        word-wrap:break-word;
+   
       }
 
       div:first-child {
@@ -167,8 +218,8 @@
     }
 
     .contentMessage:first-child {
-      border-top: 1px solid white;
-      ;
+      border-top: 1px solid white !important;
+
     }
   }
 

--
Gitblit v1.9.3