From c5c80dbc2632719789b91d236de7cf1e6497557d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期一, 23 九月 2024 19:15:43 +0800
Subject: [PATCH] 大屏分离平台在线和考核成绩接口

---
 src/views/screen/components/map3.vue |  119 +++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 79 insertions(+), 40 deletions(-)

diff --git a/src/views/screen/components/map3.vue b/src/views/screen/components/map3.vue
index 1fbcbf2..72efd83 100644
--- a/src/views/screen/components/map3.vue
+++ b/src/views/screen/components/map3.vue
@@ -14,12 +14,53 @@
       type: Object,
       default: {},
     },
+    platformData: {
+      type: Object,
+      default: {},
+    },
   },
   data() {
     return {
       myChart: null, // ECharts 瀹炰緥
       big: 130,
-      data: [
+      dotData: [
+        {
+          name: '鑷祦浜曞尯',
+          value: [104.665471408, 29.23008885, 300],
+          platformOnline: true
+        },
+        {
+          name: '楂樻柊鍖�',
+          value: [104.805193, 29.3, 300],
+          platformOnline: true
+        },
+        {
+          name: '澶у畨鍖�',
+          value: [104.90805, 29.345946, 300],
+          platformOnline: true
+        },
+        {
+          name: '娌挎哗鍖�',
+          value: [104.80804, 29.200594, 300],
+          platformOnline: true
+        },
+        {
+          name: '璐′簳鍖�',
+          value: [104.579106, 29.241427, 300],
+          platformOnline: true
+        },
+        {
+          name: '鑽e幙',
+          value: [104.3534, 29.3538, 300],
+          platformOnline: true
+        },
+        {
+          name: '瀵岄『鍘�',
+          value: [104.96, 29.08, 300],
+          platformOnline: true
+        }
+      ],
+      markData: [
         {
           name: '鑷祦浜曞尯',
           number: '0',
@@ -72,11 +113,21 @@
       this.getChinData('鑷础甯�', chinaJson)
     },
     updateMapData() {
-      this.data.forEach(item => {
-        if (this.geoCoordinates[item.name]) {
-          item.number = this.geoCoordinates[item.name].score || '0'
-        }
-      })
+      if (this.geoCoordinates) {
+        this.markData.forEach(item => {
+          if (this.geoCoordinates[item.name]) {
+            item.number = this.geoCoordinates[item.name].score || '0'
+          }
+        })
+      }
+      if (this.platformData) {
+        this.dotData.forEach(item => {
+          console.log('鏇存柊鏁版嵁', this.platformData)
+          if (this.platformData[item.name]) {
+            item.platformOnline = this.platformData[item.name].platformOnline
+          }
+        })
+      }
     },
     updateChart() {
       if (this.myChart) {
@@ -84,7 +135,11 @@
         // Update the scatter3D series data
         const scatterSeries = option.series.find(s => s.type === 'scatter3D' && s.name !== '鏁g偣鍥�');
         if (scatterSeries) {
-          scatterSeries.data = this.data;
+          scatterSeries.data = this.markData;
+        }
+        const dotSeries = option.series.find(s => s.type === 'scatter3D' && s.name === '鏁g偣鍥�');
+        if (dotSeries) {
+          dotSeries.data = this.dotData;
         }
         this.myChart.setOption(option);
       }
@@ -250,41 +305,18 @@
             silent: true,
 
             itemStyle: {
-              color: '#fc840e',
+              color: function (param) {
+                if (param.data.platformOnline) {
+                  return '#04CD44';
+                } else {
+                  return '#FF0756';
+                }
+              },
               borderWidth: 1,
               borderColor: '#fff'
             },
 
-            data: [
-              {
-                name: '鑷祦浜曞尯',
-                value: [104.665471408, 29.23008885, 300]
-              },
-              {
-                name: '楂樻柊鍖�',
-                value: [104.805193, 29.3, 300]
-              },
-              {
-                name: '澶у畨鍖�',
-                value: [104.90805, 29.345946, 300]
-              },
-              {
-                name: '娌挎哗鍖�',
-                value: [104.80804, 29.200594, 300]
-              },
-              {
-                name: '璐′簳鍖�',
-                value: [104.579106, 29.241427, 300]
-              },
-              {
-                name: '鑽e幙',
-                value: [104.3534, 29.3538, 300]
-              },
-              {
-                name: '瀵岄『鍘�',
-                value: [104.96, 29.08, 300]
-              }
-            ]
+            data: that.dotData
           },
           {
             type: 'lines3D',
@@ -355,12 +387,12 @@
         coordinateSystem: 'geo3D',
         symbol: 'circle',
         symbolSize: 0,
-        data: that.data,
+        data: that.markData,
 
         itemStyle: {
           opacity: 1,
           borderWidth: 1,
-          borderColor: 'a4ddee'
+          borderColor: 'a4ddee',
         },
 
         label: {
@@ -404,6 +436,13 @@
         this.updateChart();
       },
       deep: true
+    },
+    platformData: {
+      handler(newValue) {
+        this.updateMapData(newValue);
+        this.updateChart();
+      },
+      deep: true
     }
   },
 }

--
Gitblit v1.8.0