FaultNotificationJob.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package com.kym.admin.jobs;
  2. import com.kym.service.FaultNotificationService;
  3. import lombok.extern.slf4j.Slf4j;
  4. import org.springframework.scheduling.annotation.Async;
  5. import org.springframework.scheduling.annotation.Scheduled;
  6. import org.springframework.stereotype.Component;
  7. /**
  8. * 故障通知定时兜底任务
  9. * 每5分钟扫描一次,补发遗漏的故障通知
  10. *
  11. * @author skyline
  12. */
  13. @Component
  14. @Slf4j
  15. public class FaultNotificationJob {
  16. private final FaultNotificationService faultNotificationService;
  17. public FaultNotificationJob(FaultNotificationService faultNotificationService) {
  18. this.faultNotificationService = faultNotificationService;
  19. }
  20. @Async("AsyncExecutor")
  21. @Scheduled(cron = "0 */5 * * * ?")
  22. public void reconcileFaultNotifications() {
  23. log.debug("故障通知兜底扫描开始...");
  24. try {
  25. faultNotificationService.reconcileUnnotifiedFaults();
  26. } catch (Exception e) {
  27. log.error("故障通知兜底扫描异常", e);
  28. }
  29. log.debug("故障通知兜底扫描结束");
  30. }
  31. }