From b8cc591541b88dd2bb93f111f8e8075842dce7ca Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期二, 13 八月 2024 17:21:06 +0800 Subject: [PATCH] 1. 新增设备信息相关功能 2. 修正自评估中数据自动评分的部分逻辑 --- src/main/kotlin/cn/flightfeather/supervision/business/autooutput/dataanalysis/AopDataAnalysis.kt | 83 ++++++++++++++++++++++++----------------- 1 files changed, 49 insertions(+), 34 deletions(-) diff --git a/src/main/kotlin/cn/flightfeather/supervision/business/autooutput/dataanalysis/AopDataAnalysis.kt b/src/main/kotlin/cn/flightfeather/supervision/business/autooutput/dataanalysis/AopDataAnalysis.kt index 1f84f3e..8838bee 100644 --- a/src/main/kotlin/cn/flightfeather/supervision/business/autooutput/dataanalysis/AopDataAnalysis.kt +++ b/src/main/kotlin/cn/flightfeather/supervision/business/autooutput/dataanalysis/AopDataAnalysis.kt @@ -70,48 +70,58 @@ //鑾峰彇鍘熷鐩戞祴鏁版嵁 val dataList = fetchDataResources(evaluationScene) //璁$畻缁熻缁撴灉 - var tempExceedTimes = TempResult() - var tempAvg = TempResult() - var tempMax = TempResult() - var tempMin = TempResult() +// var tempExceedTimes = TempResult() +// var tempAvg = TempResult() +// var tempMax = TempResult() +// var tempMin = TempResult() dataList.forEach { - // 鐩戞祴鐐规湁澶氬彴璁惧鏃讹紝姣忓彴璁惧鍗曠嫭缁熻锛屽彇鍧囧�兼渶楂樼殑涓虹粺璁$粨鏋� - val _tempExceedTimes = TempResult() - val _tempAvg = TempResult() - val _tempMax = TempResult() - val _tempMin = TempResult() + // 鐩戞祴鐐规湁澶氬彴璁惧鏃讹紝姣忓彴璁惧鍗曠嫭璁板綍 + val deviceCode = if (it.isNotEmpty()) { + getDeviceCode(it[0]) + } else { + null + } + val tempExceedTimes = TempResult() + val tempAvg = TempResult() + val tempMax = TempResult() + val tempMin = TempResult() +// val _tempExceedTimes = TempResult() +// val _tempAvg = TempResult() +// val _tempMax = TempResult() +// val _tempMin = TempResult() it.forEach { t -> t?.let { - exceedTimes(t, _tempExceedTimes) - avg(t, _tempAvg) - max(t, _tempMax) - min(t, _tempMin) + exceedTimes(t, tempExceedTimes) + avg(t, tempAvg) + max(t, tempMax) + min(t, tempMin) } } // 淇濈暀鍧囧�兼渶楂樼殑涓�鍙拌澶� - if (_tempAvg.avg > tempAvg.avg) { - tempExceedTimes = _tempExceedTimes - tempAvg = _tempAvg - tempMax = _tempMax - tempMin = _tempMin +// if (_tempAvg.avg > tempAvg.avg) { +// tempExceedTimes = _tempExceedTimes +// tempAvg = _tempAvg +// tempMax = _tempMax +// tempMin = _tempMin +// } + val dustDataResult = DustDataResult().apply { + drSceneId = evaluationScene.scene.value?.guid + drSceneName = evaluationScene.scene.value?.name + drDeviceCode = deviceCode + drTime = source?.config?.startTime + drExceedTimes = tempExceedTimes.count + drAvg = tempAvg.avg + drMax = tempMax.total + drMin = tempMin.total + drOverAvgPer = overAvgRate(drAvg, dAvg) + drDataNum = count(dataList) + // 褰撴暟鎹噺涓�0鏃讹紝瓒呮湀搴﹀尯鍧囧�肩櫨鍒嗘瘮鍙樹负0 + if (drDataNum == 0) drOverAvgPer = .0 + drEffectiveRate = effectiveRate(dataList, evaluationScene) } + //鏇存柊鍏ュ簱 + aopOutput.toDbDataResult(dustDataResult) } - val dustDataResult = DustDataResult().apply { - drSceneId = evaluationScene.scene.value?.guid - drSceneName = evaluationScene.scene.value?.name - drTime = source?.config?.startTime - drExceedTimes = tempExceedTimes.count - drAvg = tempAvg.avg - drMax = tempMax.total - drMin = tempMin.total - drOverAvgPer = overAvgRate(drAvg, dAvg) - drDataNum = count(dataList) - // 褰撴暟鎹噺涓�0鏃讹紝瓒呮湀搴﹀尯鍧囧�肩櫨鍒嗘瘮鍙樹负0 - if (drDataNum == 0) drOverAvgPer = .0 - drEffectiveRate = effectiveRate(dataList, evaluationScene) - } - //鏇存柊鍏ュ簱 - aopOutput.toDbDataResult(dustDataResult) } } @@ -122,6 +132,11 @@ abstract fun districtAvg(source: AopDataSource?): Double? /** + * 鑾峰彇璁惧缂栧彿 + */ + abstract fun getDeviceCode(data: T?): String? + + /** * 鑾峰彇鍘熷鐩戞祴鏁版嵁 */ abstract fun fetchDataResources(evaluationScene: AopDataSource.EvaluationScene): List<List<T?>> -- Gitblit v1.9.3