From b01dd8df29dd8543fbb432bb0e4abbd01bcb8b24 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 03 Dec 2024 14:33:39 +0800
Subject: [PATCH] 路由切换,底图、图层、工具面板关闭

---
 src/pages/map/components/scomponents/layersControl.vue |   51 ++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 38 insertions(+), 13 deletions(-)

diff --git a/src/pages/map/components/scomponents/layersControl.vue b/src/pages/map/components/scomponents/layersControl.vue
index 0bd3a2d..72034dc 100644
--- a/src/pages/map/components/scomponents/layersControl.vue
+++ b/src/pages/map/components/scomponents/layersControl.vue
@@ -175,8 +175,8 @@
           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.firmName}</div>
+            <div>作用:${attrParams.mainFuncName}</div>
                 </div>`
           let divIcon = new DC.DivIcon(
             new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
@@ -215,8 +215,8 @@
           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.firmName}</div>
+            <div>作用:${attrParams.mainFuncName}</div>
                 </div>`
           let divIcon = new DC.DivIcon(
             new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
@@ -388,8 +388,8 @@
           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.firmName}</div>
+            <div>作用:${attrParams.mainFuncName}</div>
                 </div>`
           let divIcon = new DC.DivIcon(
             new DC.Position(attrParams.lng, attrParams.lat, attrParams.ele || 64),
@@ -449,7 +449,32 @@
         backgroundIcon: VITE_APP_BASE + 'img/mapicon/psk.png',
         className: 'xfs-box',
         showPanel: false,
-        layerName: 'psk'
+        layerName: 'psk',
+        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>`
+          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)
+        }
       },
       // {
       //   id: '3-11',
@@ -495,9 +520,9 @@
           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>
+            <li>企业名称:${attrParams.firmName || ''}</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),
@@ -534,9 +559,9 @@
           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>
+            <li>企业名称:${attrParams.firmName || ''}</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),

--
Gitblit v1.9.3