From 94fee0b511279679b43e210878d3d36e5a14384b Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期二, 30 九月 2025 09:14:10 +0800
Subject: [PATCH] 2025.9.30 1. 新增走航任务统计功能

---
 src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/SatelliteDataCalculateServiceImplTest.kt |   67 ++++++++++++++++++++++++++++-----
 1 files changed, 57 insertions(+), 10 deletions(-)

diff --git a/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/SatelliteDataCalculateServiceImplTest.kt b/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/SatelliteDataCalculateServiceImplTest.kt
index 151383a..50d0001 100644
--- a/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/SatelliteDataCalculateServiceImplTest.kt
+++ b/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/SatelliteDataCalculateServiceImplTest.kt
@@ -1,7 +1,12 @@
 package com.flightfeather.uav.lightshare.service.impl
 
+import com.flightfeather.uav.common.utils.TimeUtil
+import com.flightfeather.uav.domain.entity.GridData
 import com.flightfeather.uav.domain.entity.GridDataDetail
 import com.flightfeather.uav.domain.mapper.GridDataDetailMapper
+import com.flightfeather.uav.domain.mapper.GridDataMapper
+import com.flightfeather.uav.domain.mapper.MissionMapper
+import com.flightfeather.uav.lightshare.eunm.SatelliteDataType
 import com.flightfeather.uav.lightshare.service.SatelliteDataCalculateService
 import org.junit.Test
 import org.junit.runner.RunWith
@@ -19,7 +24,13 @@
     lateinit var satelliteDataCalculateService: SatelliteDataCalculateService
 
     @Autowired
+    lateinit var gridDataMapper: GridDataMapper
+
+    @Autowired
     lateinit var gridDataDetailMapper: GridDataDetailMapper
+
+    @Autowired
+    lateinit var missionMapper: MissionMapper
 
     /**
      * 鍒锋柊姣忕粍鏁版嵁鐨勬暟鎹帓鍚�
@@ -40,8 +51,13 @@
     }
 
     @Test
+    fun calGridVertex() {
+        satelliteDataCalculateService.calGridVertex(5)
+    }
+
+    @Test
     fun splitGrid() {
-        val res = satelliteDataCalculateService.splitGrid(1, 4)
+        val res = satelliteDataCalculateService.splitGrid(1, 10)
 //        println(res)
     }
 
@@ -62,22 +78,53 @@
     fun dataFusion() {
         val missionList =
             listOf(
-                "SH-CN-20241216",
-                "SH-CN-20241202",
-                "SH-CN-20241127",
-                "SH-CN-20241126-1",
-                "SH-CN-20241126-2",
-                "SH-CN-20241108",
-                "SH-CN-20240823"
+//                "SH-CN-20241216",
+//                "SH-CN-20241202",
+//                "SH-CN-20241127",
+//                "SH-CN-20241126-1",
+//                "SH-CN-20241126-2",
+//                "SH-CN-20241108",
+//                "SH-CN-20240823"
+                "SH-CN-20240723-01",
+                "SH-CN-20240723-02",
+                "SH-CN-20240830",
+                "SH-CN-20240906",
+                "SH-CN-20241204",
+                "SH-CN-20241210",
+                "SH-CN-20241213",
+                "SH-CN-20241218",
+                "SH-CN-20241220",
+                "SH-CN-20241224",
+                "SH-CN-20241226",
+                "SH-CN-20241227",
+                "SH-CN-20241231",
+                "SH-CN-20250106",
+                "SH-CN-20250108",
+                "SH-CN-20250113",
+                "SH-CN-20250116",
+                "SH-CN-20250120"
             )
         missionList.forEach { m ->
-            satelliteDataCalculateService.dataFusion(m, 3)
+            satelliteDataCalculateService.dataFusion(GridData().apply {
+                missionCode = m
+                type = 3
+            })
         }
 //        val res = satelliteDataCalculateService.dataFusion("SH-CN-20241216", 3)
     }
 
     @Test
-    fun splitDataAndDataFusion() {
+    fun refreshDayTimePeriod() {
+        gridDataMapper.select(GridData().apply { type = SatelliteDataType.Monitor.value.toByte() }).forEach { gd ->
+            missionMapper.selectByPrimaryKey(gd?.missionCode)?.let { m ->
+                TimeUtil.getDayTimeTag(m.startTime, m.endTime)?.let { p ->
+                    gd?.dayTimePeriod = p.first
+                    gd?.dayTimePeriodStart = p.second
+                    gd?.dayTimePeriodEnd = p.third
 
+                    gridDataMapper.updateByPrimaryKey(gd)
+                }
+            }
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3