From 9c797fa0d704ef8ffb65cd1716b8eb694b4c46c3 Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期五, 04 七月 2025 17:28:00 +0800 Subject: [PATCH] 2025.7.4 1. 新增动态污染溯源新的判定逻辑 --- src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedClue.kt | 59 ++++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 42 insertions(+), 17 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedClue.kt b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedClue.kt index 6775572..c87812e 100644 --- a/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedClue.kt +++ b/src/main/kotlin/com/flightfeather/uav/biz/sourcetrace/model/PollutedClue.kt @@ -2,6 +2,7 @@ import com.flightfeather.uav.biz.FactorFilter import com.flightfeather.uav.biz.dataanalysis.BaseExceptionResult +import com.flightfeather.uav.biz.dataanalysis.model.ExceptionTag import com.flightfeather.uav.biz.dataanalysis.model.ExceptionType import com.flightfeather.uav.biz.sourcetrace.config.RTExcWindLevelConfig import com.flightfeather.uav.common.utils.DateUtil @@ -9,6 +10,7 @@ import com.flightfeather.uav.domain.entity.BaseRealTimeData import com.flightfeather.uav.domain.entity.SceneInfo import com.flightfeather.uav.domain.repository.SceneInfoRep +import com.flightfeather.uav.socket.sender.MsgType /** * 姹℃煋绾跨储 @@ -16,26 +18,49 @@ * @date 2025/5/27 * @author feiyu02 */ -class PollutedClue() : BaseExceptionResult() { +class PollutedClue() : BaseExceptionResult(){ + +// constructor( +// start: BaseRealTimeData, +// end: BaseRealTimeData?, +// factor: FactorFilter.SelectedFactor, +// exceptionData: List<BaseRealTimeData>, +// eType: ExceptionType, +// config: RTExcWindLevelConfig, +// windLevelCondition: RTExcWindLevelConfig.WindLevelCondition?, +// ) : this() { +// if (exceptionData.isEmpty()) return +// pollutedData = PollutedData(start, end, factor, exceptionData, eType, windLevelCondition) +// pollutedArea = PollutedArea(exceptionData, config, windLevelCondition) +// } constructor( - start: BaseRealTimeData, - end: BaseRealTimeData?, - factor: FactorFilter.SelectedFactor, - exceptionData: List<BaseRealTimeData>, - eType: ExceptionType, - config: RTExcWindLevelConfig, - windLevelCondition: RTExcWindLevelConfig.WindLevelCondition - ) : this() { - this.factor = factor - if (exceptionData.isEmpty()) return - pollutedData = PollutedData(start, end, factor, exceptionData, eType, windLevelCondition) - pollutedArea = PollutedArea(exceptionData, config, windLevelCondition) + tag: ExceptionTag, factor: FactorFilter.SelectedFactor, eType: ExceptionType, config: RTExcWindLevelConfig, + windLevelCondition: RTExcWindLevelConfig.WindLevelCondition?, + ) : this() +// this( +// tag.startData!!, tag.endData, factor, tag.exceptionData, eType, config, +// windLevelCondition +// ) + { + if (tag.exceptionData.isEmpty()) return + deviceCode = tag.startData?.deviceCode + pollutedData = PollutedData( + tag.startData!!, tag.endData, factor, tag.exceptionData, tag.historyData, eType, windLevelCondition + ) + pollutedArea = PollutedArea(tag.historyData, tag.exceptionData, config, windLevelCondition) } /** * 6. 灞曠ず鏁版嵁鍙樺寲鎯呭喌锛屼笂鍗囬�熺巼绛夌瓑 */ + + /** + * @see [MsgType] + */ + var msgType: Int? = null + + var deviceCode: String? = null var pollutedData: PollutedData? = null @@ -43,13 +68,13 @@ var pollutedSource: PollutedSource? = null - private var factor: FactorFilter.SelectedFactor? = null - /** * 鏌ユ壘绯荤粺鍐呴儴婧簮鑼冨洿鍐呯殑姹℃煋浼佷笟 */ fun searchScenes(sceneInfoRep: SceneInfoRep) { - if (pollutedArea == null || factor == null) return - pollutedSource = PollutedSource().also { it.searchScenes(pollutedArea!!, sceneInfoRep, factor!!) } + if (pollutedArea == null || pollutedData == null) return + pollutedSource = PollutedSource().also { + it.searchScenes(pollutedArea!!, sceneInfoRep, pollutedData!!) + } } } \ No newline at end of file -- Gitblit v1.9.3