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/main/kotlin/com/flightfeather/uav/biz/mission/MissionUtil.kt | 33 +++++++++++++++++++++++++++++++++ 1 files changed, 33 insertions(+), 0 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/biz/mission/MissionUtil.kt b/src/main/kotlin/com/flightfeather/uav/biz/mission/MissionUtil.kt index be6523c..2b49150 100644 --- a/src/main/kotlin/com/flightfeather/uav/biz/mission/MissionUtil.kt +++ b/src/main/kotlin/com/flightfeather/uav/biz/mission/MissionUtil.kt @@ -56,4 +56,37 @@ // 杩斿洖涔¢晣鍜岃閬撳悕绉扮粍鍚� return address.township } + + /** + * 鏁版嵁娓呮礂 + * 1. 淇鐢变簬纭欢璁惧鍗¢】瀵艰嚧鐨勬暟鎹噰鏍锋椂闂翠笉鍙橀棶棰橈紝閲囩敤鑷姩绱姞鏁版嵁鍛ㄦ湡鐨勬柟寮忎慨鏀归噰鏍锋椂闂� + * @param data 鍘熷鏁版嵁鍒楄〃 + * @param period 鏁版嵁鍛ㄦ湡锛屽崟浣嶏細绉� + * @return 娓呮礂鍚庨渶瑕佷慨鏀圭殑鏁版嵁鍒楄〃 + */ + fun dataClean(dataList: List<BaseRealTimeData>, period: Long): List<BaseRealTimeData> { + val cleanedData = mutableListOf<BaseRealTimeData>() + var errorData: BaseRealTimeData? = null + dataList.forEachIndexed { index, data -> + if (index == 0) { + return@forEachIndexed + } + val lastOne = dataList[index - 1] + if (errorData == null) { + if (data.dataTime!!.time == lastOne.dataTime!!.time) { + data.dataTime?.time = lastOne.dataTime?.time!!.plus(period * 1000) + cleanedData.add(data) + errorData = lastOne + } + } else { + if (data.dataTime!!.time == errorData!!.dataTime!!.time) { + data.dataTime?.time = lastOne.dataTime?.time!!.plus(period * 1000) + cleanedData.add(data) + } else { + errorData = null + } + } + } + return cleanedData + } } -- Gitblit v1.9.3