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
|
|
/**
|
* 数据超标异常分析
|
*/
|
class ExceptionDataExceed(config: DataAnalysisConfig) : BaseExceptionContinuousSingle(config) {
|
|
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)
|
val bool = if (data != null && limit != null) {
|
data >= limit
|
} else {
|
false
|
}
|
res.add(bool)
|
}
|
return res
|
}
|
|
override fun judgeDuration(sIndex: Int, eIndex: Int): Boolean {
|
return true
|
}
|
}
|