package com.doumee.config.quartz;
|
|
import com.doumee.biz.system.SystemJobTriggerBiz;
|
import com.doumee.biz.system.dto.TriggerJobDTO;
|
import com.doumee.core.constants.Constants;
|
import lombok.extern.slf4j.Slf4j;
|
import org.quartz.JobExecutionContext;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.scheduling.quartz.QuartzJobBean;
|
import org.springframework.stereotype.Component;
|
|
/**
|
* JOB处理器
|
* @author Eva.Caesar Liu
|
* @since 2025/03/31 16:44
|
*/
|
@Slf4j
|
@Component
|
public class JobHandler extends QuartzJobBean {
|
|
@Autowired
|
private SystemJobTriggerBiz systemJobTriggerBiz;
|
|
@Override
|
protected void executeInternal(JobExecutionContext jobExecutionContext) {
|
Integer jobId = jobExecutionContext.getMergedJobDataMap().getInt(Constants.Job.JOB_DATA_MAP_JOB_ID);
|
TriggerJobDTO dto = new TriggerJobDTO();
|
dto.setId(jobId);
|
dto.setTriggerType(Constants.Job.TriggerType.SYSTEM.getCode());
|
dto.setScheduledFireTime(jobExecutionContext.getScheduledFireTime());
|
dto.setBusinessTime(jobExecutionContext.getScheduledFireTime());
|
dto.setFireTime(jobExecutionContext.getFireTime());
|
dto.setNextFireTime(jobExecutionContext.getTrigger().getNextFireTime());
|
systemJobTriggerBiz.trigger(dto);
|
}
|
|
}
|