feat(fix):定时任务修复

This commit is contained in:
junjie 2021-06-16 14:09:37 +08:00
parent 4dff1f4d96
commit b622ee8ae7
3 changed files with 19 additions and 5 deletions

View File

@ -2,13 +2,13 @@ package io.dataease.job.sechedule;
import io.dataease.commons.utils.LogUtil;
import org.quartz.*;
import org.quartz.impl.triggers.CronTriggerImpl;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component
public class ScheduleManager {
@ -84,6 +84,8 @@ public class ScheduleManager {
} else {
triggerBuilder.endAt(endTime);
}
} else {
triggerBuilder.endAt(null);
}
triggerBuilder.withSchedule(CronScheduleBuilder.cronSchedule(cron));
@ -167,6 +169,8 @@ public class ScheduleManager {
} else {
triggerBuilder.endAt(endTime);
}
} else {
triggerBuilder.endAt(null);
}
triggerBuilder.withSchedule(CronScheduleBuilder.cronSchedule(cron));// 触发器时间设定

View File

@ -26,7 +26,13 @@ public class AppStartListener implements ApplicationListener<ApplicationReadyEve
List<DatasetTableTask> list = dataSetTableTaskService.list(new DatasetTableTask());
for (DatasetTableTask task : list) {
try {
scheduleService.addSchedule(task);
if (task.getEndTime() != null && task.getEndTime() > 0) {
if (task.getEndTime() > System.currentTimeMillis()) {
scheduleService.addSchedule(task);
}
} else {
scheduleService.addSchedule(task);
}
} catch (Exception e) {
e.printStackTrace();
}

View File

@ -37,6 +37,10 @@ public class ScheduleService {
// if (endTime.before(new Date())) {
// return;
// }
if (endTime.before(new Date())) {
deleteSchedule(datasetTableTask);
return;
}
}
scheduleManager.addOrUpdateCronJob(new JobKey(datasetTableTask.getId(), datasetTableTask.getTableId()),