From c207f06e264f3d7d091494712820ae3e1d73d700 Mon Sep 17 00:00:00 2001
From: xiaoxiao <2014227881@qq.com>
Date: Mon, 16 Jun 2025 22:39:59 +0800
Subject: [PATCH] feat:地图带颜色小点

---
 src/views/dataCenter/components/dataCenterMap.vue |   22 ++++++++++++----------
 1 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/views/dataCenter/components/dataCenterMap.vue b/src/views/dataCenter/components/dataCenterMap.vue
index 11d87c6..39930fd 100644
--- a/src/views/dataCenter/components/dataCenterMap.vue
+++ b/src/views/dataCenter/components/dataCenterMap.vue
@@ -3,7 +3,6 @@
     <div class="mapBox">
       <div v-if="isShow" id="dataCenterMap" class="ztzf-cesium"></div>
     </div>
- 
   </el-dialog>
 </template>
 
@@ -89,8 +88,9 @@
 const restoreAllIcons = () => {
   dataPointEntities.value.forEach(entity => {
     if (entity.billboard) {
+      const status = entity?.properties?._customData?._value?.data.status;
       entity.billboard.image =
-        props.dotData.resultType === 2 ? getEventImage(entity.status) : defaultIcon;
+        status === 1 || status === null ? defaultIcon : getEventImage(status);
     }
   });
   activeEntity.value = null;
@@ -110,8 +110,10 @@
   // 恢复所有点的默认图标
   restoreAllIcons();
   if (currentClickEntity.billboard) {
+    const status = currentClickEntity?.properties?._customData?._value?.data.status;
+    console.log('stayus', currentClickEntity?.properties?._customData?._value?.data);
     currentClickEntity.billboard.image =
-      props.dotData.resultType === 2 ? getEventImage(currentClickEntity.status) : activeIcon;
+      status === 1 || status === null ? activeIcon : getEventActiveImage(status);
     currentClickEntity.billboard.scale = 1; // 可选缩放效果
     activeEntity.value = currentClickEntity;
   }
@@ -168,7 +170,7 @@
         pixelOffset: new Cesium.Cartesian2(0, 55),
       },
       billboard: {
-        image: props.dotData.resultType === 2 ? getEventImage(item.status) : defaultIcon, // 初始为默认图标
+        image: item.status == null || item.status === 1 ? defaultIcon : getEventImage(item.status), // 初始为默认图标
         width: 40,
         height: 40,
         pixelOffset: new Cesium.Cartesian2(0, -15),
@@ -241,8 +243,8 @@
   try {
     const res = await getMapInfoAPI(ids);
     dataPointList.value = res.data.data || [];
-    console.log('dataPointList.value',dataPointList.value);
-    
+    console.log('dataPointList.value', dataPointList.value);
+
     // 确保地图已初始化后再渲染
     if (isMapInitialized.value && viewer) {
       renderDataPoint(dataPointList.value);
@@ -252,11 +254,14 @@
   }
 };
 const isViewerReady = ref(false);
+
 /**
  * 初始化标注添加
  * @param data 数据
  */
 const initEntityOrPopup = data => {
+  console.log('data', data);
+
   //地图点在范围内
   watch(
     () => isMapInitialized.value,
@@ -297,16 +302,13 @@
   }
 });
 
-onMounted(() => {
-
-});
+onMounted(() => {});
 onBeforeUnmount(() => {
   if (viewer) {
     viewer.destroy();
   }
   removeHandler();
   clearDataPoints();
-
 });
 
 // 暴露方法给父组件

--
Gitblit v1.9.3