From f5f2445d7f5c102734ef8d86e9c8ec828374adc3 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Mon, 18 Aug 2025 20:05:01 +0800
Subject: [PATCH] 突发事件模拟相关调整处理

---
 src/pages/map/components/scomponents/layersControl.vue | 2145 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 1,074 insertions(+), 1,071 deletions(-)

diff --git a/src/pages/map/components/scomponents/layersControl.vue b/src/pages/map/components/scomponents/layersControl.vue
index 75fb491..4837922 100644
--- a/src/pages/map/components/scomponents/layersControl.vue
+++ b/src/pages/map/components/scomponents/layersControl.vue
@@ -2,51 +2,52 @@
  * @Author: shuishen 1109946754@qq.com
  * @Date: 2024-10-31 10:47:29
  * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2025-02-19 11:42:40
+ * @LastEditTime: 2025-08-18 18:49:54
  * @FilePath: \bigScreen\src\pages\map\components\scomponents\layersControl.vue
  * @Description:
  *
  * Copyright (c) 2024 by shuishen, All Rights Reserved.
 -->
 <template>
-  <public-box v-show="showLayerControl">
-    <template #name>
-      <div class="name"><i class="fa fa-tasks"></i>&nbsp;图层</div>
-    </template>
+    <public-box v-show="showLayerControl">
+        <template #name>
+            <div class="name"><i class="fa fa-tasks"></i>&nbsp;图层</div>
+        </template>
 
-    <template #close>
-      <div class="close cursor-p" @click="emit('close', 'layers')"><i class="fa fa-close"></i></div>
-    </template>
+        <template #close>
+            <div class="close cursor-p" @click="emit('close', 'layers')"><i class="fa fa-close"></i></div>
+        </template>
 
-    <template #content>
-      <div class="tree-content">
-        <el-tree ref="treeRef" :data="data" draggable="" show-checkbox node-key="id" default-expand-all
-          :default-checked-keys="indexPoint" :props="defaultProps" :indent="treeProps['indent']"
-          @check="handleCheckChange">
-          <template v-slot:default="{ node }">
-            <element-tree-line :node="node" :showLabelLine="treeProps['showLabelLine']" :indent="treeProps['indent']">
-              <!-- 自定义label的slot -->
-              <template v-slot:node-label>
-                <span style="font-size: 12px">
-                  {{ node.label }}
-                  <i class="el-icon-eleme"></i></span>
-              </template>
-              <!-- 在右边追加内容的slot -->
-              <!-- <template v-slot:after-node-label>
+        <template #content>
+            <div class="tree-content">
+                <el-tree ref="treeRef" :data="data" draggable="" show-checkbox node-key="id" default-expand-all
+                    :default-checked-keys="indexPoint" :props="defaultProps" :indent="treeProps['indent']"
+                    @check="handleCheckChange">
+                    <template v-slot:default="{ node }">
+                        <element-tree-line :node="node" :showLabelLine="treeProps['showLabelLine']"
+                            :indent="treeProps['indent']">
+                            <!-- 自定义label的slot -->
+                            <template v-slot:node-label>
+                                <span style="font-size: 12px">
+                                    {{ node.label }}
+                                    <i class="el-icon-eleme"></i></span>
+                            </template>
+                            <!-- 在右边追加内容的slot -->
+                            <!-- <template v-slot:after-node-label>
                 <span style="padding-right: 10px">
                   <el-button type="primary" size="mini" @click.stop="openDrawer(node)">新增子节点</el-button>
                   <el-button type="primary" size="mini" @click.stop="openDrawer(node)">修改</el-button>
                   <el-button type="danger" size="mini" @click.stop="openDialog">删除</el-button></span>
               </template> -->
-            </element-tree-line>
-          </template>
-        </el-tree>
-      </div>
-    </template>
-  </public-box>
+                        </element-tree-line>
+                    </template>
+                </el-tree>
+            </div>
+        </template>
+    </public-box>
 
-  <panorama v-show="panoramaShow" :title="panoramaTitle" :url="panoramaUrl" @closePanoramaPopup="closePanoramaPopup">
-  </panorama>
+    <panorama v-show="panoramaShow" :title="panoramaTitle" :url="panoramaUrl" @closePanoramaPopup="closePanoramaPopup">
+    </panorama>
 </template>
 
 <script setup>
@@ -59,11 +60,11 @@
 window.$viewer.addLayer(planToBuild)
 
 const {
-  show: showLayerControl
+    show: showLayerControl
 } = defineProps({
-  show: {
-    default: false
-  }
+    show: {
+        default: false
+    }
 })
 
 const emit = defineEmits(['close'])
@@ -91,7 +92,7 @@
 import { useRouter } from 'vue-router'
 const router = useRouter()
 import {
-  ElMessage
+    ElMessage
 } from 'element-plus'
 
 const { VITE_APP_BASE } = import.meta.env
@@ -101,8 +102,8 @@
 const treeRef = ref(null)
 
 const treeProps = {
-  indent: 16,
-  showLabelLine: true,
+    indent: 16,
+    showLabelLine: true,
 }
 
 // 全景相关
@@ -110,616 +111,618 @@
 const panoramaTitle = ref('')
 const panoramaUrl = ref('')
 const closePanoramaPopup = () => {
-  panoramaShow.value = false
+    panoramaShow.value = false
 }
 
 const baseRcImages = new window.$Cesium.WebMapTileServiceImageryProvider({
-  url: '/arcgis117/rest/services/DTFW/rcgyyyx/MapServer/WMTS',
-  layer: 'DTFW_rcgyyyx',
-  style: 'default',
-  format: 'image/png',
-  tileMatrixSetID: 'default028mm',
-  tilingScheme: new window.$Cesium.GeographicTilingScheme(),
-  tileMatrixLabels: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19']
+    url: '/arcgis117/rest/services/DTFW/rcgyyyx/MapServer/WMTS',
+    layer: 'DTFW_rcgyyyx',
+    style: 'default',
+    format: 'image/png',
+    tileMatrixSetID: 'default028mm',
+    tilingScheme: new window.$Cesium.GeographicTilingScheme(),
+    tileMatrixLabels: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19']
 })
 
 const data = [
-  {
-    id: '1',
-    label: '园区倾斜摄影',
-    type: 'layer',
-    subType: '3Dtile',
-    urlData: [
-      {
-        url: '/3Dtile/rcmx_t/part1/tileset.json',
-        label: 'part1'
-      },
-      {
-        url: '/3Dtile/rcmx_t/part2/tileset.json',
-        label: 'part2'
-      },
+    {
+        id: '1',
+        label: '园区倾斜摄影',
+        type: 'layer',
+        subType: '3Dtile',
+        urlData: [
+            {
+                url: '/3Dtile/rcmx_t/part1/tileset.json',
+                label: 'part1'
+            },
+            {
+                url: '/3Dtile/rcmx_t/part2/tileset.json',
+                label: 'part2'
+            },
 
-    ],
-    layerName: 'hgyq'
-  },
-
-  {
-    id: '2',
-    label: '企业分布',
-    type: 'layer',
-    subType: 'labelPoint',
-    method: getPage,
-    params: {
-      size: 1000
+        ],
+        layerName: 'hgyq'
     },
-    backgroundIcon: VITE_APP_BASE + 'img/mapicon/qy.png',
-    className: 'qyfb-box',
-    showPanel: false,
-    layerName: 'qyfb'
-  },
 
-  {
-    id: '3',
-    label: '应急空间',
-    children: [
-      {
-        parentId: '3',
-        id: '3-1',
-        label: '雨水池',
+    {
+        id: '2',
+        label: '企业分布',
         type: 'layer',
         subType: 'labelPoint',
-        method: getList,
+        method: getPage,
         params: {
-          type: 1,
-          size: 1000,
+            size: 1000
         },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/yjc.png',
-        className: 'yjc-box',
+        backgroundIcon: VITE_APP_BASE + 'img/mapicon/qy.png',
+        className: 'qyfb-box',
         showPanel: false,
-        layerName: 'cq-yssjc',
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          if (!attrParams.firmName) {
-            return
-          }
-          addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
-          window.$viewer.addLayer(addPopLayers[attrParams.id])
-          let iconEl = `<div class="marsBlueGradientPnl">
+        layerName: 'qyfb'
+    },
+
+    {
+        id: '3',
+        label: '应急空间',
+        children: [
+            {
+                parentId: '3',
+                id: '3-1',
+                label: '雨水池',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 1,
+                    size: 1000,
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/yjc.png',
+                className: 'yjc-box',
+                showPanel: false,
+                layerName: 'cq-yssjc',
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    if (!attrParams.firmName) {
+                        return
+                    }
+                    addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
+                    window.$viewer.addLayer(addPopLayers[attrParams.id])
+                    let iconEl = `<div class="marsBlueGradientPnl">
             <div>企业名称:${attrParams.firmName}</div>
             <div>作用:${attrParams.mainFuncName}</div>
             <div>容量:${attrParams.capacity}(m³)</div>
                 </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-two">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-two">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.id].addOverlay(divIcon)
-        }
-      },
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.id].addOverlay(divIcon)
+                }
+            },
 
-      {
-        parentId: '3',
-        id: '3-2',
-        label: '应急池',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 2,
-          size: 1000,
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/yjc.png',
-        className: 'yjc-box',
-        showPanel: false,
-        layerName: 'sg-yjc',
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          if (!attrParams.firmName) {
-            return
-          }
-          addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
-          window.$viewer.addLayer(addPopLayers[attrParams.id])
-          let iconEl = `<div class="marsBlueGradientPnl">
+            {
+                parentId: '3',
+                id: '3-2',
+                label: '应急池',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 2,
+                    size: 1000,
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/yjc.png',
+                className: 'yjc-box',
+                showPanel: false,
+                layerName: 'sg-yjc',
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    if (!attrParams.firmName) {
+                        return
+                    }
+                    addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
+                    window.$viewer.addLayer(addPopLayers[attrParams.id])
+                    let iconEl = `<div class="marsBlueGradientPnl">
             <div>企业名称:${attrParams.firmName}</div>
             <div>作用:${attrParams.mainFuncName}</div>
             <div>容量:${attrParams.capacity}(m³)</div>
                 </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-two">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-two">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.id].addOverlay(divIcon)
-        }
-      },
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.id].addOverlay(divIcon)
+                }
+            },
 
-      {
-        parentId: '3',
-        id: '3-3',
-        label: '切断阀',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 3,
-          size: 1000
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/ysf.png',
-        className: 'ysf-box',
-        showPanel: false,
-        layerName: 'qdf',
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          if (!attrParams.firmName) {
-            return
-          }
-          addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
-          window.$viewer.addLayer(addPopLayers[attrParams.id])
-          let iconEl = `<div class="marsBlueGradientPnl">
+            {
+                parentId: '3',
+                id: '3-3',
+                label: '切断阀',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                customWx: true,
+                params: {
+                    type: 3,
+                    size: 1000
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/ysf.png',
+                className: 'ysf-box',
+                showPanel: false,
+                layerName: 'qdf',
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    if (!attrParams.firmName) {
+                        return
+                    }
+                    addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
+                    window.$viewer.addLayer(addPopLayers[attrParams.id])
+                    let iconEl = `<div class="marsBlueGradientPnl">
             <div>企业名称:${attrParams.firmName}</div>
             <div>作用:${attrParams.mainFuncName}</div>
             <div>容量:${attrParams.capacity}(m³)</div>
                 </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-two">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-two">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.id].addOverlay(divIcon)
-        }
-      },
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.id].addOverlay(divIcon)
+                }
+            },
 
-      {
-        id: '3-4',
-        label: '闸坝',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 4,
-          size: 1000
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/zb.png',
-        className: 'sk-box',
-        showPanel: false,
-        layerName: 'zb'
-      },
+            {
+                id: '3-4',
+                label: '闸坝',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 4,
+                    size: 1000
+                },
+                customWx: true,
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/zb.png',
+                className: 'sk-box',
+                showPanel: false,
+                layerName: 'zb'
+            },
 
-      {
-        parentId: '3',
-        id: '3-5',
-        label: '湿地',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 5,
-          size: 1000
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/sd.png',
-        className: 'xfs-box',
-        showPanel: false,
-        layerName: 'sd',
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          if (!attrParams.firmName) {
-            return
-          }
-          addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
-          window.$viewer.addLayer(addPopLayers[attrParams.id])
-          let iconEl = `<div class="marsBlueGradientPnl">
+            {
+                parentId: '3',
+                id: '3-5',
+                label: '湿地',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 5,
+                    size: 1000
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/sd.png',
+                className: 'xfs-box',
+                showPanel: false,
+                layerName: 'sd',
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    if (!attrParams.firmName) {
+                        return
+                    }
+                    addPopLayers[attrParams.id] = new DC.HtmlLayer(attrParams.id)
+                    window.$viewer.addLayer(addPopLayers[attrParams.id])
+                    let iconEl = `<div class="marsBlueGradientPnl">
       <div>企业名称:${attrParams.firmName}</div>
       <div>作用:${attrParams.mainFuncName}</div>
       <div>容量:${attrParams.capacity}(m³)</div>
           </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-two">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-two">
               ${iconEl}
             </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.id].addOverlay(divIcon)
-        }
-      },
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.id].addOverlay(divIcon)
+                }
+            },
 
-      {
-        parentId: '3',
-        id: '3-6',
-        label: '坑塘',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 6,
-          size: 1000
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/kt.png',
-        className: 'sk-box',
-        showPanel: false,
-        layerName: 'kt',
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          if (!attrParams.firmName) {
-            return
-          }
-          addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
-          window.$viewer.addLayer(addPopLayers[attrParams.name])
-          let iconEl = `<div class="marsBlueGradientPnl">
+            {
+                parentId: '3',
+                id: '3-6',
+                label: '坑塘',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 6,
+                    size: 1000
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/kt.png',
+                className: 'sk-box',
+                showPanel: false,
+                layerName: 'kt',
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    if (!attrParams.firmName) {
+                        return
+                    }
+                    addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
+                    window.$viewer.addLayer(addPopLayers[attrParams.name])
+                    let iconEl = `<div class="marsBlueGradientPnl">
             <div>企业名称:${attrParams.firmName}</div>
             <div>作用:${attrParams.mainFuncName}</div>
             <div>容量:${attrParams.capacity}(m³)</div>
                 </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-two">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-two">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.name].addOverlay(divIcon)
-        }
-      },
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.name].addOverlay(divIcon)
+                }
+            },
 
-      {
-        parentId: '3',
-        id: '3-8',
-        label: '桥梁',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getList,
-        params: {
-          type: 8,
-          size: 1000
-        },
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/ql.png',
-        className: 'xfs-box',
-        showPanel: false,
-        layerName: 'ql'
-      },
+            {
+                parentId: '3',
+                id: '3-8',
+                label: '桥梁',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getList,
+                params: {
+                    type: 8,
+                    size: 1000
+                },
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/ql.png',
+                className: 'xfs-box',
+                showPanel: false,
+                layerName: 'ql'
+            },
 
-      {
-        parentId: '3',
-        id: '3-9',
-        label: '雨水管网',
-        type: 'layer',
-        subType: 'geojsonPipe',
-        layerName: 'ysgw',
-        source: ysgw,
-        color: DC.Color.CYAN.withAlpha(0.9),
-        height: 30,
-      },
-      {
-        parentId: '3',
-        id: '3-10',
-        label: '排洪渠',
-        type: 'layer',
-        subType: 'geojsonPolygon',
-        layerName: 'track',
-        source: track,
-        color: DC.Color.BLUE.withAlpha(0.9),
-        height: 30,
-      },
-      {
-        parentId: '3',
-        id: '3-11',
-        label: '企业级连接管网',
-        type: 'layer',
-        subType: 'geojsonPipe',
-        layerName: 'qyjgx',
-        source: qyjgx,
-        color: DC.Color.CYAN.withAlpha(0.9),
-        height: 30,
-      },
-    ]
-  },
+            {
+                parentId: '3',
+                id: '3-9',
+                label: '雨水管网',
+                type: 'layer',
+                subType: 'geojsonPipe',
+                layerName: 'ysgw',
+                source: ysgw,
+                color: DC.Color.CYAN.withAlpha(0.9),
+                height: 30,
+            },
+            {
+                parentId: '3',
+                id: '3-10',
+                label: '排洪渠',
+                type: 'layer',
+                subType: 'geojsonPolygon',
+                layerName: 'track',
+                source: track,
+                color: DC.Color.BLUE.withAlpha(0.9),
+                height: 30,
+            },
+            {
+                parentId: '3',
+                id: '3-11',
+                label: '企业级连接管网',
+                type: 'layer',
+                subType: 'geojsonPipe',
+                layerName: 'qyjgx',
+                source: qyjgx,
+                color: DC.Color.CYAN.withAlpha(0.9),
+                height: 30,
+            },
+        ]
+    },
 
-  {
-    id: '4',
-    label: '风险源',
-    children: [
-      {
-        parentId: '4',
-        id: '4-1',
-        label: '一般',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getRiskList,
-        params: {
-          riskLevel: 1,
-          size: 1000
-        },
-        showParams: 'firmName',
-        className: 'fxy-ordinary',
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-yb.png',
-        showPanel: false,
-        layerName: 'fxyOrdinary',
-        customWx: true,
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
-          window.$viewer.addLayer(addPopLayers[attrParams.name])
-          let iconEl = `<div class="marsBlueGradientPnl">
+    {
+        id: '4',
+        label: '风险源',
+        children: [
+            {
+                parentId: '4',
+                id: '4-1',
+                label: '一般',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getRiskList,
+                params: {
+                    riskLevel: 1,
+                    size: 1000
+                },
+                showParams: 'firmName',
+                className: 'fxy-ordinary',
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-yb.png',
+                showPanel: false,
+                layerName: 'fxyOrdinary',
+                customWx: false,
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
+                    window.$viewer.addLayer(addPopLayers[attrParams.name])
+                    let iconEl = `<div class="marsBlueGradientPnl">
             <li>企业名称:${attrParams.firmName || ''}</li>
             <li>行业类别:${attrParams.category || ''}</li>
             <li>风险等级:${attrParams.riskLevelName || ''}</li>
             <li>风险物资:${attrParams.name || ''}</li>
             </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-three">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-three">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.name].addOverlay(divIcon)
-        }
-      },
-      {
-        parentId: '4',
-        id: '4-2',
-        label: '较大',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getRiskList,
-        params: {
-          riskLevel: 2,
-          size: 1000
-        },
-        showParams: 'firmName',
-        className: 'fxy-larger-b',
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-zd-b.png',
-        showPanel: false,
-        layerName: 'fxyLarger',
-        customWx: true,
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
-          window.$viewer.addLayer(addPopLayers[attrParams.name])
-          let iconEl = `<div class="marsBlueGradientPnl"> 
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.name].addOverlay(divIcon)
+                }
+            },
+            {
+                parentId: '4',
+                id: '4-2',
+                label: '较大',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getRiskList,
+                params: {
+                    riskLevel: 2,
+                    size: 1000
+                },
+                showParams: 'firmName',
+                className: 'fxy-larger-b',
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-zd-b.png',
+                showPanel: false,
+                layerName: 'fxyLarger',
+                customWx: false,
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
+                    window.$viewer.addLayer(addPopLayers[attrParams.name])
+                    let iconEl = `<div class="marsBlueGradientPnl"> 
             <li>企业名称:${attrParams.firmName || ''}</li>
             <li>行业类别:${attrParams.category || ''}</li>
             <li>风险等级:${attrParams.riskLevelName || ''}</li>
             <li>风险物资:${attrParams.name || ''}</li>
             </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-three">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-three">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.name].addOverlay(divIcon)
-        }
-      },
-      {
-        parentId: '4',
-        id: '4-3',
-        label: '重大',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getRiskList,
-        params: {
-          riskLevel: 3,
-          size: 1000
-        },
-        showParams: 'firmName',
-        className: 'fxy-larger',
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-jd.png',
-        showPanel: false,
-        layerName: 'fxyLargerB',
-        customWx: true,
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
-          window.$viewer.addLayer(addPopLayers[attrParams.name])
-          let iconEl = `<div class="marsBlueGradientPnl"> 
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.name].addOverlay(divIcon)
+                }
+            },
+            {
+                parentId: '4',
+                id: '4-3',
+                label: '重大',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getRiskList,
+                params: {
+                    riskLevel: 3,
+                    size: 1000
+                },
+                showParams: 'firmName',
+                className: 'fxy-larger',
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-jd.png',
+                showPanel: false,
+                layerName: 'fxyLargerB',
+                customWx: false,
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
+                    window.$viewer.addLayer(addPopLayers[attrParams.name])
+                    let iconEl = `<div class="marsBlueGradientPnl"> 
             <li>企业名称:${attrParams.firmName || ''}</li>
             <li>行业类别:${attrParams.category || ''}</li>
             <li>风险等级:${attrParams.riskLevelName || ''}</li>
             <li>风险物资:${attrParams.name || ''}</li>
             </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-three">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-three">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.name].addOverlay(divIcon)
-        }
-      },
-      {
-        parentId: '4',
-        id: '4-9',
-        label: '其他',
-        type: 'layer',
-        subType: 'labelPoint',
-        method: getRiskList,
-        params: {
-          riskLevel: 9,
-          size: 1000
-        },
-        showParams: 'firmName',
-        className: 'fxy-zd',
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-zd.png',
-        showPanel: false,
-        layerName: 'fxyZdLarger',
-        customWx: true,
-        incident: (e) => {
-          const { attrParams } = e.overlay
-          // 删除
-          destroyPop()
-          addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
-          window.$viewer.addLayer(addPopLayers[attrParams.name])
-          let iconEl = `<div class="marsBlueGradientPnl"> 
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.name].addOverlay(divIcon)
+                }
+            },
+            {
+                parentId: '4',
+                id: '4-9',
+                label: '其他',
+                type: 'layer',
+                subType: 'labelPoint',
+                method: getRiskList,
+                params: {
+                    riskLevel: 9,
+                    size: 1000
+                },
+                showParams: 'firmName',
+                className: 'fxy-zd',
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-zd.png',
+                showPanel: false,
+                layerName: 'fxyZdLarger',
+                customWx: false,
+                incident: (e) => {
+                    const { attrParams } = e.overlay
+                    // 删除
+                    destroyPop()
+                    addPopLayers[attrParams.name] = new DC.HtmlLayer(attrParams.name)
+                    window.$viewer.addLayer(addPopLayers[attrParams.name])
+                    let iconEl = `<div class="marsBlueGradientPnl"> 
             <li>${attrParams.firmName || ''}</li>
             <li>${attrParams.name || ''}</li>
             <li>${attrParams.riskLevelName || ''}</li>
             </div>`
-          let divIcon = new DC.DivIcon(
-            new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
-            `<div class="public-map-popup-three">
+                    let divIcon = new DC.DivIcon(
+                        new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
+                        `<div class="public-map-popup-three">
                     ${iconEl}
                   </div>`
-          )
-          let incident = () => {
-            destroyPop()
-          }
-          divIcon.on(DC.MouseEventType.CLICK, incident)
-          addPopLayers[attrParams.name].addOverlay(divIcon)
-        }
-      },
-      {
-        parentId: '4',
-        id: '4-5',
-        label: '路线',
+                    )
+                    let incident = () => {
+                        destroyPop()
+                    }
+                    divIcon.on(DC.MouseEventType.CLICK, incident)
+                    addPopLayers[attrParams.name].addOverlay(divIcon)
+                }
+            },
+            {
+                parentId: '4',
+                id: '4-5',
+                label: '路线',
+                type: 'layer',
+                subType: 'geojsonLx',
+                layerName: 'lx',
+                source: lx,
+                color: DC.Color.CYAN.withAlpha(0.9),
+                height: 30,
+            },
+            {
+                parentId: '4',
+                id: '4-6',
+                label: '岗亭',
+                type: 'layer',
+                subType: 'geojsonGt',
+                layerName: 'gt',
+                showPanel: false,
+                className: 'gt-zd',
+                source: gt,
+                color: DC.Color.CYAN.withAlpha(0.9),
+                backgroundIcon: VITE_APP_BASE + 'img/mapicon/gt.png',
+                height: 30,
+            },
+        ]
+    },
+
+    {
+        id: '5',
+        label: '园区范围',
         type: 'layer',
-        subType: 'geojsonLx',
-        layerName: 'lx',
-        source: lx,
-        color: DC.Color.CYAN.withAlpha(0.9),
-        height: 30,
-      },
-      {
-        parentId: '4',
-        id: '4-6',
-        label: '岗亭',
+        subType: 'geojsonWall',
+        layerName: 'yqfw',
+        source: yqfw
+    },
+
+    {
+        id: '7',
+        label: '空中全景分布',
         type: 'layer',
-        subType: 'geojsonGt',
-        layerName: 'gt',
+        subType: 'labelPoint',
+        method: getPanoramaList,
+        params: {
+            size: 1000,
+            remark: '1'
+        },
+        backgroundIcon: VITE_APP_BASE + 'img/mapicon/qj.png',
         showPanel: false,
-        className: 'gt-zd',
-        source: gt,
-        color: DC.Color.CYAN.withAlpha(0.9),
-        backgroundIcon: VITE_APP_BASE + 'img/mapicon/gt.png',
-        height: 30,
+        layerName: 'kzqjdwfb',
+        incident: (e) => {
+            const { attrParams } = e.overlay
+            panoramaTitle.value = attrParams.name
+            if (
+                attrParams.url.indexOf("http://vr.jxpskj.com:180") != -1
+            ) {
+                attrParams.url = attrParams.url.replace(
+                    "http://vr.jxpskj.com:180",
+                    "/panorama"
+                )
+            }
+            panoramaUrl.value = attrParams.url
+            panoramaShow.value = true
+        }
+    },
+
+    {
+        id: '8',
+        label: '瑞昌影像',
+        type: 'layer',
+        subType: 'baseMap',
+        layerName: 'baseMap',
+        source: baseRcImages,
+    },
+
+    /* {
+      id: '8',
+      label: '地面全景分布',
+      type: 'layer',
+      subType: 'labelPoint',
+      method: getPanoramaList,
+      params: {
+        size: 1000,
+        remark: '2'
       },
-    ]
-  },
-
-  {
-    id: '5',
-    label: '园区范围',
-    type: 'layer',
-    subType: 'geojsonWall',
-    layerName: 'yqfw',
-    source: yqfw
-  },
-
-  {
-    id: '7',
-    label: '空中全景分布',
-    type: 'layer',
-    subType: 'labelPoint',
-    method: getPanoramaList,
-    params: {
-      size: 1000,
-      remark: '1'
-    },
-    backgroundIcon: VITE_APP_BASE + 'img/mapicon/qj.png',
-    showPanel: false,
-    layerName: 'kzqjdwfb',
-    incident: (e) => {
-      const { attrParams } = e.overlay
-      panoramaTitle.value = attrParams.name
-      if (
-        attrParams.url.indexOf("http://vr.jxpskj.com:180") != -1
-      ) {
-        attrParams.url = attrParams.url.replace(
-          "http://vr.jxpskj.com:180",
-          "/panorama"
-        )
+      backgroundIcon: VITE_APP_BASE + 'img/mapicon/qj.png',
+      showPanel: false,
+      layerName: 'dtqjdwfb',
+      incident: (e) => {
+        const { attrParams } = e.overlay
+        panoramaTitle.value = attrParams.name
+        if (
+          attrParams.url.indexOf("http://vr.jxpskj.com:180") != -1
+        ) {
+          attrParams.url = attrParams.url.replace(
+            "http://vr.jxpskj.com:180",
+            "/panorama"
+          )
+        }
+        panoramaUrl.value = attrParams.url
+        panoramaShow.value = true
       }
-      panoramaUrl.value = attrParams.url
-      panoramaShow.value = true
-    }
-  },
-
-  {
-    id: '8',
-    label: '瑞昌影像',
-    type: 'layer',
-    subType: 'baseMap',
-    layerName: 'baseMap',
-    source: baseRcImages,
-  },
-
-  /* {
-    id: '8',
-    label: '地面全景分布',
-    type: 'layer',
-    subType: 'labelPoint',
-    method: getPanoramaList,
-    params: {
-      size: 1000,
-      remark: '2'
-    },
-    backgroundIcon: VITE_APP_BASE + 'img/mapicon/qj.png',
-    showPanel: false,
-    layerName: 'dtqjdwfb',
-    incident: (e) => {
-      const { attrParams } = e.overlay
-      panoramaTitle.value = attrParams.name
-      if (
-        attrParams.url.indexOf("http://vr.jxpskj.com:180") != -1
-      ) {
-        attrParams.url = attrParams.url.replace(
-          "http://vr.jxpskj.com:180",
-          "/panorama"
-        )
-      }
-      panoramaUrl.value = attrParams.url
-      panoramaShow.value = true
-    }
-  }, */
+    }, */
 ]
 
 // let modellayer = new DC.VectorLayer("modellayer").addTo(window.$viewer)
@@ -731,492 +734,492 @@
 // window.$viewer.flyToPosition("121.46748793889597,31.22345700031846,300,0,-90")
 
 const defaultProps = {
-  children: 'children',
-  label: 'label',
+    children: 'children',
+    label: 'label',
 }
 
 const checkType = (value) => {
-  if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
-    return 'obj'
-  } else if (Array.isArray(value)) {
-    return 'arr'
-  }
+    if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
+        return 'obj'
+    } else if (Array.isArray(value)) {
+        return 'arr'
+    }
 }
 // 用于存储收集到的节点的数组
 const collectedNodes = reactive([])
 
 // 递归函数,收集所有 flag 为 true 的子节点
 const collectNodesWithFlag = (nodes) => {
-  if (checkType(nodes) == 'obj') {
-    if (nodes.type == 'layer') {
-      collectedNodes.value.push(nodes)
-    }
-    if (nodes.children && nodes.children.length > 0) {
-      collectNodesWithFlag(nodes.children)
-      return
-    }
-  }
-
-  if (checkType(nodes) == 'arr') {
-    nodes.forEach(item => {
-      if (item) {
-        if (item.type == 'layer') {
-          collectedNodes.value.push(item)
+    if (checkType(nodes) == 'obj') {
+        if (nodes.type == 'layer') {
+            collectedNodes.value.push(nodes)
         }
-
-        if (item.children && item.children.length > 0) {
-          collectNodesWithFlag(item.children)
+        if (nodes.children && nodes.children.length > 0) {
+            collectNodesWithFlag(nodes.children)
+            return
         }
-      }
-    })
-  }
+    }
+
+    if (checkType(nodes) == 'arr') {
+        nodes.forEach(item => {
+            if (item) {
+                if (item.type == 'layer') {
+                    collectedNodes.value.push(item)
+                }
+
+                if (item.children && item.children.length > 0) {
+                    collectNodesWithFlag(item.children)
+                }
+            }
+        })
+    }
 }
 
 let moveEntity = null
 
 const handleCheckChange = (data) => {
 
-  let options = treeRef.value?.getCheckedNodes()
-  collectedNodes.value = []
-  collectNodesWithFlag(data)
+    let options = treeRef.value?.getCheckedNodes()
+    collectedNodes.value = []
+    collectNodesWithFlag(data)
 
-  collectedNodes.value.forEach(item => {
-    // console.log(item, 1111111111111111112)
-    if (options?.some(i => i.id == item.id)) {
+    collectedNodes.value.forEach(item => {
+        // console.log(item, 1111111111111111112)
+        if (options?.some(i => i.id == item.id)) {
 
-      //  const window.$Cesium  = DC
-      if (item.subType == '3Dtile') {
-        if (!addTileLayers[item.layerName]) {
-          // addTileLayers[item.layerName] = []
-          // let tile = window.$viewer.delegate.scene.primitives.add(new window.$Cesium.Cesium3DTileset({
-          //   url: '/zhyq-lc/mx/tile_01/tileset.json',
-          // }))
+            //  const window.$Cesium  = DC
+            if (item.subType == '3Dtile') {
+                if (!addTileLayers[item.layerName]) {
+                    // addTileLayers[item.layerName] = []
+                    // let tile = window.$viewer.delegate.scene.primitives.add(new window.$Cesium.Cesium3DTileset({
+                    //   url: '/zhyq-lc/mx/tile_01/tileset.json',
+                    // }))
 
-          //   url: '/zhyq-lc/mx/tile_01/tileset.json',
-          // }), 121323)
-          // item.urlData.forEach(i => {
+                    //   url: '/zhyq-lc/mx/tile_01/tileset.json',
+                    // }), 121323)
+                    // item.urlData.forEach(i => {
 
-          // })
-          addTileLayers[item.layerName] = []
-          item.urlData.forEach((m, ind) => {
-            addTileLayers[item.layerName][ind] = new DC.Tileset(m.url, {
-              // maximumMemoryUsage: 1024,
-              // maximumScreenSpaceError: 8,
-              // skipLevels: 5,
-              // skipLevelOfDetail: true,
-              // skipScreenSpaceErrorFactor: 128,
-              // progressiveResolutionHeightFraction: 0.5,
-              // baseScreenSpaceError: 1024
+                    // })
+                    addTileLayers[item.layerName] = []
+                    item.urlData.forEach((m, ind) => {
+                        addTileLayers[item.layerName][ind] = new DC.Tileset(m.url, {
+                            // maximumMemoryUsage: 1024,
+                            // maximumScreenSpaceError: 8,
+                            // skipLevels: 5,
+                            // skipLevelOfDetail: true,
+                            // skipScreenSpaceErrorFactor: 128,
+                            // progressiveResolutionHeightFraction: 0.5,
+                            // baseScreenSpaceError: 1024
 
-              skipLevelOfDetail: true,
-              baseScreenSpaceError: 1024,
-              maximumScreenSpaceError: 16, // 数值加大,能让最终成像变模糊
-              skipScreenSpaceErrorFactor: 128,
-              skipLevels: 5,
-              immediatelyLoadDesiredLevelOfDetail: false,
-              loadSiblings: true, // 如果为true则不会在已加载完概况房屋后,自动从中心开始超清化房屋
-              cullWithChildrenBounds: true,
-              cullRequestsWhileMoving: true,
-              cullRequestsWhileMovingMultiplier: 10, // 值越小能够更快的剔除
-              preloadWhenHidden: true,
-              preferLeaves: true,
-              maximumMemoryUsage: 1024, // 内存分配变小有利于倾斜摄影数据回收,提升性能体验
-              progressiveResolutionHeightFraction: 0.3, // 数值偏于0能够让初始加载变得模糊
-              dynamicScreenSpaceErrorDensity: 0.5, // 数值加大,能让周边加载变快
-              dynamicScreenSpaceErrorFactor: 1, // 不知道起了什么作用没,反正放着吧先
-              dynamicScreenSpaceError: true, // 根据测试,有了这个后,会在真正的全屏加载完之后才清晰化房屋
-            })
-            // tile.setHeight(-420)
-            tileLayers.addOverlay(addTileLayers[item.layerName][ind])
-          })
-        } else {
-          addTileLayers[item.layerName].forEach(m => m.show = true)
-        }
-      } else if (item.subType == 'labelPoint') {
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.HtmlLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                            skipLevelOfDetail: true,
+                            baseScreenSpaceError: 1024,
+                            maximumScreenSpaceError: 16, // 数值加大,能让最终成像变模糊
+                            skipScreenSpaceErrorFactor: 128,
+                            skipLevels: 5,
+                            immediatelyLoadDesiredLevelOfDetail: false,
+                            loadSiblings: true, // 如果为true则不会在已加载完概况房屋后,自动从中心开始超清化房屋
+                            cullWithChildrenBounds: true,
+                            cullRequestsWhileMoving: true,
+                            cullRequestsWhileMovingMultiplier: 10, // 值越小能够更快的剔除
+                            preloadWhenHidden: true,
+                            preferLeaves: true,
+                            maximumMemoryUsage: 1024, // 内存分配变小有利于倾斜摄影数据回收,提升性能体验
+                            progressiveResolutionHeightFraction: 0.3, // 数值偏于0能够让初始加载变得模糊
+                            dynamicScreenSpaceErrorDensity: 0.5, // 数值加大,能让周边加载变快
+                            dynamicScreenSpaceErrorFactor: 1, // 不知道起了什么作用没,反正放着吧先
+                            dynamicScreenSpaceError: true, // 根据测试,有了这个后,会在真正的全屏加载完之后才清晰化房屋
+                        })
+                        // tile.setHeight(-420)
+                        tileLayers.addOverlay(addTileLayers[item.layerName][ind])
+                    })
+                } else {
+                    addTileLayers[item.layerName].forEach(m => m.show = true)
+                }
+            } else if (item.subType == 'labelPoint') {
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.HtmlLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-          item.method(item.params).then(res => {
-            let data = res.data.data.records
+                    item.method(item.params).then(res => {
+                        let data = res.data.data.records
 
-            data.filter(i => i.lng && i.lng != '' && i.lat && i.lat != '').forEach(i => {
-              let iconEl = ''
+                        data.filter(i => i.lng && i.lng != '' && i.lat && i.lat != '').forEach(i => {
+                            let iconEl = ''
 
-              if ('showPanel' in item && item.showPanel == false) {
-                if (item.backgroundIcon) {
-                  iconEl = `
+                            if ('showPanel' in item && item.showPanel == false) {
+                                if (item.backgroundIcon) {
+                                    iconEl = `
                   <div class="map-name">${i[item.showParams] || i.name}</div>
                   <div class="map-icon">
                     <img src="${item.backgroundIcon}">
                   </div>
                   `
-                }
-              } else {
-                iconEl = `<div class="marsBlueGradientPnl">
+                                }
+                            } else {
+                                iconEl = `<div class="marsBlueGradientPnl">
                   <div>${i[item.showParams] || i.name}</div>
                 </div>`
-              }
+                            }
 
-              let divIcon = new DC.DivIcon(
-                new DC.Position(i.lng, i.lat, i.ele || 64),
-                `<div class="public-map-popup ${item.className || ''}">
+                            let divIcon = new DC.DivIcon(
+                                new DC.Position(i.lng, i.lat, i.ele || 64),
+                                `<div class="public-map-popup ${item.className || ''}">
                     ${iconEl}
                   </div>`
-              )
+                            )
 
-              divIcon.attrParams = i
+                            divIcon.attrParams = i
 
-              let incident = () => {
-              }
+                            let incident = () => {
+                            }
 
-              if (item.incident) incident = item.incident
+                            if (item.incident) incident = item.incident
 
-              divIcon.on(DC.MouseEventType.CLICK, (e) => {
-                if (mapStore.editPoint) {
-                  moveEntity = e
-                  return
+                            divIcon.on(DC.MouseEventType.CLICK, (e) => {
+                                if (mapStore.editPoint) {
+                                    moveEntity = e
+                                    return
+                                }
+
+                                if (mapStore.startCustomWx && item.customWx) {
+                                    EventBus.emit('wxEntityClick', e)
+                                    return
+                                }
+
+                                incident(e)
+                            })
+
+                            addTileLayers[item.layerName].addOverlay(divIcon)
+                        })
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
                 }
+            } else if (item.subType == 'geojsonWall') {
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-                if (mapStore.startCustomWx && item.customWx) {
-                  EventBus.emit('wxEntityClick', e)
-                  return
+                    item.source.features.forEach(i => {
+                        let wall = new DC.Wall(
+                            i.geometry.coordinates[0].map(d => [...d, 125].join(',')).join(';')
+                        )
+
+                        wall.setStyle({
+                            material: new DC.WallTrailMaterialProperty({
+                                color: window.$Cesium.Color.fromBytes(0, 123, 255, 180),
+                                speed: 8
+                            })
+                        })
+                        addTileLayers[item.layerName].addOverlay(wall)
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
                 }
+            } else if (item.subType == 'geojsonPipe') {
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-                incident(e)
-              })
+                    function computeCircle (radius) {
+                        var positions = []
+                        for (var i = 0; i < 360; i++) {
+                            var radians = DC.Math.toRadians(i)
+                            positions.push({
+                                x: radius * Math.cos(radians),
+                                y: radius * Math.sin(radians),
+                            })
+                        }
+                        return positions
+                    }
 
-              addTileLayers[item.layerName].addOverlay(divIcon)
-            })
-          })
-        } else {
-          addTileLayers[item.layerName].show = true
-        }
-      } else if (item.subType == 'geojsonWall') {
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                    item.source.features.forEach(i => {
+                        let polylineVolume = new DC.PolylineVolume(
+                            i.geometry.coordinates.map(d => [d[0], d[1], item.height].join(',')).join(';'),
+                            computeCircle(1.6)
+                        )
+                        if ('RefName' in i.properties && i.properties.RefName.indexOf('拟建') != -1) {
+                            polylineVolume.setStyle({
+                                material: DC.Color.fromBytes(255, 0, 0, 230)
+                            })
 
-          item.source.features.forEach(i => {
-            let wall = new DC.Wall(
-              i.geometry.coordinates[0].map(d => [...d, 125].join(',')).join(';')
-            )
+                            let features = window.$turf.featureCollection(
+                                i.geometry.coordinates.map(d => window.$turf.point([d[0], d[1]]))
+                            )
 
-            wall.setStyle({
-              material: new DC.WallTrailMaterialProperty({
-                color: window.$Cesium.Color.fromBytes(0, 123, 255, 180),
-                speed: 8
-              })
-            })
-            addTileLayers[item.layerName].addOverlay(wall)
-          })
-        } else {
-          addTileLayers[item.layerName].show = true
-        }
-      } else if (item.subType == 'geojsonPipe') {
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                            let planCenter = window.$turf.center(features)
 
-          function computeCircle (radius) {
-            var positions = []
-            for (var i = 0; i < 360; i++) {
-              var radians = DC.Math.toRadians(i)
-              positions.push({
-                x: radius * Math.cos(radians),
-                y: radius * Math.sin(radians),
-              })
-            }
-            return positions
-          }
-
-          item.source.features.forEach(i => {
-            let polylineVolume = new DC.PolylineVolume(
-              i.geometry.coordinates.map(d => [d[0], d[1], item.height].join(',')).join(';'),
-              computeCircle(1.6)
-            )
-            if ('RefName' in i.properties && i.properties.RefName.indexOf('拟建') != -1) {
-              polylineVolume.setStyle({
-                material: DC.Color.fromBytes(255, 0, 0, 230)
-              })
-
-              let features = window.$turf.featureCollection(
-                i.geometry.coordinates.map(d => window.$turf.point([d[0], d[1]]))
-              )
-
-              let planCenter = window.$turf.center(features)
-
-              let planDivIcon = new DC.DivIcon(
-                new DC.Position(planCenter.geometry.coordinates[0], planCenter.geometry.coordinates[1], 60.5),
-                `<div class="public-map-popup">
+                            let planDivIcon = new DC.DivIcon(
+                                new DC.Position(planCenter.geometry.coordinates[0], planCenter.geometry.coordinates[1], 60.5),
+                                `<div class="public-map-popup">
                      <div class="map-name">拟建</div>
                   <div class="map-icon">
                     <img src="${VITE_APP_BASE + 'img/mapicon/nj-ys.png'}">
                   </div>
                   </div>`
-              )
+                            )
 
-              planToBuild.addOverlay(planDivIcon)
-            } else {
-              polylineVolume.setStyle({
-                material: item.color
-              })
-            }
-            // 雨水管网流向
-            if (item.layerName === 'ysgw') {
-              let ss = i.properties.qd + ',' + item.height + ';' + i.properties.zd + ',' + item.height
-              let polyline1 = new DC.Polyline(ss)
-              polyline1.setStyle({
-                width: 10,
-                arcType: 1,
-                material: new DC.PolylineImageTrailMaterialProperty({
-                  color: DC.Color.GREEN,
-                  speed: 20,
-                  image: VITE_APP_BASE + 'img/mapicon/right.png',
-                  repeat: { x: 30, y: 1 }
-                }),
-                clampToGround: false
-              })
-              addTileLayers[item.layerName].addOverlay(polyline1)
-            }
-            addTileLayers[item.layerName].addOverlay(polylineVolume)
-          })
-        } else {
-          addTileLayers[item.layerName].show = true
-        }
-      } else if (item.subType == 'geojsonPolygon') {
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                            planToBuild.addOverlay(planDivIcon)
+                        } else {
+                            polylineVolume.setStyle({
+                                material: item.color
+                            })
+                        }
+                        // 雨水管网流向
+                        if (item.layerName === 'ysgw') {
+                            let ss = i.properties.qd + ',' + item.height + ';' + i.properties.zd + ',' + item.height
+                            let polyline1 = new DC.Polyline(ss)
+                            polyline1.setStyle({
+                                width: 10,
+                                arcType: 1,
+                                material: new DC.PolylineImageTrailMaterialProperty({
+                                    color: DC.Color.GREEN,
+                                    speed: 20,
+                                    image: VITE_APP_BASE + 'img/mapicon/right.png',
+                                    repeat: { x: 30, y: 1 }
+                                }),
+                                clampToGround: false
+                            })
+                            addTileLayers[item.layerName].addOverlay(polyline1)
+                        }
+                        addTileLayers[item.layerName].addOverlay(polylineVolume)
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
+                }
+            } else if (item.subType == 'geojsonPolygon') {
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-          item.source.features.forEach(i => {
-            let Polyline = new DC.Polyline(i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';'))
+                    item.source.features.forEach(i => {
+                        let Polyline = new DC.Polyline(i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';'))
 
-            Polyline.setStyle({
-              width: 3,
-              material: DC.Color.BLUE,
-              clampToGround: true
-            })
-            addTileLayers[item.layerName].addOverlay(Polyline)
-          })
-        } else {
-          addTileLayers[item.layerName].show = true
-        }
-        // 路线
-      } else if (item.subType == 'geojsonLx') {
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                        Polyline.setStyle({
+                            width: 3,
+                            material: DC.Color.BLUE,
+                            clampToGround: true
+                        })
+                        addTileLayers[item.layerName].addOverlay(Polyline)
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
+                }
+                // 路线
+            } else if (item.subType == 'geojsonLx') {
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-          item.source.features.forEach(i => {
-            let ss = i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';')
-            let Polyline = new DC.Polyline(i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';'))
+                    item.source.features.forEach(i => {
+                        let ss = i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';')
+                        let Polyline = new DC.Polyline(i.geometry.coordinates.map(d => [...d, item.height].join(',')).join(';'))
 
-            Polyline.setStyle({
-              width: 3,
-              // material: DC.Color.BLUE,
-              material: new DC.PolylineTrailMaterialProperty({
-                color: DC.Color.RED,
-                speed: 10
-              }),
-              clampToGround: true
-            })
-            addTileLayers[item.layerName].addOverlay(Polyline)
-          })
-        } else {
-          addTileLayers[item.layerName].show = true
-        }
-        // 岗亭
-      } else if (item.subType == 'geojsonGt') {
-        // if (!addTileLayers[item.layerName]) {
-        //   addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
-        //   window.$viewer.addLayer(addTileLayers[item.layerName])
+                        Polyline.setStyle({
+                            width: 3,
+                            // material: DC.Color.BLUE,
+                            material: new DC.PolylineTrailMaterialProperty({
+                                color: DC.Color.RED,
+                                speed: 10
+                            }),
+                            clampToGround: true
+                        })
+                        addTileLayers[item.layerName].addOverlay(Polyline)
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
+                }
+                // 岗亭
+            } else if (item.subType == 'geojsonGt') {
+                // if (!addTileLayers[item.layerName]) {
+                //   addTileLayers[item.layerName] = new DC.VectorLayer(item.layerName)
+                //   window.$viewer.addLayer(addTileLayers[item.layerName])
 
-        //   item.source.features.forEach(i => {
-        //     let iconEl = ''
-        //     if ('showPanel' in item && item.showPanel == false) {
-        //       if (item.backgroundIcon) {
-        //         iconEl = `
-        //           <div class="map-name">${i.properties.O_Name}</div>
-        //           <div class="map-icon">
-        //             <img src="${item.backgroundIcon}">
-        //           </div>
-        //           `
-        //       }
-        //     } else {
-        //       iconEl = `<div class="marsBlueGradientPnl">
-        //           <div>${i.properties.O_Name}</div>
-        //         </div>`
-        //     }
-        //     console.log(i.geometry.coordinates[0], "2222222222222222222")
-        //     console.log(i.properties.O_Name, "3333333333333333")
+                //   item.source.features.forEach(i => {
+                //     let iconEl = ''
+                //     if ('showPanel' in item && item.showPanel == false) {
+                //       if (item.backgroundIcon) {
+                //         iconEl = `
+                //           <div class="map-name">${i.properties.O_Name}</div>
+                //           <div class="map-icon">
+                //             <img src="${item.backgroundIcon}">
+                //           </div>
+                //           `
+                //       }
+                //     } else {
+                //       iconEl = `<div class="marsBlueGradientPnl">
+                //           <div>${i.properties.O_Name}</div>
+                //         </div>`
+                //     }
+                //     console.log(i.geometry.coordinates[0], "2222222222222222222")
+                //     console.log(i.properties.O_Name, "3333333333333333")
 
-        //     let divIcon = new DC.DivIcon(
-        //       new DC.Position('115.60241996718104', '29.818985725785911'),
-        //       `<div class="public-map-popup ${item.className || ''}">
-        //             ${iconEl}
-        //           </div>`
-        //     )
+                //     let divIcon = new DC.DivIcon(
+                //       new DC.Position('115.60241996718104', '29.818985725785911'),
+                //       `<div class="public-map-popup ${item.className || ''}">
+                //             ${iconEl}
+                //           </div>`
+                //     )
 
-        //     addTileLayers[item.layerName].addOverlay(divIcon)
-        //   })
-        // } else {
-        //   addTileLayers[item.layerName].show = true
-        // }
-        if (!addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName] = new DC.HtmlLayer(item.layerName)
-          window.$viewer.addLayer(addTileLayers[item.layerName])
+                //     addTileLayers[item.layerName].addOverlay(divIcon)
+                //   })
+                // } else {
+                //   addTileLayers[item.layerName].show = true
+                // }
+                if (!addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName] = new DC.HtmlLayer(item.layerName)
+                    window.$viewer.addLayer(addTileLayers[item.layerName])
 
-          // item.method(item.params).then(res => {
-          // let data = res.data.data.records
+                    // item.method(item.params).then(res => {
+                    // let data = res.data.data.records
 
 
-          item.source.features.forEach(i => {
-            let iconEl = ''
+                    item.source.features.forEach(i => {
+                        let iconEl = ''
 
-            if ('showPanel' in item && item.showPanel == false) {
-              if (item.backgroundIcon) {
-                iconEl = `
+                        if ('showPanel' in item && item.showPanel == false) {
+                            if (item.backgroundIcon) {
+                                iconEl = `
                   <div class="map-name">${i.properties.O_Name}</div>
                   <div class="map-icon">
                     <img src="${item.backgroundIcon}">
                   </div>
                   `
-              }
-            } else {
-              iconEl = `<div class="marsBlueGradientPnl">
+                            }
+                        } else {
+                            iconEl = `<div class="marsBlueGradientPnl">
                   <div>${i.properties.O_Name}</div>
                 </div>`
-            }
+                        }
 
-            let divIcon = new DC.DivIcon(
-              new DC.Position(i.geometry.coordinates[0], i.geometry.coordinates[1], i.ele || 64),
-              `<div class="public-map-popup ${item.className || ''}">
+                        let divIcon = new DC.DivIcon(
+                            new DC.Position(i.geometry.coordinates[0], i.geometry.coordinates[1], i.ele || 64),
+                            `<div class="public-map-popup ${item.className || ''}">
                     ${iconEl}
                   </div>`
-            )
+                        )
 
-            divIcon.attrParams = i
+                        divIcon.attrParams = i
 
-            // let incident = () => {
-            // }
+                        // let incident = () => {
+                        // }
 
-            // if (item.incident) incident = item.incident
+                        // if (item.incident) incident = item.incident
 
-            // divIcon.on(DC.MouseEventType.CLICK, (e) => {
-            //   if (mapStore.editPoint) {
-            //     moveEntity = e
-            //     return
-            //   }
+                        // divIcon.on(DC.MouseEventType.CLICK, (e) => {
+                        //   if (mapStore.editPoint) {
+                        //     moveEntity = e
+                        //     return
+                        //   }
 
-            //   if (mapStore.startCustomWx && item.customWx) {
-            //     EventBus.emit('wxEntityClick', e)
-            //     return
-            //   }
+                        //   if (mapStore.startCustomWx && item.customWx) {
+                        //     EventBus.emit('wxEntityClick', e)
+                        //     return
+                        //   }
 
-            //   incident(e)
-            // })
+                        //   incident(e)
+                        // })
 
-            addTileLayers[item.layerName].addOverlay(divIcon)
-            // })
-          })
+                        addTileLayers[item.layerName].addOverlay(divIcon)
+                        // })
+                    })
+                } else {
+                    addTileLayers[item.layerName].show = true
+                }
+            } else if (item.subType == 'baseMap') {
+                if (addTileLayers[item.layerName]) {
+                    addTileLayers[item.layerName].show = true
+                    return
+                }
+
+                addTileLayers[item.layerName] = window.$viewer?.imageryLayers.addImageryProvider(item.source)
+            }
         } else {
-          addTileLayers[item.layerName].show = true
-        }
-      } else if (item.subType == 'baseMap') {
-        if (addTileLayers[item.layerName]) {
-          addTileLayers[item.layerName].show = true
-          return
-        }
+            if (addTileLayers[item.layerName]) {
+                if (item.subType == '3Dtile') {
+                    addTileLayers[item.layerName].forEach(m => m.show = false)
+                } else if (item.subType == 'baseMap') {
+                    addTileLayers[item.layerName].show = false
+                } else {
+                    addTileLayers[item.layerName].clear()
+                    window.$viewer && window.$viewer.removeLayer(addTileLayers[item.layerName])
+                    addTileLayers[item.layerName] = null
+                    delete addTileLayers[item.layerName]
 
-        addTileLayers[item.layerName] = window.$viewer?.imageryLayers.addImageryProvider(item.source)
-      }
-    } else {
-      if (addTileLayers[item.layerName]) {
-        if (item.subType == '3Dtile') {
-          addTileLayers[item.layerName].forEach(m => m.show = false)
-        } else if (item.subType == 'baseMap') {
-          addTileLayers[item.layerName].show = false
-        } else {
-          addTileLayers[item.layerName].clear()
-          window.$viewer && window.$viewer.removeLayer(addTileLayers[item.layerName])
-          addTileLayers[item.layerName] = null
-          delete addTileLayers[item.layerName]
-
-          if (item.layerName == 'ysgw' && planToBuild) {
-            planToBuild.clear()
-          }
-          if (item.layerName == 'qyjgx' && planToBuild) {
-            planToBuild.clear()
-          }
+                    if (item.layerName == 'ysgw' && planToBuild) {
+                        planToBuild.clear()
+                    }
+                    if (item.layerName == 'qyjgx' && planToBuild) {
+                        planToBuild.clear()
+                    }
+                }
+            }
         }
-      }
-    }
-  })
+    })
 }
 
 function findObjectById (data, id) {
-  // 遍历数据数组
-  for (let i = 0; i < data.length; i++) {
-    const item = data[i]
+    // 遍历数据数组
+    for (let i = 0; i < data.length; i++) {
+        const item = data[i]
 
-    // 检查当前项的 id 是否匹配
-    if (item.id === id) {
-      return item // 找到匹配项,返回它
+        // 检查当前项的 id 是否匹配
+        if (item.id === id) {
+            return item // 找到匹配项,返回它
+        }
+
+        // 如果当前项有 children 数组,则递归查找
+        if (item.children && item.children.length > 0) {
+            const found = findObjectById(item.children, id)
+            if (found) {
+                return found // 在 children 中找到匹配项,返回它
+            }
+        }
     }
 
-    // 如果当前项有 children 数组,则递归查找
-    if (item.children && item.children.length > 0) {
-      const found = findObjectById(item.children, id)
-      if (found) {
-        return found // 在 children 中找到匹配项,返回它
-      }
-    }
-  }
-
-  // 如果没有找到匹配项,返回 null
-  return null
+    // 如果没有找到匹配项,返回 null
+    return null
 }
 
 const restHandleCheckChange = (key) => {
-  let checkIds = treeRef.value?.getCheckedKeys()
+    let checkIds = treeRef.value?.getCheckedKeys()
 
-  if (checkIds && checkIds.some(i => i == key)) {
-    return
-  }
+    if (checkIds && checkIds.some(i => i == key)) {
+        return
+    }
 
-  treeRef.value?.setCheckedKeys([...checkIds, key])
-  handleCheckChange([findObjectById(data, key)])
+    treeRef.value?.setCheckedKeys([...checkIds, key])
+    handleCheckChange([findObjectById(data, key)])
 }
 
 const restHandleDelChange = (key) => {
 
-  let checkIds = treeRef.value?.getCheckedKeys()
+    let checkIds = treeRef.value?.getCheckedKeys()
 
-  if (checkIds && !checkIds.some(i => i == key)) {
-    return
-  }
+    if (checkIds && !checkIds.some(i => i == key)) {
+        return
+    }
 
-  let selectData = findObjectById(data, key)
+    let selectData = findObjectById(data, key)
 
-  let parentId = null
-  if (selectData && 'parentId' in selectData) parentId = selectData.parentId
+    let parentId = null
+    if (selectData && 'parentId' in selectData) parentId = selectData.parentId
 
-  treeRef.value?.setCheckedKeys(checkIds.filter(i => i.indexOf(key) && i != parentId))
-  handleCheckChange([selectData])
+    treeRef.value?.setCheckedKeys(checkIds.filter(i => i.indexOf(key) && i != parentId))
+    handleCheckChange([selectData])
 }
 
 // 飞到园区范围
 const flyToyqfw = () => {
-  window.$viewer.zoomToPosition(new DC.Position(
-    115.6080,
-    29.7880,
-    3000,
-    0,
-    -45,
-    0
-  ), () => {
-  })
+    window.$viewer.zoomToPosition(new DC.Position(
+        115.6080,
+        29.7880,
+        3000,
+        0,
+        -45,
+        0
+    ), () => {
+    })
 }
 
 EventBus.on('restHandleCheckChange', restHandleCheckChange)
@@ -1227,63 +1230,63 @@
 let tooltip = window.$viewer.tooltip
 
 const viewerMouseMove = (e) => {
-  if (mapStore.editPoint) {
-    if (moveEntity != null) {
+    if (mapStore.editPoint) {
+        if (moveEntity != null) {
 
-      if (e.wgs84Position && e.wgs84Position.alt > 0) {
-        moveEntity.overlay.position = new DC.Position(e.wgs84Position.lng, e.wgs84Position.lat, e.wgs84Position.alt)
-      } else {
-        moveEntity.overlay.position = new DC.Position(e.wgs84SurfacePosition.lng, e.wgs84SurfacePosition.lat, e.wgs84SurfacePosition.alt)
-      }
+            if (e.wgs84Position && e.wgs84Position.alt > 0) {
+                moveEntity.overlay.position = new DC.Position(e.wgs84Position.lng, e.wgs84Position.lat, e.wgs84Position.alt)
+            } else {
+                moveEntity.overlay.position = new DC.Position(e.wgs84SurfacePosition.lng, e.wgs84SurfacePosition.lat, e.wgs84SurfacePosition.alt)
+            }
 
-      tooltip.showAt({ x: e.windowPosition.x + 10, y: e.windowPosition.y }, '右键结束编辑')
-    } else {
-      tooltip.showAt({ x: e.windowPosition.x + 10, y: e.windowPosition.y }, '左键选中点位,开始编辑')
+            tooltip.showAt({ x: e.windowPosition.x + 10, y: e.windowPosition.y }, '右键结束编辑')
+        } else {
+            tooltip.showAt({ x: e.windowPosition.x + 10, y: e.windowPosition.y }, '左键选中点位,开始编辑')
+        }
     }
-  }
 }
 
 window.$viewer.on(DC.MouseEventType.MOUSE_MOVE, viewerMouseMove)
 
 const viewerRightClick = (e) => {
-  if (mapStore.editPoint && moveEntity != null) {
-    tooltip.enable = false
-    let lng, lat, ele
+    if (mapStore.editPoint && moveEntity != null) {
+        tooltip.enable = false
+        let lng, lat, ele
 
-    const { attrParams } = moveEntity.overlay
-    console.log(e, 2222)
+        const { attrParams } = moveEntity.overlay
+        console.log(e, 2222)
 
-    if (e.wgs84Position && e.wgs84Position.alt > 0) {
-      lng = e.wgs84Position.lng
-      lat = e.wgs84Position.lat
-      ele = e.wgs84Position.alt
-    } else {
-      lng = e.wgs84SurfacePosition.lng
-      lat = e.wgs84SurfacePosition.lat
-      ele = e.wgs84SurfacePosition.alt
+        if (e.wgs84Position && e.wgs84Position.alt > 0) {
+            lng = e.wgs84Position.lng
+            lat = e.wgs84Position.lat
+            ele = e.wgs84Position.alt
+        } else {
+            lng = e.wgs84SurfacePosition.lng
+            lat = e.wgs84SurfacePosition.lat
+            ele = e.wgs84SurfacePosition.alt
+        }
+
+        updateSpace({
+            id: attrParams.id,
+            lng,
+            lat,
+            ele: Math.ceil(ele)
+        }).then(res => {
+            moveEntity = null
+            mapStore.setEditPoint(false)
+
+            ElMessage({
+                message: '修改成功',
+                type: 'success',
+            })
+        })
     }
-
-    updateSpace({
-      id: attrParams.id,
-      lng,
-      lat,
-      ele: Math.ceil(ele)
-    }).then(res => {
-      moveEntity = null
-      mapStore.setEditPoint(false)
-
-      ElMessage({
-        message: '修改成功',
-        type: 'success',
-      })
-    })
-  }
 }
 
 window.$viewer.on(DC.MouseEventType.RIGHT_CLICK, viewerRightClick)
 
 onMounted(() => {
-  handleCheckChange(data.filter(i => indexPoint.value.includes(i.id)))
+    handleCheckChange(data.filter(i => indexPoint.value.includes(i.id)))
 })
 
 // const sharedData = computed(() => pointStore.sharedData);
@@ -1292,26 +1295,26 @@
 
 // 关闭所有选中的,除了倾斜,园区分布,空中全景
 const closeAll = () => {
-  EventBus.emit('restHandleDelChange', `2`)
-  EventBus.emit('restHandleDelChange', `3-1`)
-  EventBus.emit('restHandleDelChange', `3-2`)
-  EventBus.emit('restHandleDelChange', `3-3`)
-  EventBus.emit('restHandleDelChange', `3-4`)
-  EventBus.emit('restHandleDelChange', `3-5`)
-  EventBus.emit('restHandleDelChange', `3-6`)
-  EventBus.emit('restHandleDelChange', `3-7`)
-  EventBus.emit('restHandleDelChange', `3-8`)
-  EventBus.emit('restHandleDelChange', `3-9`)
-  EventBus.emit('restHandleDelChange', `3-11`)
+    EventBus.emit('restHandleDelChange', `2`)
+    EventBus.emit('restHandleDelChange', `3-1`)
+    EventBus.emit('restHandleDelChange', `3-2`)
+    EventBus.emit('restHandleDelChange', `3-3`)
+    EventBus.emit('restHandleDelChange', `3-4`)
+    EventBus.emit('restHandleDelChange', `3-5`)
+    EventBus.emit('restHandleDelChange', `3-6`)
+    EventBus.emit('restHandleDelChange', `3-7`)
+    EventBus.emit('restHandleDelChange', `3-8`)
+    EventBus.emit('restHandleDelChange', `3-9`)
+    EventBus.emit('restHandleDelChange', `3-11`)
 
-  EventBus.emit('restHandleDelChange', `4-1`)
-  EventBus.emit('restHandleDelChange', `4-2`)
-  EventBus.emit('restHandleDelChange', `4-3`)
-  EventBus.emit('restHandleDelChange', `4-9`)
-  EventBus.emit('restHandleDelChange', `4-5`)
-  EventBus.emit('restHandleDelChange', `4-6`)
+    EventBus.emit('restHandleDelChange', `4-1`)
+    EventBus.emit('restHandleDelChange', `4-2`)
+    EventBus.emit('restHandleDelChange', `4-3`)
+    EventBus.emit('restHandleDelChange', `4-9`)
+    EventBus.emit('restHandleDelChange', `4-5`)
+    EventBus.emit('restHandleDelChange', `4-6`)
 
-  destroyPop()
+    destroyPop()
 }
 
 // const sharedData = computed(() => pointStore.sharedData);
@@ -1319,95 +1322,95 @@
 // });
 // 监听当前路由路径的变化
 watch(() => router.currentRoute.value.path,
-  (newPath, oldPath) => {
-    console.log(`Current path changed from ${oldPath} to ${newPath}`)
-    closeAll()
-  },
-  { immediate: true }
+    (newPath, oldPath) => {
+        console.log(`Current path changed from ${oldPath} to ${newPath}`)
+        closeAll()
+    },
+    { immediate: true }
 )
 
 // 销毁
 function destroyPop () {
-  if (addPopLayers && addPopLayers != null) {
-    let arr = Object.keys(addPopLayers)
-    if (arr.length > 0) {
-      arr.forEach(i => {
-        addPopLayers[i] && window.$viewer && window.$viewer.removeLayer(addPopLayers[i])
-        addPopLayers[i] = null
-        delete addPopLayers[i]
-      })
-      addPopLayers = {}
+    if (addPopLayers && addPopLayers != null) {
+        let arr = Object.keys(addPopLayers)
+        if (arr.length > 0) {
+            arr.forEach(i => {
+                addPopLayers[i] && window.$viewer && window.$viewer.removeLayer(addPopLayers[i])
+                addPopLayers[i] = null
+                delete addPopLayers[i]
+            })
+            addPopLayers = {}
+        }
     }
-  }
 }
 
 onUnmounted(() => {
-  let arr = Object.keys(addTileLayers)
-  arr.forEach(i => {
-    if (i == 'hgyq' || i == 'hgyqT') {
-      addTileLayers[i].forEach(t => {
-        tileLayers.removeOverlay(t)
-        t = null
-      })
-    } else if (i == 'baseMap') {
-      window.$viewer?.imageryLayers.remove(addTileLayers[i])
-    } else {
-      addTileLayers[i] && window.$viewer && window.$viewer.removeLayer(addTileLayers[i])
+    let arr = Object.keys(addTileLayers)
+    arr.forEach(i => {
+        if (i == 'hgyq' || i == 'hgyqT') {
+            addTileLayers[i].forEach(t => {
+                tileLayers.removeOverlay(t)
+                t = null
+            })
+        } else if (i == 'baseMap') {
+            window.$viewer?.imageryLayers.remove(addTileLayers[i])
+        } else {
+            addTileLayers[i] && window.$viewer && window.$viewer.removeLayer(addTileLayers[i])
+        }
+        addTileLayers[i] = null
+        delete addTileLayers[i]
+    })
+    addTileLayers = null
+
+    if (tileLayers) {
+        tileLayers.remove()
+        window.$viewer && window.$viewer.removeLayer(tileLayers)
+        tileLayers = null
     }
-    addTileLayers[i] = null
-    delete addTileLayers[i]
-  })
-  addTileLayers = null
 
-  if (tileLayers) {
-    tileLayers.remove()
-    window.$viewer && window.$viewer.removeLayer(tileLayers)
-    tileLayers = null
-  }
+    if (planToBuild) {
+        planToBuild.remove()
+        window.$viewer && window.$viewer.removeLayer(planToBuild)
+        planToBuild = null
+    }
 
-  if (planToBuild) {
-    planToBuild.remove()
-    window.$viewer && window.$viewer.removeLayer(planToBuild)
-    planToBuild = null
-  }
+    // 弹窗销毁
+    destroyPop()
+    addPopLayers = null
 
-  // 弹窗销毁
-  destroyPop()
-  addPopLayers = null
+    window.$viewer && window.$viewer.off(DC.MouseEventType.MOUSE_MOVE, viewerMouseMove)
+    window.$viewer && window.$viewer.off(DC.MouseEventType.RIGHT_CLICK, viewerRightClick)
 
-  window.$viewer && window.$viewer.off(DC.MouseEventType.MOUSE_MOVE, viewerMouseMove)
-  window.$viewer && window.$viewer.off(DC.MouseEventType.RIGHT_CLICK, viewerRightClick)
-
-  EventBus.off('restHandleCheckChange', restHandleCheckChange)
-  EventBus.off('restHandleDelChange', restHandleDelChange)
-  EventBus.off('flyToyqfw', flyToyqfw)
+    EventBus.off('restHandleCheckChange', restHandleCheckChange)
+    EventBus.off('restHandleDelChange', restHandleDelChange)
+    EventBus.off('flyToyqfw', flyToyqfw)
 })
 </script>
 
 <style lang="scss" scoped>
 .tree-content {
-  min-width: 200px;
-  padding: 10px;
+    min-width: 200px;
+    padding: 10px;
 
-  ::v-deep(.el-tree) {
-    color: #fff;
-    background: transparent;
+    ::v-deep(.el-tree) {
+        color: #fff;
+        background: transparent;
 
-    /* 鼠标浮动过的背景颜色 */
-    .el-tree-node__content:hover {
-      background: #0074b7;
+        /* 鼠标浮动过的背景颜色 */
+        .el-tree-node__content:hover {
+            background: #0074b7;
+        }
+
+        /* 鼠标点击时节点的背景颜色 */
+        .el-tree-node:focus>.el-tree-node__content {
+            background-color: #0074b7 !important;
+            color: rgb(255, 255, 255);
+        }
+
+        /* 鼠标失去焦点时节点背景的颜色 */
+        .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
+            background: rgb(0, 129, 204);
+        }
     }
-
-    /* 鼠标点击时节点的背景颜色 */
-    .el-tree-node:focus>.el-tree-node__content {
-      background-color: #0074b7 !important;
-      color: rgb(255, 255, 255);
-    }
-
-    /* 鼠标失去焦点时节点背景的颜色 */
-    .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
-      background: rgb(0, 129, 204);
-    }
-  }
 }
 </style>

--
Gitblit v1.9.3