From 8c6e742562d0c8647e0ee8deff01a3eb176d677b Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期二, 02 九月 2025 17:30:47 +0800
Subject: [PATCH] 2025.9.2 1. 新增走航任务统计功能(待完成)

---
 src/test/kotlin/com/flightfeather/uav/biz/sourcetrace/SourceTraceControllerTest.kt |   75 +++++++++++++++++++++----------------
 1 files changed, 42 insertions(+), 33 deletions(-)

diff --git a/src/test/kotlin/com/flightfeather/uav/biz/sourcetrace/SourceTraceControllerTest.kt b/src/test/kotlin/com/flightfeather/uav/biz/sourcetrace/SourceTraceControllerTest.kt
index 5988849..8210d7f 100644
--- a/src/test/kotlin/com/flightfeather/uav/biz/sourcetrace/SourceTraceControllerTest.kt
+++ b/src/test/kotlin/com/flightfeather/uav/biz/sourcetrace/SourceTraceControllerTest.kt
@@ -14,6 +14,8 @@
 import org.springframework.boot.test.context.SpringBootTest
 import org.springframework.test.context.junit4.SpringRunner
 import tk.mybatis.mapper.entity.Example
+import java.time.LocalDateTime
+import java.time.ZoneId
 
 @RunWith(SpringRunner::class)
 @SpringBootTest
@@ -36,31 +38,34 @@
 
     @Test
     fun autoSourceTrace() {
-        val sourceTraceController = SourceTraceController(sceneInfoRep, sourceTraceRep, false)
-        val mCode = listOf(
-            "SH-CN-20241227", "SH-CN-20241127", "SH-CN-20240906", "SH-CN-20240830(05)",
-            "SH-CN-20240830(04)", "SH-CN-20240823",
-            "SH-CN-20240723(02)",
-//            "SH-CN-20250723(01)"
-        )
-        mCode.forEach { c->
-            missionRep.findOne(c)?.let {m ->
-                val rtData = realTimeDataService.getSecondData(
-                    m?.deviceType,
-                    m?.deviceCode,
-                    DateUtil.instance.dateToString(m?.startTime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_SS),
-                    DateUtil.instance.dateToString(m?.endTime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_SS),
-                    null,
-                    1,
-                    10000
-                )
-                rtData.data?.forEach { d ->
-                    val rtdVehicle = d.toBaseRealTimeData(RealTimeDataVehicle::class.java)
+        val sourceTraceController = SourceTraceController(sceneInfoRep, sourceTraceRep, true)
+//        val mCode = listOf(
+//            "SH-CN-20241227", "SH-CN-20241127", "SH-CN-20240906", "SH-CN-20240830(05)",
+//            "SH-CN-20240830(04)", "SH-CN-20240823",
+//            "SH-CN-20240723(02)",
+////            "SH-CN-20250723(01)"
+//        )
+        val startTime = LocalDateTime.of(2025, 7, 1, 0, 0, 0).atZone(ZoneId.systemDefault()).toInstant()
+        val endTime = LocalDateTime.of(2025, 9, 30, 23, 59, 59).atZone(ZoneId.systemDefault()).toInstant()
+        val missions = missionMapper.selectByExample(Example(Mission::class.java).apply {
+            createCriteria().andBetween("startTime", startTime, endTime)
+        })
+        missions.forEach { m ->
+            val rtData = realTimeDataService.getSecondData(
+                m?.deviceType,
+                m?.deviceCode,
+                DateUtil.instance.dateToString(m?.startTime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_SS),
+                DateUtil.instance.dateToString(m?.endTime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_SS),
+                null,
+                1,
+                10000
+            )
+            rtData.data?.forEach { d ->
+                val rtdVehicle = d.toBaseRealTimeData(RealTimeDataVehicle::class.java)
 //            Thread.sleep(500)
-                    sourceTraceController.addOneData(rtdVehicle)
-                }
-                sourceTraceController.initTask()
+                sourceTraceController.addOneData(rtdVehicle)
             }
+            sourceTraceController.initTask()
         }
 //        val missions = missionMapper.selectByExample(Example(Mission::class.java).apply {
 //            createCriteria().andEqualTo("deviceType", "0a")
@@ -103,16 +108,20 @@
 
     @Test
     fun deleteSourceTrace() {
-        val mCode = listOf(
-            "SH-CN-20241227", "SH-CN-20241127", "SH-CN-20240906", "SH-CN-20240830(05)",
-            "SH-CN-20240830(04)", "SH-CN-20240823",
-            "SH-CN-20240723(02)",
-//            "SH-CN-20250723(01)"
-        )
-        mCode.forEach {c ->
-            missionRep.findOne(c)?.let {
-                sourceTraceRep.delete(it)
-            }
+//        val mCode = listOf(
+//            "SH-CN-20241227", "SH-CN-20241127", "SH-CN-20240906", "SH-CN-20240830(05)",
+//            "SH-CN-20240830(04)", "SH-CN-20240823",
+//            "SH-CN-20240723(02)",
+////            "SH-CN-20250723(01)"
+//        )
+        val startTime = LocalDateTime.of(2025, 7, 1, 0, 0, 0).atZone(ZoneId.systemDefault()).toInstant()
+        val endTime = LocalDateTime.of(2025, 9, 30, 23, 59, 59).atZone(ZoneId.systemDefault()).toInstant()
+        val missions = missionMapper.selectByExample(Example(Mission::class.java).apply {
+            createCriteria().andBetween("startTime", startTime, endTime)
+        })
+        missions.forEach { m ->
+            m ?: return@forEach
+            sourceTraceRep.delete(m)
         }
     }
 

--
Gitblit v1.9.3