From b34727ebd73a4f346d53730865e83fd5b3e5a0ef Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期四, 26 十月 2023 16:36:37 +0800
Subject: [PATCH] 1. 新增定时任务和定时任务日志数据库表映射; 2. 修改异常分析和日、月统计分析定时任务的执行逻辑

---
 src/main/java/com/flightfeather/monitor/scheduledtasks/TaskController.kt |   43 +++++++++++++++++++------------------------
 1 files changed, 19 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/flightfeather/monitor/scheduledtasks/TaskController.kt b/src/main/java/com/flightfeather/monitor/scheduledtasks/TaskController.kt
index 5839d7c..0970b24 100644
--- a/src/main/java/com/flightfeather/monitor/scheduledtasks/TaskController.kt
+++ b/src/main/java/com/flightfeather/monitor/scheduledtasks/TaskController.kt
@@ -1,6 +1,7 @@
 package com.flightfeather.monitor.scheduledtasks
 
-import cn.flightfeather.supervision.timingtask.BaseTimingTask
+import lombok.extern.slf4j.Slf4j
+import org.slf4j.Logger
 import org.slf4j.LoggerFactory
 import org.springframework.stereotype.Component
 import java.time.LocalDateTime
@@ -15,21 +16,16 @@
  */
 @Component
 class TaskController(
-        /*瀹炰緥鍚� 绫诲悕*/
-//    fetchVOC: TaskFetchVOC,
-//    pushFume: TaskPushFume,
-//    ledgerCopy: TaskLedgerCopy,
-//    ledgerRemind: TaskLedgerRemind,
-//    taskJinAnLampEnterBaseInfo: TaskJinAnLampEnterBaseInfo,
-//    taskJinAnLampDeviceData: TaskJinAnLampDeviceData,
-//    taskJinAnConstructionSiteInfo: TaskJinAnConstructionSiteInfo,
-//    taskJinAnHourlyDustData: TaskJinAnHourlyDustData
+    dustExceptionAnalysisTask: DustExceptionAnalysisTask,
+    dustDailyStatisticAnalysisTask: DustDailyStatisticAnalysisTask,
+    dustMonthlyStatisticAnalysisTask: DustMonthlyStatisticAnalysisTask,
+    dustAnalysisTask: DustAnalysisTask,
 ) {
 
     companion object {
-        private const val FETCH_PERIOD_MIN = 1L * 60
-        private const val MAINTAIN_PERIOD_MIN = 5L * 60
-        val LOGGER = LoggerFactory.getLogger(TaskController::class.java)
+        private const val FETCH_PERIOD_MIN = 15L
+        private const val MAINTAIN_PERIOD_MIN = 15L
+        val log: Logger = LoggerFactory.getLogger(TaskController::class.java)
     }
 
     private val timeTask = mutableListOf<BaseTimingTask>()
@@ -39,13 +35,13 @@
     private var maintainTime: Date = Date()
 
     init {
-        LOGGER.info("娣诲姞瀹氭椂浠诲姟")
+        log.info("娣诲姞瀹氭椂浠诲姟")
         timeTask.clear()
-
-       /*鍋氱殑瀹氭椂浠诲姟鍔犺繘鏉�*/
-
-
-        LOGGER.info("娣诲姞瀹氭椂浠诲姟瀹屾垚锛屼换鍔℃�昏${timeTask.size}涓�")
+//        timeTask.add(dustExceptionAnalysisTask)
+//        timeTask.add(dustDailyStatisticAnalysisTask)
+//        timeTask.add(dustMonthlyStatisticAnalysisTask)
+        timeTask.add(dustAnalysisTask)
+        log.info("娣诲姞瀹氭椂浠诲姟瀹屾垚锛屼换鍔℃�昏${timeTask.size}涓�")
     }
 
     fun run() {
@@ -54,10 +50,9 @@
     }
 
     private fun fetchTask(isFirst: Boolean = false) {
-        val cal = Calendar.getInstance()
         val time = LocalTime.now()
-        val sec = time.second
-        val delay = 60L - sec
+        val min = time.minute
+        val delay = FETCH_PERIOD_MIN - min % FETCH_PERIOD_MIN
 //        var localtime = LocalDateTime.of(2021, 4, 16, 9, 0)
         if (!isFirst) {
             schedule = closeThread(schedule)
@@ -75,7 +70,7 @@
                 it.execute(localtime)
             }
 //            localtime = localtime.plusMinutes(1)
-        }, delay, FETCH_PERIOD_MIN, TimeUnit.SECONDS)
+        }, delay, FETCH_PERIOD_MIN, TimeUnit.MINUTES)
     }
 
     private fun maintainTask(isFirst: Boolean = false) {
@@ -87,7 +82,7 @@
             if (Date().time - taskTime.time > (FETCH_PERIOD_MIN + 1) * 60 * 1000) {
                 fetchTask()
             }
-        }, 0, MAINTAIN_PERIOD_MIN, TimeUnit.SECONDS)
+        }, 0, MAINTAIN_PERIOD_MIN, TimeUnit.MINUTES)
     }
 
     private fun closeThread(s: ScheduledExecutorService): ScheduledExecutorService {

--
Gitblit v1.9.3