From 7d33080998a2c5b38e8a74dbed2b0f40d39bbe47 Mon Sep 17 00:00:00 2001
From: Riku <risaku@163.com>
Date: 星期三, 04 六月 2025 23:27:26 +0800
Subject: [PATCH] 1. 新增动态污染溯源新的判定逻辑(待完成)
---
src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/exceptiontype/ExceptionDataExceed.kt | 32 ++++++++++++++++++++++++--------
1 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/exceptiontype/ExceptionDataExceed.kt b/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/exceptiontype/ExceptionDataExceed.kt
index 24decf6..96c4d5e 100644
--- a/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/exceptiontype/ExceptionDataExceed.kt
+++ b/src/main/kotlin/com/flightfeather/uav/biz/dataanalysis/exceptiontype/ExceptionDataExceed.kt
@@ -1,33 +1,49 @@
package com.flightfeather.uav.biz.dataanalysis.exceptiontype
+import com.flightfeather.uav.biz.FactorFilter
import com.flightfeather.uav.biz.dataanalysis.BaseExceptionContinuousSingle
import com.flightfeather.uav.biz.dataanalysis.model.DataAnalysisConfig
+import com.flightfeather.uav.biz.dataanalysis.model.ExceptionResult
+import com.flightfeather.uav.biz.dataanalysis.model.ExceptionTag
import com.flightfeather.uav.biz.dataanalysis.model.ExceptionType
import com.flightfeather.uav.domain.entity.BaseRealTimeData
+import com.flightfeather.uav.socket.eunm.FactorType
/**
* 鏁版嵁瓒呮爣寮傚父鍒嗘瀽
*/
-class ExceptionDataExceed(config: DataAnalysisConfig) : BaseExceptionContinuousSingle(config) {
+@Deprecated("鍘熻秴鏍囧垽瀹氶�昏緫璁惧畾鐨勮秴鏍囧�兼湁婕忔礊锛�")
+class ExceptionDataExceed(config: DataAnalysisConfig) :
+ BaseExceptionContinuousSingle<ExceptionTag, DataAnalysisConfig, ExceptionResult>(config, ExceptionTag::class.java) {
override fun getExceptionType(): ExceptionType = ExceptionType.TYPE2
- override fun judgeException(p: BaseRealTimeData?, n: BaseRealTimeData): List<Boolean> {
- val res = mutableListOf<Boolean>()
- repeat(config.factorCount) { i ->
- val data = n.getByFactorIndex(i)
- val limit = config.exceptionSetting.getByFactorIndex(i)
+ override fun judgeException(p: BaseRealTimeData?, n: BaseRealTimeData): MutableMap<FactorType, Boolean> {
+ val res = mutableMapOf<FactorType, Boolean>()
+ config.factorFilter.mainList().forEach { f ->
+ val data = n.getByFactorType(f)
+ val limit = config.exceptionSetting.getByFactorType(f)
val bool = if (data != null && limit != null) {
data >= limit
} else {
false
}
- res.add(bool)
+ res[f] = bool
}
return res
}
- override fun judgeDuration(sIndex: Int, eIndex: Int): Boolean {
+ override fun judgeExceptionCount(tag: ExceptionTag): Boolean {
return true
}
+
+ override fun newResult(
+ start: BaseRealTimeData,
+ end: BaseRealTimeData?,
+ factor: FactorFilter.SelectedFactor,
+ exceptionData: List<BaseRealTimeData>,
+ ): ExceptionResult {
+ val eType = getExceptionType()
+ return ExceptionResult(start, end, factor, exceptionData, config.mission.missionCode, eType)
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3