From 693c63dd4ea80db16f97c569df851a0f6fcf7906 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期六, 03 十二月 2022 17:37:50 +0800
Subject: [PATCH] bug修改

---
 src/components/MapView/mapMenuTop.vue |   83 +++++++++++++++++++++++++++++------------
 1 files changed, 58 insertions(+), 25 deletions(-)

diff --git a/src/components/MapView/mapMenuTop.vue b/src/components/MapView/mapMenuTop.vue
index 33cfaa7..a327f84 100644
--- a/src/components/MapView/mapMenuTop.vue
+++ b/src/components/MapView/mapMenuTop.vue
@@ -7,20 +7,19 @@
           :title="treeChange"
           placeholder="璇烽�夋嫨..."
         >
-          <el-option
-            :value="menuTopFrom.queryLayer"
-            style="overflow: auto; height: 100%"
-          >
-            <el-tree
-              :data="layerData"
-              show-checkbox
-              node-key="id"
-              ref="tree"
-              accordion
-              highlight-current
-              :props="defaultProps"
-            >
-            </el-tree>
+          <el-option :value="menuTopFrom.queryLayer" style="height: 100%">
+            <div style="height: 200px; overflow: auto">
+              <el-tree
+                :data="layerData"
+                show-checkbox
+                node-key="id"
+                ref="tree"
+                accordion
+                highlight-current
+                :props="defaultProps"
+              >
+              </el-tree>
+            </div>
             <div style="margin-top: 5px">
               <el-button size="mini" plain @click="getCheckedNodes"
                 >纭</el-button
@@ -38,7 +37,11 @@
       </el-form-item>
 
       <el-form-item>
-        <el-select v-model="menuTopFrom.queryType" placeholder="璇烽�夋嫨...">
+        <el-select
+          @change="changeValue($event)"
+          v-model="menuTopFrom.queryType"
+          placeholder="璇烽�夋嫨..."
+        >
           <el-option
             v-for="item in queryOption"
             :key="item.value"
@@ -52,19 +55,20 @@
         <input
           :accept="'.shp, .shx, .dbf, .prj'"
           style="display: none"
+          ref="pathClear"
           type="file"
           name="file"
           id="getMenuTopFile"
           multiple="multiple"
           @change="setMenuTopFile()"
         />
-        <el-link @click="getMenuTopFile" :underline="false"
+        <!-- <el-link @click="getMenuTopFile" :underline="false"
           >瀵煎叆閫夋嫨鑼冨洿</el-link
-        >
+        > -->
       </el-form-item>
       <el-form-item>
         <el-button plain @click="getAttributeQuery">鏌ヨ</el-button>
-        <el-button type="info" plain>閲嶇疆</el-button>
+        <el-button type="info" @click="clearQuery" plain>閲嶇疆</el-button>
       </el-form-item>
     </el-form>
   </div>
@@ -118,6 +122,10 @@
           value: 'polygon',
           label: '澶氳竟褰�',
         },
+        {
+          value: 'inputFile',
+          label: '瀵煎叆閫夋嫨鑼冨洿',
+        },
       ],
       defaultProps: {
         children: 'children',
@@ -134,6 +142,15 @@
     this.getAllTable();
   },
   methods: {
+    changeValue(value) {
+      // var obj = {};
+      // obj = this.queryOption.find(function (item) {
+      //   return item.value === value;
+      // });
+      // if (obj.value == 'inputFile') {
+      //   this.getMenuTopFile();
+      // }
+    },
     async getAllTable() {
       const data = await inquiry_SelectTabs();
       if (data.code != 200) {
@@ -198,6 +215,7 @@
             return this.$message.error('鐢ㄦ埛瑙掕壊璇锋眰閿欒');
           }
           this.$store.state.mapMenuShpFile = rs.result;
+          this.showMapMenuPop();
         },
         error: (e) => {
           console.log(e);
@@ -212,8 +230,7 @@
       //娓呯┖鏍囩粯
       sgworld.Creator.SimpleGraphic.edit(false, { editProp: false });
       sgworld.Creator.SimpleGraphic.clear();
-      var val = document.getElementById('getMenuTopFile').files;
-      if (!val || !val.length) {
+      if (this.menuTopFrom.queryType != 'inputFile') {
         sgworld.Creator.createSimpleGraphic(
           this.menuTopFrom.queryType,
           {},
@@ -222,7 +239,7 @@
           }
         );
       } else {
-        this.showMapMenuPop();
+        this.getMenuTopFile();
       }
     },
     setTurfGeometry(res) {
@@ -296,7 +313,6 @@
       this.showMapMenuPop();
     },
     showMapMenuPop() {
-      console.log(this.treeChange);
       this.$store.state.mapSpaceQueryLayer = this.treeChange;
       if (
         this.$store.state.mapPopBoolean != true &&
@@ -307,8 +323,17 @@
       }
       this.$bus.$emit('changeMapMenuTop', 'true');
       //娓呯┖inputFile
-      var file = document.getElementById('getMenuTopFile');
-      file.outerHTML = file.outerHTML;
+      // var file = document.getElementById('getMenuTopFile');
+      // file.outerHTML = file.outerHTML;
+      this.$refs.pathClear.value = '';
+    },
+    clearQuery() {
+      this.$refs.pathClear.value = '';
+      this.treeChange = [];
+      this.menuTopFrom.queryLayer = null;
+      this.menuTopFrom.queryType = 'rectangle';
+      this.$refs.tree.setCheckedKeys([]);
+      sgworld.Creator.SimpleGraphic.clear();
     },
     setCartesianToEightFour(res) {
       var std = {};
@@ -323,7 +348,7 @@
 };
 </script>
 
-<style lang="less">
+<style lang="less" scoped>
 .menuBox {
   width: 98%;
   height: 100%;
@@ -338,4 +363,12 @@
   padding: 4px 20px;
   font-weight: 400;
 }
+/deep/.el-input__inner {
+  background-color: transparent !important ;
+  color: #fff;
+  border: 1px solid;
+}
+/deep/ .el-select .el-input__inner {
+  border-color: #fff !important;
+}
 </style>

--
Gitblit v1.9.3