package com.fkzy.warn.common.util;

/**
 * @author zhangjing
 * @date 2025/07/08 19:29
 * @description
 */
import com.fkzy.warn.model.AlarmCase;
import com.fkzy.warn.service.AlarmCaseService;
import com.fkzy.warn.service.ReportService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;
import java.util.Date;

@Component
public class DailyTask {

    @Resource
    ReportService reportService;
    @Resource
    AlarmCaseService alarmCaseService;
    /**
     * 在每年的3月、6月、9月、12月的1号凌晨2点执行。
     * Cron表达式: 秒 分 时 日 月 周
     */
    @Scheduled(cron = "0 0 2 1 3,6,9,12 ?")
    public void executeQuarterlyTask() {
        reportService.quarterlyReport();

        System.out.println("每季度定时任务开始执行，当前时间: " + new Date());
    }
//     北京时间
    @Scheduled(cron = "0 0 1 * * ?", zone = "Asia/Shanghai")
    public void executeAtOneAMInShanghai() {
        alarmCaseService.getAlarmInfo();
        System.out.println("【北京时间】每天凌晨1点执行：" + new Date());
    }
//    @Scheduled(cron = "0 0/5 * * * ?")
//    public void executeEveryFiveMinutes() {
//        metadataRecordService.uploadRecord();
//        System.out.println("【每5分钟执行】当前时间：" + new Date());
//    }

//    @Scheduled(cron = "0 * * * * ?")
//    public void executeEveryMinute() {
//        metadataRecordService.uploadRecord();
//        System.out.println("【每分钟执行】当前时间：" + new Date());
//    }

//    @Scheduled(cron = "0 */3 * * * ?")
//    public void executeEveryThreeMinutes() {
//        metadataRecordService.uploadRecord();
//        System.out.println("【每3分钟执行】当前时间：" + new Date());
//    }
}
