From 1894e98229bb29c92bddae1fd87d4786494531b2 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Tue, 15 Apr 2025 20:28:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/hooks/useMapAggregation/useMapAggregation.js |   57 +++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 43 insertions(+), 14 deletions(-)

diff --git a/src/hooks/useMapAggregation/useMapAggregation.js b/src/hooks/useMapAggregation/useMapAggregation.js
index 246ef47..3565f3c 100644
--- a/src/hooks/useMapAggregation/useMapAggregation.js
+++ b/src/hooks/useMapAggregation/useMapAggregation.js
@@ -13,6 +13,7 @@
 import cesiumOperation from '@/utils/cesium-tsa'
 import { getDeviceRegion, getDeviceRegionCount, getEventDetails, getMapEvents } from '@/api/home/aggregation'
 import { PolyGradientMaterial } from '@/utils/cesium/Material'
+import { start } from 'nprogress'
 /**
  * 机巢聚合功能
  */
@@ -53,6 +54,20 @@
   const store = useStore()
   const userAreaCode = computed(() => store.state.user.userInfo.detail.areaCode)
   const selectedAreaCode = computed(() => store.state.user.selectedAreaCode)
+
+
+  const eventTimeType = computed(() => store.state.home.eventTimeType)
+  const eventTimeRang = computed(() => store.state.home.eventTimeRang)
+
+  let needFly = true
+
+  const combinedValues = computed(() => ({
+    selectedAreaCode: selectedAreaCode.value,
+    eventTimeType: eventTimeType.value,
+    eventTimeRang: eventTimeRang.value,
+  }))
+
+  let saveParams = { area_code: '', date_enum: 'CURRENT_WEEK' }
 
 
   // 确定缩放比例
@@ -105,6 +120,7 @@
   // 事件散点
   let eventList = []
   function processChildren (childrens) {
+    // console.log(childrens, '事件点')
     return (childrens || []).map(item => {
       const arr = processChildren(item.childrens)
       if (item.data) {
@@ -118,13 +134,15 @@
       if (arr.length !== 0) {
         returnObj.childrens = arr
       }
+      console.log(returnObj, '111111')
       return returnObj
     })
   }
 
   // 获取事件聚合
-  function getMapEventCount (area_code) {
-    return getMapEvents({ area_code,date_enum:'CURRENT_WEEK' }).then(res => {
+  function getMapEventCount (params) {
+    console.log(5555555)
+    return getMapEvents(params).then(res => {
       const resData = res?.data?.data
       if (resData?.data) {
         eventList = resData?.data
@@ -163,7 +181,9 @@
   const initMapData = async areaCode => {
     eventList = []
     if (!areaCode) return
-    const list = type === 'device' ? await getDeviceCount(areaCode) : await getMapEventCount(areaCode)
+    saveParams.area_code = areaCode
+    console.log(type, '444')
+    const list = type === 'device' ? await getDeviceCount(areaCode) : await getMapEventCount(saveParams)
     const splashedList = type === 'device'
       ? await getDeviceList(areaCode)
       : eventList.map(i => ({ eventId: i.id, latitude: Number(i.latitude), longitude: Number(i.longitude), type: 'event' }))
@@ -219,19 +239,23 @@
     }
   }
 
+  watch(combinedValues, async (newValue, oldValue) => {
+    if (newValue.eventTimeType) {
+      saveParams = { area_code: newValue.selectedAreaCode, date_enum: store.state.home.eventTimeParams }
+    }
 
-  let needFly = true
+    if (newValue.eventTimeRang) {
+      saveParams = { area_code: newValue.selectedAreaCode, start_date: newValue.eventTimeRang[0], end_date: newValue.eventTimeRang[1] }
+    }
 
-  watch(
-    selectedAreaCode,
-    async (newValue, oldValue) => {
-      needFly = true
-      if (!viewer) return
-      viewer.scene.postRender.removeEventListener(determineScaling)
-      initMapData(newValue).then(() => {
-        viewer.scene.postRender.addEventListener(determineScaling)
-      })
-    },
+    needFly = true
+    if (!viewer) return
+    viewer.scene.postRender.removeEventListener(determineScaling)
+
+    initMapData(newValue.selectedAreaCode).then(() => {
+      viewer.scene.postRender.addEventListener(determineScaling)
+    })
+  },
     { deep: true }
   )
 
@@ -437,10 +461,15 @@
     let clickTargets = viewer.scene.drillPick(click.position).map(item => item.id)
     if (!clickTargets.length) return
 
+    console.log(clickTargets, 11111)
+
     let deviceAggregationFind = findTypeItem(clickTargets, (item) => item?.properties?.customData?._value?.data?.type === 'deviceAggregation')
     let deviceFind = findTypeItem(clickTargets, (item) => item?.properties?.customData?._value?.data?.type === 'device')
+    // "event"
     let eventFind = findTypeItem(clickTargets, (item) => item?.properties?.customData?._value?.data?.type === 'event')
+    // let eventFind = findTypeItem(clickTargets, (item) => item?.properties?.customData?._value?.data?.type === 'eventAggregation')
     currentEntity = deviceAggregationFind || deviceFind || eventFind
+
     if (!currentEntity) return
     if (!currentEntity?.position?._value) return
     // 一定要移除

--
Gitblit v1.9.3