From 3ba74e7692143fd6dcf4dd885f80f95dfef8387e Mon Sep 17 00:00:00 2001
From: zmc <zmc_li@foxmail.com>
Date: 星期四, 23 十一月 2023 16:09:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/feature-risk_analysis' into feature-risk_analysis

---
 src/main/java/com/flightfeather/monitor/analysis/dust/RiskAnalysisController.kt |   25 +++++++++++++++++--------
 1 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/flightfeather/monitor/analysis/dust/RiskAnalysisController.kt b/src/main/java/com/flightfeather/monitor/analysis/dust/RiskAnalysisController.kt
index afc6bc1..61fe986 100644
--- a/src/main/java/com/flightfeather/monitor/analysis/dust/RiskAnalysisController.kt
+++ b/src/main/java/com/flightfeather/monitor/analysis/dust/RiskAnalysisController.kt
@@ -22,8 +22,8 @@
     private val dustStatisticValueRep: DustStatisticsValueRep,
 ) {
 
-    private var running1 = false
-    private var running2 = false
+    var running1 = false
+    var running2 = false
 
     private var taskDaily: DustRiskAnalysis? = null
     private var taskMonthly: DustRiskMonthAnalysis? = null
@@ -35,6 +35,9 @@
         }
     }
 
+    /**
+     * 鏃ラ闄╃粺璁�,榛樿缁熻鏄ㄥぉ鐨勯闄╁��
+     */
     fun autoRunDaily() {
         val data = riskValueRep.findLatestData("day")
         val yesterday = LocalDate.now().minusDays(1)
@@ -54,15 +57,21 @@
         }
     }
 
+    /**
+     * 鏈堥闄╃粺璁�,鏍规嵁鏄ㄦ棩鏈�鏂版暟鎹墍鍦ㄦ湀浠�,缁熻璇ユ湀鐨勭患鍚堥闄�,鎴嚦鏄ㄥぉ
+     */
     fun autoRunMonthly() {
         val data = riskValueRep.findLatestData("month")
         val lastMonth = LocalDate.now().minusMonths(1).withDayOfMonth(1)
         if (data == null) {
             runMonthly(lastMonth)
         } else {
+            // 鑾峰彇闇�瑕佺粺璁$殑鏈�鏂版湀浠�,鏄槰澶╂墍鍦ㄧ殑鏈堜唤(鍥犱负鐩戞祴鏁版嵁鏄粖澶╄幏鍙栨槰澶╀竴鏁村ぉ鐨勬暟鎹�)
+            val thisMonth = LocalDate.now().minusDays(1)
+            // 鏈�鏂版湀缁熻璁板綍鐨勬椂闂�
             val date = LocalDateTime.ofInstant(data.lst.toInstant(), ZoneId.systemDefault())
-            val sT = date.plusMonths(1).toLocalDate()
-            val du = DateUtil.findDurationMonth(sT, lastMonth)
+            val sT = date.toLocalDate()
+            val du = DateUtil.findDurationMonth(sT, thisMonth)
             du.forEach {
                 runMonthly(it)
             }
@@ -75,7 +84,7 @@
         // 鑾峰彇鎵�鏈夊綋鍓嶄笂绾垮拰鍋滆繍鐨勮澶�
         dustSiteStatusRep.select(listOf(DeviceStatus.ONLINE, DeviceStatus.STOP)).forEach { s ->
             s?.let {
-                taskDaily?.roundInit()
+                taskDaily?.roundInit(s.mnCode, date)
                 val dustSiteDataList = dustSiteDataRep.select(s.mnCode, date)
                 val dustExceptionDataList = dustExceptionDataRep.select(s.mnCode, date)
                 val dustStatisticValueList = dustStatisticValueRep.select(s.mnCode, date)
@@ -95,14 +104,14 @@
         taskMonthly?.init()
         dustSiteStatusRep.select(listOf(DeviceStatus.ONLINE, DeviceStatus.STOP)).forEach { s ->
             s?.let {
-                taskMonthly?.roundInit()
-                val riskValueList = riskValueRep.select(s.mnCode, date)
+                taskMonthly?.roundInit(s.mnCode, date)
+                val riskValueList = riskValueRep.select(s.mnCode, date, "day")
                 taskMonthly?.roundCal(riskValueList)
             }
         }
         // 鎵�鏈夊垎鏋愮粨鏋滃叆搴�
         if (taskMonthly?.resultList?.isNotEmpty() == true) {
-            riskValueRep.insert(taskMonthly?.resultList!!)
+            riskValueRep.insertOrUpdate(taskMonthly?.resultList!!)
         }
         running2 = false
     }

--
Gitblit v1.9.3