package com.flightfeather.uav.biz.dataanalysis.exceptiontype
|
|
import com.flightfeather.uav.biz.dataanalysis.BaseExceptionContinuousSingle
|
import com.flightfeather.uav.biz.dataanalysis.model.DataAnalysisConfig
|
import com.flightfeather.uav.biz.dataanalysis.model.ExceptionType
|
import com.flightfeather.uav.domain.entity.BaseRealTimeData
|
import com.flightfeather.uav.socket.eunm.FactorType
|
|
/**
|
* 数据超标异常分析
|
*/
|
@Deprecated("原超标判定逻辑设定的超标值有漏洞,")
|
class ExceptionDataExceed(config: DataAnalysisConfig) : BaseExceptionContinuousSingle(config) {
|
|
override fun getExceptionType(): ExceptionType = ExceptionType.TYPE2
|
|
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[f] = bool
|
}
|
return res
|
}
|
|
override fun judgeDuration(sIndex: Int, eIndex: Int): Boolean {
|
return true
|
}
|
}
|