fix: 修正定时任务不一致不运行的问题

main
huangfeng 1 month ago
parent b8bd40dd53
commit 25b2fab132

@ -1,5 +1,6 @@
package com.chenxuan.base.entity; package com.chenxuan.base.entity;
import com.alibaba.fastjson.JSON;
import com.chenxuan.entity.model.ScheduleJob; import com.chenxuan.entity.model.ScheduleJob;
import com.chenxuan.utils.ScheduleRunnable; import com.chenxuan.utils.ScheduleRunnable;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -28,8 +29,8 @@ public class CustomQuartzJobBean extends QuartzJobBean {
@Override @Override
protected void executeInternal(JobExecutionContext context) throws JobExecutionException { protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
//任务开始时间 //任务开始时间
JobDataMap jobDataMap = context.getMergedJobDataMap(); String jsonJob = context.getMergedJobDataMap().getString(JobConstant.JOB_PARAM_KEY);
ScheduleJob scheduleJob = (ScheduleJob)jobDataMap.get( JobConstant.JOB_PARAM_KEY ); ScheduleJob scheduleJob = JSON.parseObject(jsonJob, ScheduleJob.class);
//任务开始时间 //任务开始时间
long startTime = System.currentTimeMillis(); long startTime = System.currentTimeMillis();

@ -43,7 +43,7 @@ public class QuartzManagerServiceImpl implements QuartzManagerService {
//传入调度的数据在QuartzFactory中需要使用 //传入调度的数据在QuartzFactory中需要使用
JobDataMap jobDetailMap = jobDetail.getJobDataMap(); JobDataMap jobDetailMap = jobDetail.getJobDataMap();
jobDetailMap.put(JobConstant.JOB_PARAM_KEY, job); jobDetailMap.put(JobConstant.JOB_PARAM_KEY, JSON.toJSONString(job));
//调度作业 //调度作业
scheduler.scheduleJob(jobDetail, trigger); scheduler.scheduleJob(jobDetail, trigger);
String status = job.getStatus(); String status = job.getStatus();

Loading…
Cancel
Save