From ddaa44400aa478058ffe9349d59904a130b7ce9c Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期四, 28 八月 2025 17:33:11 +0800 Subject: [PATCH] 2025.8.28 1. 新增走航任务统计功能(待完成) --- src/main/kotlin/com/flightfeather/uav/biz/report/MissionInventory.kt | 37 +++++++++++++++++++++++++++++++++++-- 1 files changed, 35 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/biz/report/MissionInventory.kt b/src/main/kotlin/com/flightfeather/uav/biz/report/MissionInventory.kt index 701526e..26a597a 100644 --- a/src/main/kotlin/com/flightfeather/uav/biz/report/MissionInventory.kt +++ b/src/main/kotlin/com/flightfeather/uav/biz/report/MissionInventory.kt @@ -1,9 +1,11 @@ package com.flightfeather.uav.biz.report +import com.flightfeather.uav.biz.sourcetrace.model.PollutedClue import com.flightfeather.uav.domain.entity.Mission import com.flightfeather.uav.domain.entity.SceneInfo import com.flightfeather.uav.lightshare.bean.FactorStatistics import com.flightfeather.uav.socket.eunm.FactorType +import com.flightfeather.uav.socket.sender.MsgType /** * 璧拌埅婧簮娓呭崟 @@ -14,7 +16,7 @@ class MissionInventory { // 璧拌埅娓呭崟淇℃伅 - inner class MissionInfo : Mission() { + class MissionInfo : Mission() { // 棣栬姹℃煋鐗� var mainFactor: String? = null @@ -26,9 +28,40 @@ } // 璧拌埅璇︽儏淇℃伅 - inner class MissionDetail : Mission() { + class MissionDetail : Mission() { var keyScene: List<SceneInfo>? = null var dataStatistics: List<FactorStatistics>? = null + } + /** + * 杈撳嚭璧拌埅娓呭崟 + */ + fun missionList(missionClues: List<Pair<Mission?, List<PollutedClue?>>>): List<MissionInfo> { + + val missionMap = mutableMapOf<String, MissionInfo>() + missionClues.forEach { (mission, clue) -> + mission ?: return@forEach + clue ?: return@forEach + val missionInfo = missionMap[mission.missionCode] ?: MissionInfo().apply { + missionMap[mission.missionCode] = this + } + val abnormalFactors = mutableListOf<FactorType>() + var sceneCount = 0 + clue.forEach { + if (it?.msgType == MsgType.PolClue.value) { + it.pollutedData?.statisticMap?.keys?.forEach { k-> + if (!abnormalFactors.contains(k)) { + abnormalFactors.add(k) + } + } + } + } + // 璁$畻姣忎釜璧拌埅浠诲姟鐨勬墍鏈夊紓甯稿洜瀛� + + // 璁$畻姣忎釜璧拌埅浠诲姟鐨勯瑕佹薄鏌撶墿 + + // 璁$畻姣忎釜璧拌埅浠诲姟鐨勬函婧愬満鏅暟閲� + } + return mutableListOf() } } \ No newline at end of file -- Gitblit v1.9.3