package com.yd.csf.api.handler;

import com.alibaba.fastjson.JSON;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.yd.csf.service.service.ICalmTaskService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.util.Objects;

/**
 * 冷静期定时发送任务处理器 - XXL-Job定时任务执行器
 * 使用@XxlJob注解方式
 */
@Component
@Slf4j
public class CalmSendJobHandler {

    @Autowired
    private ICalmTaskService iCalmTaskService;

    /**
     * XXL-Job任务执行入口方法
     */
    @XxlJob("calmSendJobHandler")
    public void execute() throws Exception {
//        //主任务发送时间
//        LocalDateTime taskSendTime = LocalDateTime.now();
//        // 从XXL-Job参数中获取任务ID
//        String param = XxlJobHelper.getJobParam();
//        // 记录任务开始日志
//        log.info("开始冷静期定时发送任务，参数: {}", param);
//
//        // 解析任务参数（参数为冷静期定时任务业务ID）
//        String taskBizId = param;
//        // 根据冷静期定时任务业务ID查询冷静期定时任务信息
//        EmailTask emailTask = iCalmTaskService.queryOne(taskBizId);
//        log.info("根据邮件任务业务ID查询邮件任务信息: {}: " + JSON.toJSONString(emailTask));
//
//        // 检查邮件任务是否存在
//        if (Objects.isNull(emailTask)) {
//            // 记录错误并返回
//            XxlJobHelper.log("邮件任务不存在: " + taskBizId);
//            XxlJobHelper.handleFail("邮件任务不存在");
//            return;
//        }
    }

}