From e8f935a01d75c89ac591a80b9318eac2480e2dcd Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期四, 27 六月 2024 17:40:01 +0800 Subject: [PATCH] 1. 新增走航轨迹融合功能 --- src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/BaseExceptionAnalysis.kt | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/BaseExceptionAnalysis.kt b/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/BaseExceptionAnalysis.kt index 94d782f..139166f 100644 --- a/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/BaseExceptionAnalysis.kt +++ b/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/BaseExceptionAnalysis.kt @@ -1,5 +1,6 @@ package com.flightfeather.uav.biz.dataanalysis +import com.flightfeather.uav.biz.FactorFilter import com.flightfeather.uav.biz.dataanalysis.model.DataAnalysisConfig import com.flightfeather.uav.biz.dataanalysis.model.ExceptionResult import com.flightfeather.uav.biz.dataanalysis.model.ExceptionType @@ -34,24 +35,26 @@ * 鐢熸垚涓�鏉″紓甯稿垎鏋愮粨鏋� */ open fun newResult( - start: BaseRealTimeData, end: BaseRealTimeData?, factorIndex: Int, + start: BaseRealTimeData, end: BaseRealTimeData?, factor: FactorFilter.SelectedFactor, exceptionData: List<BaseRealTimeData>, ): ExceptionResult { val eType = getExceptionType() - val factorType = FactorType.getByIndex(factorIndex) return ExceptionResult().apply { missionCode = config.mission.missionCode deviceCode = start.deviceCode exception = eType.des exceptionType = eType.value - factorId = factorType?.value - factorName = factorType?.des + factorId = factor.main.value + factorName = factor.main.des + subFactorId = factor.subs.map { it.value } + subFactorName = factor.subs.map { it.des } + selectedFactor = factor startTime = DateUtil.instance.dateToString(start.dataTime, DateUtil.DateStyle.HH_MM_SS) endTime = DateUtil.instance.dateToString(end?.dataTime, DateUtil.DateStyle.HH_MM_SS) ?: startTime - startData = start.getByFactorIndex(factorIndex) - endData = end?.getByFactorIndex(factorIndex) ?: startData + startData = start.getByFactorType(factor.main) + endData = end?.getByFactorType(factor.main) ?: startData - val s = dataSummary(exceptionData, factorIndex) + val s = dataSummary(exceptionData, factor.main) avg = s.first min = s.second max = s.third @@ -60,13 +63,13 @@ } } - fun dataSummary(exceptionData: List<BaseRealTimeData?>, factorIndex: Int): Triple<Float, Float, Float> { + fun dataSummary(exceptionData: List<BaseRealTimeData?>, factorType: FactorType): Triple<Float, Float, Float> { var min = -1f var max = -1f var total = 0f var count = 0 exceptionData.forEach { - val value = it?.getByFactorIndex(factorIndex) ?: return@forEach + val value = it?.getByFactorType(factorType) ?: return@forEach if (min == -1f || min > value) { min = value } -- Gitblit v1.9.3