From 3832a82fb79d4cec4cca5e2854e54953f2095ef8 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 06 九月 2024 16:55:08 +0800
Subject: [PATCH] 1. 添加溯源清单功能 2. 修复切换至走航监测界面后,之前正在加载的历史数据依旧展示至地图的问题 3. 添加折线图下载图片功能; 4. 添加数据导出功能; 5. 添加设备管理功能; 6. 添加数据弹框和溯源清单开关功能; 7. 优化3D里面的颜色展示逻辑,底部颜色由原来的因子最小值颜色改为当前量级的上一个量级对应的颜色

---
 src/utils/map/marks.js |   92 ++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 76 insertions(+), 16 deletions(-)

diff --git a/src/utils/map/marks.js b/src/utils/map/marks.js
index 94144d2..a72dcdf 100644
--- a/src/utils/map/marks.js
+++ b/src/utils/map/marks.js
@@ -3,8 +3,6 @@
  */
 
 import { map } from './index_old';
-import sector from './sector';
-import { DialogUtil } from './dialog';
 import { useToolboxStore } from '@/stores/toolbox';
 
 const toolboxStore = useToolboxStore();
@@ -21,10 +19,7 @@
     if (!toolboxStore.dataMarkerStatus) {
       return;
     }
-    if (_massMarks) {
-      map.remove(_massMarks);
-      _massMarks = undefined;
-    }
+    this.clearMassMarks();
     const lnglats = fDatas.lnglats_GD;
     var data = [];
     for (let i = 0; i < lnglats.length; i++) {
@@ -52,17 +47,8 @@
     });
     massMarks.on('click', (event) => {
       const i = event.data.id;
-      // 1. 缁樺埗鎵囧舰鍖哄煙
-      sector.drawSector(fDatas, i);
-
-      // 2. 缁樺埗瀵硅瘽妗�
-      DialogUtil.openNewWindow(fDatas, i, map, lnglats[i], () => {
-        // 绉婚櫎鎵囧舰鍖哄煙
-        // clearSector3();
-      });
-
       // 3. 鑷畾涔夌偣鍑讳簨浠�
-      onClick();
+      onClick(i);
     });
     // eslint-disable-next-line no-undef
     var marker = new AMap.Marker({
@@ -85,5 +71,79 @@
     });
     _massMarks = massMarks;
     map.add(massMarks);
+  },
+  clearMassMarks() {
+    if (_massMarks) {
+      map.remove(_massMarks);
+      _massMarks = undefined;
+    }
+  },
+
+  /**
+   * 鍒涘缓鏍囪鐐�
+   * @param {string | Array} img 鍥炬爣鎴栧浘鏍囨暟缁�
+   * @param {Array} dataList 鐩戞祴鏁版嵁
+   * @param {boolean} collision 鏍囨敞閬胯
+   * @returns
+   */
+  createLabelMarks(img, dataList, collision = true) {
+    // eslint-disable-next-line no-undef
+    const layer = new AMap.LabelsLayer({
+      zooms: [3, 20],
+      zIndex: 1000,
+      // 寮�鍚爣娉ㄩ伩璁╋紝榛樿涓哄紑鍚紝v1.4.15 鏂板灞炴��
+      collision: collision,
+      // 寮�鍚爣娉ㄦ贰鍏ュ姩鐢伙紝榛樿涓哄紑鍚紝v1.4.15 鏂板灞炴��
+      animation: true
+    });
+
+    map.add(layer);
+
+    // var markers = [];
+    for (var i = 0; i < dataList.length; i++) {
+      const data = dataList[i];
+      var curData = {
+        name: data.name,
+        position: [data.longitude, data.latitude],
+        zooms: [10, 20],
+        opacity: 1,
+        zIndex: 10,
+        icon: {
+          type: 'image',
+          image: typeof img === 'string' ? img : img[i],
+          // clipOrigin: [14, 92],
+          // clipSize: [50, 68],
+          size: [30, 30],
+          anchor: 'bottom-center',
+          angel: 0,
+          retina: true
+        },
+        text: {
+          content: data.name,
+          direction: 'top',
+          offset: [0, -5],
+          style: {
+            fontSize: 16,
+            fontWeight: 'normal',
+            fillColor: '#fff',
+            strokeColor: '#333',
+            strokeWidth: 0,
+            backgroundColor: '#122b54a9'
+          }
+        }
+      };
+      curData.extData = {
+        index: i
+      };
+
+      // eslint-disable-next-line no-undef
+      var labelMarker = new AMap.LabelMarker(curData);
+
+      // markers.push(labelMarker);
+
+      layer.add(labelMarker);
+    }
+
+    return layer;
   }
 };

--
Gitblit v1.9.3