From 20b8d870efbbb89564b599561fc69202ba41223f Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 10 四月 2026 13:36:42 +0800
Subject: [PATCH] 2026.4.10 1. 修复采样时间超过当前时间的数据依旧能存入数据库的bug
---
src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/exceptiontype/BaseRTExcChangeRate.kt | 38 ++++++++++++++++++++++++++------------
1 files changed, 26 insertions(+), 12 deletions(-)
diff --git a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/exceptiontype/BaseRTExcChangeRate.kt b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/exceptiontype/BaseRTExcChangeRate.kt
index e36031e..24a584d 100644
--- a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/exceptiontype/BaseRTExcChangeRate.kt
+++ b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/exceptiontype/BaseRTExcChangeRate.kt
@@ -30,6 +30,8 @@
abstract var changeRate: MutableMap<FactorType, RTExcWindLevelConfig.WindLevelCondition>
+ override var judgeMethod: JudgeMethod = JudgeMethod.M2
+
override fun getExceptionType(): ExceptionType {
return ExceptionType.TYPE9
}
@@ -64,7 +66,7 @@
// 璁$畻鍚庝竴涓暟鎹浉姣斾簬鍓嶄竴涓暟鎹殑鍙樺寲閫熺巼
val v = (nValue - pValue)
val b1 = v in rate.mutationRate.first..rate.mutationRate.second
- println("鍥犲瓙锛�${f.des}锛岄�熺巼锛�${v}锛�${b1}")
+// println("鍥犲瓙锛�${f.des}锛岄�熺巼锛�${v}锛�${b1}")
res[f] = b1
} else {
res[f] = false
@@ -77,12 +79,12 @@
return tag.exceptionData.size >= (changeRate[factorType]?.countLimit ?: 1)
}
- override fun needCut(tag: ExceptionTag, hasException: Boolean?): Boolean {
+ override fun needCut(tag: ExceptionTag, hasException: Boolean?, data: BaseRealTimeData): Boolean {
// 鎸夌収鏃堕暱鍜岃窛绂婚檺鍒跺皢寮傚父鎴彇
if (tag.exceptionData.isEmpty()) return false
val se = tag.exceptionData.first()
- val ee = tag.exceptionData.last()
+ val ee = data
val sTime = LocalDateTime.ofInstant(se.dataTime?.toInstant(), ZoneId.systemDefault())
val eTime = LocalDateTime.ofInstant(ee.dataTime?.toInstant(), ZoneId.systemDefault())
@@ -110,18 +112,30 @@
}
override fun newResult(tag: ExceptionTag, factor: FactorFilter.SelectedFactor): PollutedClue {
- return PollutedClue(tag, factor, getExceptionType(), config, changeRate[factor.main])
+ return PollutedClue()
}
- override fun onNewException(
- tag: ExceptionTag,
- factor: FactorFilter.SelectedFactor,
- exceptionStatus: ExceptionStatusType,
- ) {
- super.onNewException(tag, factor, exceptionStatus)
+ override fun newResult(exceptions: List<Pair<FactorFilter.SelectedFactor, ExceptionTag>>): PollutedClue {
+ return if (exceptions.isEmpty())
+ PollutedClue()
+ else
+ PollutedClue(exceptions, getExceptionType(), config, changeRate[exceptions[0].first.main])
+ }
+
+// override fun mergeExceptionResult() {
+// super.mergeExceptionResult()
+// callback?.let { func ->
+// result.forEach {
+// func.invoke(it)
+// }
+// }
+// }
+
+ override fun onNewResult(result: List<PollutedClue>) {
callback?.let { func ->
- val exc = tag.exceptionResult.last()
- func.invoke(exc as PollutedClue)
+ result.forEach {
+ func.invoke(it)
+ }
}
}
}
\ No newline at end of file
--
Gitblit v1.9.3