| | |
| | | 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 |
| | |
| | | /** |
| | | * 数据获取控制器 |
| | | */ |
| | | @Slf4j |
| | | @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, |
| | | ) { |
| | | |
| | | 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) |
| | | val log: Logger = LoggerFactory.getLogger(TaskController::class.java) |
| | | } |
| | | |
| | | private val timeTask = mutableListOf<BaseTimingTask>() |
| | |
| | | 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) |
| | | log.info("添加定时任务完成,任务总计${timeTask.size}个") |
| | | } |
| | | |
| | | fun run() { |
| | |
| | | } |
| | | |
| | | private fun fetchTask(isFirst: Boolean = false) { |
| | | val cal = Calendar.getInstance() |
| | | val time = LocalTime.now() |
| | | val sec = time.second |
| | | val delay = 60L - sec |