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

---
 src/components/left/layerTree/messageInfo.vue |   98 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 72 insertions(+), 26 deletions(-)

diff --git a/src/components/left/layerTree/messageInfo.vue b/src/components/left/layerTree/messageInfo.vue
index 06bb843..aeb1c92 100644
--- a/src/components/left/layerTree/messageInfo.vue
+++ b/src/components/left/layerTree/messageInfo.vue
@@ -5,9 +5,10 @@
         <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>
@@ -21,7 +22,10 @@
         <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 +36,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 +47,9 @@
     return {
       modelOption: null,
       showMenuGrid: false,
+      disabled: true,
+      gid: null,
+      obj: null,
     };
   },
   mounted() {
@@ -52,41 +59,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 +175,7 @@
       font-size: 14x;
       margin-left: 20px;
 
+
     }
   }
 
@@ -157,6 +202,7 @@
         // margin-bottom: 5%;
         line-height: 50px;
         border-right: 1px solid white;
+        border-top: 1px solid white !important;
       }
 
       div:first-child {
@@ -167,8 +213,8 @@
     }
 
     .contentMessage:first-child {
-      border-top: 1px solid white;
-      ;
+      border-top: 1px solid white !important;
+
     }
   }
 

--
Gitblit v1.9.3