From 67769a8a47fe971de05219de20bb65a9e6604f8b Mon Sep 17 00:00:00 2001
From: 王旭 <1377869194@qq.com>
Date: 星期四, 23 二月 2023 10:29:06 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.20.39:8989/r/LFWEB_NEW

---
 src/views/Tools/LayerTree.vue |  477 +++++++++++++++++++++++++++++------------------------------
 1 files changed, 234 insertions(+), 243 deletions(-)

diff --git a/src/views/Tools/LayerTree.vue b/src/views/Tools/LayerTree.vue
index 04d664c..4d68611 100644
--- a/src/views/Tools/LayerTree.vue
+++ b/src/views/Tools/LayerTree.vue
@@ -1,62 +1,66 @@
 <template>
   <div class="lalala tree-container">
-    <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
-              v-model="filterText"
-              class="search">
+    <el-input
+      placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
+      v-model="filterText"
+      class="search"
+    >
     </el-input>
-    <el-tree :data="treeData"
-             node-key="id"
-             default-expand-all
-             show-checkbox
-             @node-click="handleLeftclick"
-             @node-contextmenu="rightClick"
-             @check-change="handleCheckChange"
-             :default-checked-keys="handleTreeCheck"
-             ref="tree">
-      <span class="slot-t-node"
-            slot-scope="{ node, data }"
-            @dblclick="editNode(data)">
+    <el-tree
+      ref="tree"
+      :data="treeData"
+      node-key="id"
+      default-expand-all
+      show-checkbox
+      @node-click="handleLeftclick"
+      @node-contextmenu="rightClick"
+      @check-change="handleCheckChange"
+      :default-checked-keys="handleTreeCheck"
+    >
+      <span
+        class="slot-t-node"
+        slot-scope="{ node, data }"
+        @dblclick="editNode(data)"
+      >
         <span v-show="!data.isEdit">
           <span :class="[data.id >= 99 ? 'slot-t-node--label' : '']">{{
             node.label
           }}</span>
         </span>
         <span v-show="data.isEdit">
-          <el-input class="slot-t-input"
-                    size="mini"
-                    autofocus
-                    v-model="data.label"
-                    :ref="'slotTreeInput' + data.id"
-                    @blur.stop="NodeBlur(node, data)"
-                    @keydown.native.enter="NodeBlur(node, data)"></el-input>
+          <el-input
+            class="slot-t-input"
+            size="mini"
+            autofocus
+            v-model="data.label"
+            :ref="'slotTreeInput' + data.id"
+            @blur.stop="NodeBlur(node, data)"
+            @keydown.native.enter="NodeBlur(node, data)"
+          ></el-input>
         </span>
       </span>
-
     </el-tree>
 
-    <el-card class="box-card"
-             ref="card"
-             :style="{ ...rightClickMenuStyle }"
-             v-show="menuVisible">
-      <div @click="addSameLevelNode()">
-        <i class="el-icon-circle-plus-outline"></i>&nbsp;&nbsp;娣诲姞鍥惧眰缁�
+    <el-card
+      class="box-card"
+      ref="card"
+      :style="{ ...rightClickMenuStyle }"
+      v-show="menuVisible"
+    >
+      <div @click="addSameLevelNode()" v-show="firstLevel">
+        <i class="el-icon-plus"></i>&nbsp;&nbsp;娣诲姞鍥惧眰缁�
       </div>
-      <div class="add"
-           @click="addChildNode()"
-           v-show="firstLevel">
-        <i class="el-icon-circle-plus-outline"></i>&nbsp;&nbsp;娣诲姞鍥惧眰
+      <div class="add" @click="addChildNode()">
+        <i class="el-icon-plus"></i>&nbsp;&nbsp;娣诲姞鍥惧眰
       </div>
-      <div class="delete"
-           @click="deleteNode()">
-        <i class="el-icon-remove-outline"></i>&nbsp;&nbsp;鍒犻櫎鑺傜偣
+      <div class="delete" @click="deleteNode()">
+        <i class="el-icon-delete"></i>&nbsp;&nbsp;鍒犻櫎
       </div>
-      <div class="edit"
-           @click="editNode()">
-        <i class="el-icon-edit"></i>&nbsp;&nbsp;淇敼鑺傜偣
+      <div class="edit" @click="editNode()">
+        <i class="el-icon-edit"></i>&nbsp;&nbsp;閲嶅懡鍚�
       </div>
-      <div class="edit"
-           @click="showLayerAttribute()">
-        <i class="el-icon-edit"></i>&nbsp;&nbsp;灞炴��
+      <div class="edit" @click="showLayerAttribute()">
+        <i class="el-icon-tickets"></i>&nbsp;&nbsp;灞炴��
       </div>
       <!-- <div
         class="edit"
@@ -71,25 +75,29 @@
         <i class="el-icon-bottom"></i>&nbsp;&nbsp;涓嬬Щ
       </div> -->
     </el-card>
-    <el-dialog :title="appendNodetitle"
-               :visible.sync="dialogVisible"
-               width="30%"
-               top="20vh"
-               :modal="false"
-               :before-close="handleClose">
-      <el-form ref="form"
-               :model="addFormServer"
-               label-width="100px">
+    <el-dialog
+      :title="appendNodetitle"
+      :visible.sync="dialogVisible"
+      width="30%"
+      top="20vh"
+      :modal="false"
+      :before-close="handleClose"
+    >
+      <el-form ref="form" :model="addFormServer" label-width="100px">
         <el-form-item label="鏈嶅姟绫诲瀷">
           <!-- <el-input v-model="addFormServer.type"></el-input> -->
-          <el-select style="width:100%"
-                     :popper-append-to-body="false"
-                     v-model="addFormServer.layerType"
-                     placeholder="璇烽�夋嫨">
-            <el-option v-for="item in options"
-                       :key="item.value"
-                       :label="item.label"
-                       :value="item.value">
+          <el-select
+            style="width: 100%"
+            :popper-append-to-body="false"
+            v-model="addFormServer.layerType"
+            placeholder="璇烽�夋嫨"
+          >
+            <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
             </el-option>
           </el-select>
         </el-form-item>
@@ -107,10 +115,8 @@
           <el-slider v-model="addFormServer.opacity"></el-slider>
         </el-form-item>
       </el-form>
-      <span slot="footer"
-            class="dialog-footer">
-        <el-button type="primary"
-                   @click="setAddServer">纭� 瀹�</el-button>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="setAddServer">纭� 瀹�</el-button>
       </span>
     </el-dialog>
     <queryinfo ref="queryinfo" />
@@ -118,96 +124,95 @@
 </template>
 
 <script>
-import { image_layer } from '../../assets/js/index.js';
-import ImageWMS from 'ol/source/ImageWMS';
-import Image from 'ol/layer/Image';
-import GeoJSON from 'ol/format/GeoJSON.js';
-import Map from 'ol/Map.js';
-import queryinfo from './queryinfo.vue';
+import { image_layer } from "../../assets/js/index.js";
+import ImageWMS from "ol/source/ImageWMS";
+import Image from "ol/layer/Image";
+import GeoJSON from "ol/format/GeoJSON.js";
+import Map from "ol/Map.js";
+import queryinfo from "./queryinfo.vue";
 import { Vector as VectorSource } from "ol/source";
-import { Vector as VectorLayer, } from "ol/layer";
+import { Vector as VectorLayer } from "ol/layer";
 
-import View from 'ol/View.js';
-import { Fill, Stroke, Style } from 'ol/style.js';
-import { perms_selectLayers } from '../../api/api.js'
+import View from "ol/View.js";
+import { Fill, Stroke, Style } from "ol/style.js";
+import { perms_selectLayers } from "../../api/api.js";
 export default {
-  name: 'tree',
+  name: "tree",
   components: { queryinfo },
-  data () {
+  data() {
     return {
-      eleId: '',
+      eleId: "",
       isShow: false,
-      currentData: '',
-      currentNode: '',
+      currentData: "",
+      currentNode: "",
       menuVisible: false,
       firstLevel: false,
-      filterText: '',
-      appendNodetitle: '',
+      filterText: "",
+      appendNodetitle: "",
       maxexpandId: 4,
       rightClickMenuStyle: {},
       handleTreeCheck: [],
       dialogVisible: false,
       addFormServer: {
         opacity: 100,
-        layerType: 'WMS',
+        layerType: "WMS",
         type: 2,
       },
       layerId: [
-        'm_pipeline',
-        'th_strategic_channel',
-        'bs_project',
-        'm_sitepoint',
+        "m_pipeline",
+        "th_strategic_channel",
+        "bs_project",
+        "m_sitepoint",
       ],
-      treeData: [
-
-      ],
+      treeData: [],
       defaultProps: {
-        children: 'children',
-        label: 'label',
-
+        children: "children",
+        label: "label",
       },
-      options: [{
-        value: 'WMS',
-        label: 'WMS'
-      }, {
-        value: 'WFS',
-        label: 'WFS'
-      }],
+      options: [
+        {
+          value: "WMS",
+          label: "WMS",
+        },
+        {
+          value: "WFS",
+          label: "WFS",
+        },
+      ],
     };
   },
   methods: {
-    NodeBlur (Node, data) {
+    NodeBlur(Node, data) {
       if (data.label.length === 0) {
-        this.$message.error('鑿滃崟鍚嶄笉鍙负绌猴紒');
+        this.$message.error("鑿滃崟鍚嶄笉鍙负绌猴紒");
         return false;
       } else {
         if (data.isEdit) {
-          this.$set(data, 'isEdit', false);
+          this.$set(data, "isEdit", false);
         }
         this.$nextTick(() => {
-          this.$refs['slotTreeInput' + data.id].$refs.input.focus();
+          this.$refs["slotTreeInput" + data.id].$refs.input.focus();
         });
       }
     },
     // 鏌ヨ
-    filterNode (value, data) {
+    filterNode(value, data) {
       if (!value) return true;
       return data.label.indexOf(value) !== -1;
     },
 
-    allowDrop (draggingNode, dropNode, type) {
-      if (dropNode.data.label === '浜岀骇 3-1') {
-        return type !== 'inner';
+    allowDrop(draggingNode, dropNode, type) {
+      if (dropNode.data.label === "浜岀骇 3-1") {
+        return type !== "inner";
       } else {
         return true;
       }
     },
-    allowDrag (draggingNode) {
-      return draggingNode.data.label.indexOf('涓夌骇 3-2-2') === -1;
+    allowDrag(draggingNode) {
+      return draggingNode.data.label.indexOf("涓夌骇 3-2-2") === -1;
     },
     // 榧犳爣鍙冲嚮浜嬩欢
-    rightClick (event, object, Node, element) {
-
+    rightClick(event, object, Node, element) {
       this.currentData = object;
       this.currentNode = Node;
       if (Node.level === 1) {
@@ -217,11 +222,11 @@
       }
       this.menuVisible = true;
 
-      this.$refs.card.$el.style.left = event.pageX + 20 + 'px';
-      this.$refs.card.$el.style.top = event.pageY + 'px';
+      this.$refs.card.$el.style.left = event.pageX + 20 + "px";
+      this.$refs.card.$el.style.top = event.pageY + "px";
     },
     // 榧犳爣宸﹀嚮浜嬩欢
-    handleLeftclick (data, node) {
+    handleLeftclick(data, node) {
       this.foo();
       if (node.checked == true) {
         for (var i = 0; i < window.Viewer.imageryLayers._layers.length; i++) {
@@ -234,43 +239,42 @@
       }
     },
     //  鍙栨秷榧犳爣鐩戝惉浜嬩欢 鑿滃崟鏍�
-    foo () {
+    foo() {
       this.menuVisible = false;
       //  瑕佸強鏃跺叧鎺夌洃鍚紝涓嶅叧鎺夌殑鏄竴涓潙锛屼笉淇′綘璇曡瘯锛岃櫧鐒跺墠鍙版樉绀虹殑鏃跺�欐病鏈夊暐姣涚梾锛屽姞涓�涓猘lert浣犲氨鐭ラ亾浜�
-      document.removeEventListener('click', this.foo);
+      document.removeEventListener("click", this.foo);
     },
     // 澧炲姞鍚岀骇鑺傜偣浜嬩欢
-    addSameLevelNode () {
-
+    addSameLevelNode() {
       this.foo();
       if (this.currentNode.level == 2) {
         this.appendNodetitle = this.currentData.label;
         this.dialogVisible = true;
       } else {
         let id = Math.ceil(Math.random() * 100);
-        var data = { id: id, label: '鏂板鑺傜偣' };
+        var data = { id: id, label: "鏂板鑺傜偣" };
         this.$refs.tree.append(data, this.currentNode.parent);
       }
     },
     // 澧炲姞瀛愮骇鑺傜偣浜嬩欢
-    addChildNode () {
+    addChildNode() {
       this.foo();
-      if (this.currentNode.level >= 2) {
-        this.$message.error('鏈�澶氬彧鏀袱绾э紒');
-        return false;
-      }
+      // if (this.currentNode.level >= 2) {
+      //   this.$message.error("鏈�澶氬彧鏀袱绾э紒");
+      //   return false;
+      // }
       this.appendNodetitle = this.currentData.label;
       this.dialogVisible = true;
     },
-    handleClose () {
+    handleClose() {
       this.dialogVisible = false;
       this.addFormServer = {
         opacity: 100,
-        layerType: 'WMS',
+        layerType: "WMS",
         type: 2,
       };
     },
-    setAddServer () {
+    setAddServer() {
       var val = this.currentNode;
       if (this.currentNode.level == 2) {
         val = this.currentNode.parent;
@@ -281,22 +285,24 @@
       this.handleClose();
     },
     // 鍒犻櫎鑺傜偣
-    deleteNode () {
-
+    deleteNode() {
       this.foo();
       var label = this.currentNode.data.label;
-      if (this.currentNode.data.layerType == 'WMS') {
+      if (this.currentNode.data.layerType == "WMS") {
         for (var i in window.Viewer.imageryLayers_layers) {
           if (window.Viewer.imageryLayers_layers[i].name === label) {
-            window.Viewer.imageryLayers.remove(window.Viewer.imageryLayers_layers[i])
+            window.Viewer.imageryLayers.remove(
+              window.Viewer.imageryLayers_layers[i]
+            );
           }
         }
-
-      } else if (this.currentNode.data.layerType == 'WFS') {
+      } else if (this.currentNode.data.layerType == "WFS") {
         for (var i in window.Viewer.dataSources._dataSources) {
           if (window.Viewer.dataSources._dataSources[i].name == label) {
-            window.Viewer.dataSources.remove(window.Viewer.dataSources._dataSources[i]);
-            std.push(data.label)
+            window.Viewer.dataSources.remove(
+              window.Viewer.dataSources._dataSources[i]
+            );
+            std.push(data.label);
           }
         }
       }
@@ -311,122 +317,116 @@
       this.$refs.tree.remove(this.currentNode);
     },
     //灞炴�ф樉绀�
-    showLayerAttribute (data) {
+    showLayerAttribute(data) {
       this.foo();
       this.currentData = data ? data : this.currentData;
-      var layer = this.currentData.layer.replaceAll('_', "");
+      var layer = this.currentData.layer.replaceAll("_", "");
       this.$store.state.mapSpaceQueryLayer = layer;
       // this.$store.state.mapPopBoolean = true;
-      this.$store.state.mapPopBoxFlag = '2';
+      this.$store.state.mapPopBoxFlag = "2";
       this.$refs && this.$refs.queryinfo && this.$refs.queryinfo.close();
-      this.$refs && this.$refs.queryinfo && this.$refs.queryinfo.open("灞炴��", null, {
-        close: () => {
+      this.$refs &&
+        this.$refs.queryinfo &&
+        this.$refs.queryinfo.open("灞炴��", null, {
+          close: () => {
+            if (this.$store.state.primitLayer != null) {
+              sgworld.Creator.DeleteObject(this.$store.state.primitLayer);
+              this.$store.state.primitLayer = null;
+            }
 
-          if (this.$store.state.primitLayer != null) {
-            sgworld.Creator.DeleteObject(this.$store.state.primitLayer);
-            this.$store.state.primitLayer = null;
-          }
-
-          if (window.Viewer.scene.primitives.length != 0) {
-            window.Viewer.scene.primitives.removeAll()
-          }
-        }
-      });
+            if (window.Viewer.scene.primitives.length != 0) {
+              window.Viewer.scene.primitives.removeAll();
+            }
+          },
+        });
     },
     // 缂栬緫鑺傜偣
-    editNode (data) {
-
+    editNode(data) {
       this.foo();
       this.currentData = data ? data : this.currentData;
       if (!this.currentData.isEdit) {
-        this.$set(this.currentData, 'isEdit', true);
+        this.$set(this.currentData, "isEdit", true);
       }
       // 鑾峰彇鐒︾偣
       this.$nextTick(() => {
-        this.$refs['slotTreeInput' + this.currentData.id].focus();
+        this.$refs["slotTreeInput" + this.currentData.id].focus();
       });
     },
 
-
-
-    menuMoveF (type) {
+    menuMoveF(type) {
       // 灏嗗彉鍔ㄤ箣鍓嶇殑node澶囦唤
       var node = this.currentNode;
       var data = this.currentData;
-      let copyNode = this.currentNode
+      let copyNode = this.currentNode;
 
       // copyNode.previousSibling = {...node. }
       // copyNode.nextSibling = {...node.nextSibling}
       // window.sessionStorage.setItem('menuNode',CircularJSON.stringify(copyNode))
-      let nodeData = {}
-      if (type === 'up') {
+      let nodeData = {};
+      if (type === "up") {
         // 涓婄Щ
         if (node.previousSibling) {
           // 鍒犻櫎鍘熷厛鐨刵ode
-          this.$refs.tree.remove(node.data)
+          this.$refs.tree.remove(node.data);
           // 鎷垮埌copy鐨刵ode
           // nodeData = CircularJSON.parse(window.sessionStorage.getItem('menuNode'))
           // // 澶嶅埗璇ode鍒版寚瀹氫綅缃�(鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫悗涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node)
           // this.$refs.tree.insertBefore(nodeData.data,nodeData.previousSibling.data)
-          window.sessionStorage.removeItem('menuNode')
+          window.sessionStorage.removeItem("menuNode");
         } else {
-          this.$message.warning('璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓婄骇')
+          this.$message.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓婄骇");
         }
       } else {
         // 涓嬬Щ
         if (node.nextSibling) {
-          this.$refs.tree.remove(node.data)
-          nodeData = CircularJSON.parse(window.sessionStorage.getItem('menuNode'))
+          this.$refs.tree.remove(node.data);
+          nodeData = CircularJSON.parse(
+            window.sessionStorage.getItem("menuNode")
+          );
           // 鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫墠涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node
-          this.$refs.tree.insertAfter(nodeData.data, nodeData.nextSibling.data)
-          window.sessionStorage.removeItem('menuNode')
+          this.$refs.tree.insertAfter(nodeData.data, nodeData.nextSibling.data);
+          window.sessionStorage.removeItem("menuNode");
         } else {
-          this.$message.warning('璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓嬬骇')
+          this.$message.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓嬬骇");
         }
       }
     },
 
-
-    handleDragStart (node, ev) {
-      console.log('drag start', node);
+    handleDragStart(node, ev) {
+      console.log("drag start", node);
     },
-    handleDragEnter (draggingNode, dropNode, ev) {
-      console.log('tree drag enter: ', dropNode.label);
+    handleDragEnter(draggingNode, dropNode, ev) {
+      console.log("tree drag enter: ", dropNode.label);
     },
-    handleDragLeave (draggingNode, dropNode, ev) {
-      console.log('tree drag leave: ', dropNode.label);
+    handleDragLeave(draggingNode, dropNode, ev) {
+      console.log("tree drag leave: ", dropNode.label);
     },
-    handleDragOver (draggingNode, dropNode, ev) {
-      console.log('tree drag over: ', dropNode.label);
+    handleDragOver(draggingNode, dropNode, ev) {
+      console.log("tree drag over: ", dropNode.label);
     },
-    handleDragEnd (draggingNode, dropNode, dropType, ev) {
-      console.log('tree drag end: ', dropNode && dropNode.label, dropType);
+    handleDragEnd(draggingNode, dropNode, dropType, ev) {
+      console.log("tree drag end: ", dropNode && dropNode.label, dropType);
     },
-    handleDrop (draggingNode, dropNode, dropType, ev) {
-      console.log('tree drop: ', dropNode.label, dropType);
+    handleDrop(draggingNode, dropNode, dropType, ev) {
+      console.log("tree drop: ", dropNode.label, dropType);
     },
     handleCheckChange(data, checked, indeterminate) {
-      
-
-
-
       if (data.type != 2) return;
       //鍋氬垽鏂槸鍚︽槸1锛�100涓囪鏀跨晫闈�
-      if(data.layer==window.XZOutlie&&checked){
-        window.ImageLayer3.show=false;
-      }else{
-        window.ImageLayer3.show=true;
+      if (data.layer == window.XZOutlie && checked) {
+        window.ImageLayer3.show = false;
+      } else {
+        window.ImageLayer3.show = true;
       }
 
-
       var std = [];
-      if (data.layerType == 'WMS') {
+      if (data.layerType == "WMS") {
         var layers_ol = window.map.getAllLayers();
         for (var i = 0; i < window.Viewer.imageryLayers._layers.length; i++) {
-          var val_id = window.Viewer.imageryLayers._layers[i].imageryProvider.name;
+          var val_id =
+            window.Viewer.imageryLayers._layers[i].imageryProvider.name;
           if (val_id == data.label) {
-
-            std.push(data.label)
+            std.push(data.label);
 
             const img_layer = window.Viewer.imageryLayers._layers[i];
             img_layer.show = checked;
@@ -439,21 +439,20 @@
             layerOl.setVisible(checked); //鏄剧ず鍥惧眰
           }
         }
-      } else if (data.layerType == 'WFS') {
-
+      } else if (data.layerType == "WFS") {
         if (window.Viewer.dataSources._dataSources.length == 0) {
           this.setAddLayers(data);
         } else {
           for (var i in window.Viewer.dataSources._dataSources) {
             if (window.Viewer.dataSources._dataSources[i].name == data.label) {
               window.Viewer.dataSources._dataSources[i].show = checked;
-              std.push(data.label)
+              std.push(data.label);
             }
           }
         }
       }
       if (std.length == 0 && checked == true) {
-        this.setAddLayers(data)
+        this.setAddLayers(data);
       }
       var layers_ol = window.map.getAllLayers();
       for (var i in layers_ol) {
@@ -464,10 +463,10 @@
       }
     },
     setAddLayers(res) {
-      if (res.layerType == 'WMS') {
+      if (res.layerType == "WMS") {
         var url = geoServerURl;
         if (res.url != null && res.url != undefined) {
-          url = res.url
+          url = res.url;
         }
 
         //var width = $("#mapdiv").width();
@@ -484,7 +483,7 @@
             styles: "",
           },
           tileWidth: 512,
-          tileHeight: 512
+          tileHeight: 512,
         });
         layerWMS.name = res.label;
         //閫忔槑搴�
@@ -495,11 +494,11 @@
         var layer2 = new Image({
           name: res.label,
           source: new ImageWMS({
-            crossOrigin: 'anonymous',
+            crossOrigin: "anonymous",
             url: url,
             params: {
-              FORMAT: 'image/png',
-              VERSION: '1.1.1',
+              FORMAT: "image/png",
+              VERSION: "1.1.1",
               LAYERS: res.resource,
             },
           }),
@@ -508,10 +507,12 @@
           layer2.setOpacity(parseInt(res.opacity) / 100);
         }
         window.map.addLayer(layer2);
-
-      } else if (res.layerType == 'WFS') {
-
-        var url = res.url + "?service=WFS&version=1.0.0&request=GetFeature&typeName=" + res.resource + "&outputFormat=application%2Fjson"
+      } else if (res.layerType == "WFS") {
+        var url =
+          res.url +
+          "?service=WFS&version=1.0.0&request=GetFeature&typeName=" +
+          res.resource +
+          "&outputFormat=application%2Fjson";
         $.ajax({
           url: url,
           cache: false,
@@ -522,17 +523,16 @@
               fill: Cesium.Color.YELLOW.withAlpha(0.1),
               alpha: 0.1,
               strokeWidth: 8,
-              clampToGround: true //鏄惁璐村湴
+              clampToGround: true, //鏄惁璐村湴
             });
             datasource.then((data) => {
               data.name = res.label;
               window.Viewer.dataSources.add(data);
-            })
-
+            });
           },
           error: function (data) {
             console.log("error");
-          }
+          },
         });
 
         var vectorLayer = new VectorLayer({
@@ -541,16 +541,14 @@
             url: url,
             format: new GeoJSON(),
           }),
-
         });
         window.map.addLayer(vectorLayer);
       }
     },
-    async layersStart () {
+    async layersStart() {
       const data = await perms_selectLayers();
       if (data.code != 200) {
         return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触");
-
       }
 
       this.newData = data.result;
@@ -566,11 +564,9 @@
             type: data.result[i].type,
             isEdit: false,
             children: [],
-          })
+          });
         } else if (data.result[i].type == 2) {
-
           if (data.result[i].url != null) {
-
             var layer_entity = {
               id: data.result[i].id,
               pid: data.result[i].pid,
@@ -579,15 +575,14 @@
               type: data.result[i].type,
               isEdit: false,
               layer: data.result[i].enName,
-              layerType: data.result[i].serveType
-            }
-            layer_list.push(layer_entity)
+              layerType: data.result[i].serveType,
+            };
+            layer_list.push(layer_entity);
 
             if (data.result[i].isShow == 1) {
               std.push(data.result[i].id);
               this.setAddLayers(layer_entity);
             }
-
           }
         }
       }
@@ -595,19 +590,19 @@
       for (var i in layer_list) {
         for (var j in layer_groups) {
           if (layer_list[i].pid === layer_groups[j].id) {
-            layer_groups[j].children.push(layer_list[i])
+            layer_groups[j].children.push(layer_list[i]);
           }
         }
       }
       layer_groups = layer_groups.filter((res) => {
         if (res.children && res.children.length != 0) {
-          return res
+          return res;
         }
-      })
+      });
       this.treeData = layer_groups;
       this.$refs.tree.setCheckedKeys(std);
     },
-    async treelayersStart () {
+    async treelayersStart() {
       const data = await perms_selectLayers();
       if (data.code != 200) {
         return this.$message.error("鍥惧眰鍒楄〃鏌ヨ澶辫触");
@@ -623,7 +618,7 @@
             type: data.result[i].type,
             isEdit: false,
             children: [],
-          })
+          });
         } else if (data.result[i].type == 2) {
           if (data.result[i].url != null) {
             var layer_entity = {
@@ -633,23 +628,23 @@
               resource: data.result[i].url,
               type: data.result[i].type,
               isEdit: false,
-            }
-            layer_list.push(layer_entity)
+            };
+            layer_list.push(layer_entity);
           }
         }
       }
       for (var i in layer_list) {
         for (var j in layer_groups) {
           if (layer_list[i].pid === layer_groups[j].id) {
-            layer_groups[j].children.push(layer_list[i])
+            layer_groups[j].children.push(layer_list[i]);
           }
         }
       }
       layer_groups = layer_groups.filter((res) => {
         if (res.children && res.children.length != 0) {
-          return res
+          return res;
         }
-      })
+      });
       this.treeData = layer_groups;
 
       for (var i in data.result) {
@@ -657,7 +652,6 @@
           for (var j = 0; j < window.Viewer.imageryLayers._layers.length; j++) {
             var val_id = window.Viewer.imageryLayers._layers[j];
             if (val_id.show == true) {
-
               if (val_id.imageryProvider.name == data.result[i].cnName) {
                 std.push(data.result[i].id);
               }
@@ -666,21 +660,19 @@
         }
       }
       this.$refs.tree.setCheckedKeys(std);
-
-    }
-  },
-  watch: {
-    filterText (val) {
-      this.$refs.tree.filter(val);
-
     },
   },
-  mounted () {
+  watch: {
+    filterText(val) {
+      this.$refs.tree.filter(val);
+    },
+  },
+  mounted() {
     this.$bus.$on("treeDataCopy", (res) => {
       this.$store.state.treeData = this.treeData;
-      this.$store.state.checkedKeys = this.$refs.tree.getCheckedKeys()
+      this.$store.state.checkedKeys = this.$refs.tree.getCheckedKeys();
     });
- 
+
     if (this.$store.state.showAllLayers == true) {
       this.layersStart();
       this.$store.state.showAllLayers = false;
@@ -688,7 +680,6 @@
       this.treeData = this.$store.state.treeData;
       this.$refs.tree.setCheckedKeys(this.$store.state.checkedKeys);
     }
-
   },
 };
 </script>

--
Gitblit v1.9.3