From 57e4d6cb8209d13dbc9265636b456ee61a3ff5be Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 03 Dec 2024 13:31:25 +0800
Subject: [PATCH] 风险源默认显示调整

---
 src/pages/map/components/scomponents/layersControl.vue |   55 ++++++++++++++++++++++++---
 src/views/rs/components/box/dataContent.vue            |    8 +++-
 src/views/rs/components/leftContainer.vue              |    6 ++
 public/img/mapicon/fxy-zd.png                          |    0 
 src/styles/base/dc-base.scss                           |   16 ++++++++
 5 files changed, 75 insertions(+), 10 deletions(-)

diff --git a/public/img/mapicon/fxy-zd.png b/public/img/mapicon/fxy-zd.png
new file mode 100644
index 0000000..ad0ca2a
--- /dev/null
+++ b/public/img/mapicon/fxy-zd.png
Binary files differ
diff --git a/src/pages/map/components/scomponents/layersControl.vue b/src/pages/map/components/scomponents/layersControl.vue
index b226603..5adea68 100644
--- a/src/pages/map/components/scomponents/layersControl.vue
+++ b/src/pages/map/components/scomponents/layersControl.vue
@@ -2,7 +2,7 @@
  * @Author: shuishen 1109946754@qq.com
  * @Date: 2024-10-31 10:47:29
  * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-12-03 12:51:24
+ * @LastEditTime: 2024-12-03 13:29:41
  * @FilePath: \bigScreen\src\pages\map\components\scomponents\layersControl.vue
  * @Description:
  *
@@ -550,6 +550,45 @@
           divIcon.on(DC.MouseEventType.CLICK, incident)
           addPopLayers[attrParams.name].addOverlay(divIcon)
         }
+      },
+      {
+        id: '4-9',
+        label: '暂定',
+        type: 'layer',
+        subType: 'labelPoint',
+        method: getRiskList,
+        params: {
+          riskLevel: 9,
+          size: 1000
+        },
+        showParams: 'category',
+        className: 'fxy-zd',
+        backgroundIcon: VITE_APP_BASE + 'img/mapicon/fxy-zd.png',
+        showPanel: false,
+        layerName: 'fxyZdLarger',
+        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">
+                    ${iconEl}
+                  </div>`
+          )
+          let incident = () => {
+            destroyPop()
+          }
+          divIcon.on(DC.MouseEventType.CLICK, incident)
+          addPopLayers[attrParams.name].addOverlay(divIcon)
+        }
       }
     ]
   },
@@ -965,6 +1004,8 @@
   EventBus.emit('restHandleDelChange', `4`)
   EventBus.emit('restHandleDelChange', `4-1`)
   EventBus.emit('restHandleDelChange', `4-2`)
+  EventBus.emit('restHandleDelChange', `4-9`)
+
   EventBus.emit('restHandleDelChange', `8`)
   destroyPop()
 }
@@ -984,13 +1025,13 @@
 // 销毁
 function destroyPop () {
   let arr = Object.keys(addPopLayers)
-  if(arr.length > 0){
+  if (arr.length > 0) {
     arr.forEach(i => {
-    addPopLayers[i] && window.$viewer && window.$viewer.removeLayer(addPopLayers[i])
-    addPopLayers[i] = null
-    delete addPopLayers[i]
-  })
-  addPopLayers = {}
+      addPopLayers[i] && window.$viewer && window.$viewer.removeLayer(addPopLayers[i])
+      addPopLayers[i] = null
+      delete addPopLayers[i]
+    })
+    addPopLayers = {}
   }
 }
 
diff --git a/src/styles/base/dc-base.scss b/src/styles/base/dc-base.scss
index 9750b4c..532dd45 100644
--- a/src/styles/base/dc-base.scss
+++ b/src/styles/base/dc-base.scss
@@ -273,6 +273,22 @@
   }
 }
 
+.fxy-zd {
+  &::after {
+    background: linear-gradient(to bottom, rgba(173, 173, 173, 0.8), rgba(173, 173, 173, 0.2));
+  }
+
+  .map-name {
+    color: rgba(255, 201, 0, 1);
+    width: 240px;
+  }
+
+  .map-icon {
+    background: radial-gradient(circle at center, rgba(255, 255, 255, 0.3) 20%, rgba(173, 173, 173, 0.9) 100%);
+    box-shadow: 0px 0px 10px rgb(173, 173, 173);
+  }
+}
+
 .qyfb-box {
   &::after {
     background: linear-gradient(to bottom, rgba(0, 136, 255, 0.8), rgba(0, 136, 255, 0.2));
diff --git a/src/views/rs/components/box/dataContent.vue b/src/views/rs/components/box/dataContent.vue
index 3f96d6e..7b045d6 100644
--- a/src/views/rs/components/box/dataContent.vue
+++ b/src/views/rs/components/box/dataContent.vue
@@ -2,7 +2,7 @@
  * @Author: shuishen 1109946754@qq.com
  * @Date: 2023-03-13 14:54:26
  * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-27 14:26:33
+ * @LastEditTime: 2024-12-03 13:23:57
  * @FilePath: \bigScreen\src\views\rs\components\box\dataContent.vue
  * @Description: 
  * 
@@ -44,6 +44,10 @@
     {
       label: '较大',
       value: 2
+    },
+    {
+      label: '暂定',
+      value: 9
     }
   ]
 })
@@ -111,7 +115,7 @@
     .then((res) => {
       const data = res.data.data
       data.records.forEach(item => {
-        if(!item.riskLevelName){
+        if (!item.riskLevelName) {
           item.riskLevelName = '暂定'
         }
       })
diff --git a/src/views/rs/components/leftContainer.vue b/src/views/rs/components/leftContainer.vue
index ac7039a..f86b55c 100644
--- a/src/views/rs/components/leftContainer.vue
+++ b/src/views/rs/components/leftContainer.vue
@@ -2,7 +2,7 @@
  * @Author: shuishen 1109946754@qq.com
  * @Date: 2023-03-10 15:27:59
  * @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2024-11-19 17:25:37
+ * @LastEditTime: 2024-12-03 13:23:28
  * @FilePath: \bigScreen\src\views\rs\components\leftContainer.vue
  * @Description: 
  * 
@@ -22,6 +22,10 @@
     {
       label: '较大',
       value: 2
+    },
+    {
+      label: '暂定',
+      value: 9
     }
   ]
 })

--
Gitblit v1.9.3