From 0cae92b7ed0a080f74df6a30c0d68d2d0b45ec70 Mon Sep 17 00:00:00 2001
From: 少年 <1392120328@qq.com>
Date: 星期三, 13 三月 2024 11:32:49 +0800
Subject: [PATCH] Merge branch 'master' of http://103.135.160.14:9034/r/PM20221203225_MobileWeb

---
 src/assets/img/right/test01.png                            |    0 
 src/assets/img/right/test02.png                            |    0 
 src/assets/img/right/test04.png                            |    0 
 src/assets/img/right/test03.png                            |    0 
 src/utils/map2.js                                          |   76 +++++++++++++++----------
 src/components/sideMenu/layerTreePanel/layerTreePanel2.vue |   76 ++++++++++++++++++++++---
 6 files changed, 112 insertions(+), 40 deletions(-)

diff --git a/src/assets/img/right/test01.png b/src/assets/img/right/test01.png
index db8dd6a..e4ef078 100644
--- a/src/assets/img/right/test01.png
+++ b/src/assets/img/right/test01.png
Binary files differ
diff --git a/src/assets/img/right/test02.png b/src/assets/img/right/test02.png
index db8dd6a..e4ef078 100644
--- a/src/assets/img/right/test02.png
+++ b/src/assets/img/right/test02.png
Binary files differ
diff --git a/src/assets/img/right/test03.png b/src/assets/img/right/test03.png
index db8dd6a..e4ef078 100644
--- a/src/assets/img/right/test03.png
+++ b/src/assets/img/right/test03.png
Binary files differ
diff --git a/src/assets/img/right/test04.png b/src/assets/img/right/test04.png
index db8dd6a..e4ef078 100644
--- a/src/assets/img/right/test04.png
+++ b/src/assets/img/right/test04.png
Binary files differ
diff --git a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
index 51426ba..3d49580 100644
--- a/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
+++ b/src/components/sideMenu/layerTreePanel/layerTreePanel2.vue
@@ -1855,6 +1855,7 @@
         layer.item.baseLayer = true;
       }
     },
+    // 甯傛斂鏉嗕綋鑱氬悎
     initLdgCluster(treeNode) {
       if (treeNode.checked == false) {
         window.mapapi.removeLayer(window.ldgclusterLayer);
@@ -1890,7 +1891,7 @@
           source: clusterSource,
           style: function (feature) {
             var size = feature.get("features").length;
-            if (size <= 100) {
+            if (size == 1) {
               return new ol.style.Style({
                 image: new ol.style.Icon({
                   anchor: [0.5, 1],
@@ -1940,11 +1941,11 @@
 
         window.mapapi.addLayer(window.ldgclusterLayer);
       } else if (treeNode.name == "璺悕鐗屾潌 ") {
-        window.tldgclusterLayer = new  ol.layer.Vector({
+        window.tldgclusterLayer = new ol.layer.Vector({
           source: clusterSource,
           style: function (feature) {
             var size = feature.get("features").length;
-            if (size <= 100) {
+            if (size == 1) {
               return new ol.style.Style({
                 image: new ol.style.Icon({
                   anchor: [0.5, 1],
@@ -1999,7 +2000,20 @@
       window.mapapi.removeLayer(window.jkspclusterLayer);
       window.mapapi.removeLayer(window.qiyeclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          console.log("max");
+
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      });
     },
+    // 瑙嗛鐩戞帶鑱氬悎
     initCluster(treeNode) {
       if (treeNode.checked == false) {
         window.mapapi.removeLayer(window.jkspclusterLayer);
@@ -2028,11 +2042,11 @@
 
       // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡
       var styleCache = {};
-      window.jkspclusterLayer = new  ol.layer.Vector({
+      window.jkspclusterLayer = new ol.layer.Vector({
         source: clusterSource,
         style: function (feature) {
           var size = feature.get("features").length;
-          if (size <= 100) {
+          if (size == 1) {
             return new ol.style.Style({
               image: new ol.style.Icon({
                 anchor: [0.5, 1],
@@ -2087,6 +2101,18 @@
       window.mapapi.removeLayer(window.qiyeclusterLayer);
       window.mapapi.addLayer(window.jkspclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          console.log("max");
+
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      });
       // new Cesium.GeoJsonDataSource.load(
       //   treeNode.urls +
       //     "?version=1.3.0&request=GetFeature&format=json&typename=" +
@@ -2274,7 +2300,7 @@
           // });
         });
     },
-    //浼佷笟淇℃伅鍔犺浇
+    //浼佷笟淇℃伅鑱氬悎
     qiyeCluster(treeNode) {
       if (treeNode.checked == false) {
         window.mapapi.removeLayer(window.qiyeclusterLayer);
@@ -2294,21 +2320,20 @@
           "?version=1.3.0&request=GetFeature&format=json&typename=" +
           treeNode.layer,
       });
-      
 
       // 鍒涘缓鑱氬悎灞�
       var clusterSource = new ol.source.Cluster({
-        distance: 200,
+        distance: 40,
         source: vectorSource,
       });
 
       // 鍒涘缓鑱氬悎鏄剧ず鏍峰紡
       var styleCache = {};
-      window.qiyeclusterLayer = new  ol.layer.Vector({
+      window.qiyeclusterLayer = new ol.layer.Vector({
         source: clusterSource,
         style: function (feature) {
           var size = feature.get("features").length;
-          if (size <= 1300) {
+          if (size == 1) {
             return new ol.style.Style({
               image: new ol.style.Icon({
                 anchor: [0.5, 1],
@@ -2385,7 +2410,38 @@
       window.mapapi.removeLayer(window.jkspclusterLayer);
       window.mapapi.addLayer(window.qiyeclusterLayer);
       loading.close();
+      window.mapapi.getView().on("change:resolution", function (event) {
+        if (
+          window.mapapi.getView().getZoom() ==
+          window.mapapi.getView().getMaxZoom()
+        ) {
+          clusterSource.setDistance(0);
+        } else {
+          clusterSource.setDistance(40);
+        }
+      }); 
+      // 鐩戝惉鍦板浘鍗曞嚮浜嬩欢
+      // window.mapapi.on("singleclick", function (e) {
+      //   var pixel = window.mapapi.getEventPixel(e.originalEvent);
+      //   var currentFeature = window.mapapi.forEachFeatureAtPixel(
+      //     pixel,
+      //     function (feature, layer) {
+      //       return feature;
+      //     }
+      //   );
+      //   if (currentFeature) {
+      //     var features = currentFeature.get("features");
+      //     if (features.length > 1) {
+      //       console.log(features);
+      //       window.alert("褰撳墠鑱氬悎鍦堜笅鍏辨湁" + features.length + "涓绱�");
+      //     }
+      //     if (features.length == 1) {
+      //       console.log(features);
 
+      //       window.alert("褰撳墠瑕佺礌鏈鑱氬悎锛屽彧鏈�" + features.length + "涓绱�");
+      //     }
+      //   }
+      // });
       // let dataSource;
       // if (treeNode.layer == "浼佷笟閾句紒涓�") {
       //   // console.log(store.qiyeJsonInfo);
diff --git a/src/utils/map2.js b/src/utils/map2.js
index 8c95bc8..2a78f53 100644
--- a/src/utils/map2.js
+++ b/src/utils/map2.js
@@ -2384,41 +2384,57 @@
                 let properties = feature.getProperties().features[0].values_;
                 for (const propertyNames in properties) {
                     if (propertyNames.indexOf("鐩戞帶鍚�") !== -1) {
-                        // objdata = {
-                        //     POITYPE: "SPJK",
-                        //     name: properties["JK鍚嶇О"]._value,
-                        //     type: properties["JK绫诲瀷"]._value,
-                        //     function: properties["鍔熻兘"]._value,
-                        //     area: properties["鎵�鍦ㄥ尯"]._value,
-                        //     number: properties["JK缂栧彿"]._value,
-                        //     code: properties["JK鍐呯爜"]._value,
-                        //     lon: lon,
-                        //     lat: lat,
-                        // }
-                        Message({
-                            message: '杩炴帴鐘舵�佹煡璇腑',
+                        const infoM = Message({
+                            message: '璇ョ偣浣嶈棰戠洃鎺ф煡璇腑锛岃绋嶅悗',
                             type: 'info',
-                            offset: 60,
+                            offset: 75,
                             center: true,
-                            duration: 1000,
+                            duration: 0,
                         });
-                        layerOpen(properties["JK鍚嶇О"], {
-                            width: "100%",
-                            height: "40%",
-                            // offset: [offsetTop + "px", "380px"],
-                            url: "../../static/video/video.html?code=" + properties["JK鍐呯爜"],
-                            fn: {
-                                success: (layero, index) => {
-                                    SmartEarthPopupData.layerContainer = layero;
-                                },
-                                end: () => {
+                        axios
+                            .get(
+                                // 璇锋眰鍦ㄧ嚎鐘舵��
+                                window.gisBaseUrl + "BEApi/getCameraDetails?cameraIndexCode=" +
+                                properties["JK鍐呯爜"]
+                            ).then(res => {
+                                if (res.data.data.status == 1) {
+                                    infoM.close();
+                                    Message({
+                                        message: '瑙嗛鐩戞帶鍦ㄧ嚎涓�',
+                                        type: 'success',
+                                        offset: 75,
+                                        center: true,
+                                        duration: 2000,
+                                    });
+                                    layerOpen(properties["JK鍚嶇О"], {
+                                        width: "100%",
+                                        height: "40%",
+                                        // offset: [offsetTop + "px", "380px"],
+                                        url: "../../static/video/video.html?code=" + properties["JK鍐呯爜"],
+                                        fn: {
+                                            success: (layero, index) => {
+                                                SmartEarthPopupData.layerContainer = layero;
+                                            },
+                                            end: () => {
 
-                                },
-                                cancel: () => {
+                                            },
+                                            cancel: () => {
 
-                                },
-                            },
-                        });
+                                            },
+                                        },
+                                    });
+                                } else {
+                                    infoM.close();
+                                    Message({
+                                        message: '璇ョ偣浣嶈棰戠洃鎺х绾夸腑',
+                                        type: 'errer',
+                                        offset: 75,
+                                        center: true,
+                                        duration: 2000,
+                                    });
+                                    return
+                                }
+                            })
                         return
                     } else if (propertyNames.indexOf("閮ㄤ欢鍚嶇О") !== -1) {
                         objdata = {

--
Gitblit v1.9.3