修复洪水预报自动执行方案任务执行
parent
2d4d43ff9a
commit
e3f6304665
|
|
@ -19,13 +19,11 @@ import lombok.extern.slf4j.Slf4j;
|
||||||
import org.quartz.Job;
|
import org.quartz.Job;
|
||||||
import org.quartz.JobDataMap;
|
import org.quartz.JobDataMap;
|
||||||
import org.quartz.JobExecutionContext;
|
import org.quartz.JobExecutionContext;
|
||||||
import org.quartz.JobExecutionException;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -62,7 +60,7 @@ public class TaskGroupJob implements Job {
|
||||||
private ForecastTaskService forecastTaskService;
|
private ForecastTaskService forecastTaskService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(JobExecutionContext context) throws JobExecutionException {
|
public void execute(JobExecutionContext context) {
|
||||||
Date nowDate = new Date();
|
Date nowDate = new Date();
|
||||||
JobDataMap jdMap = context.getJobDetail().getJobDataMap();
|
JobDataMap jdMap = context.getJobDetail().getJobDataMap();
|
||||||
String jobId = (String) jdMap.get("jobId");
|
String jobId = (String) jdMap.get("jobId");
|
||||||
|
|
@ -71,7 +69,7 @@ public class TaskGroupJob implements Job {
|
||||||
forecastTask.setLastExcuteTm(nowDate);
|
forecastTask.setLastExcuteTm(nowDate);
|
||||||
try {
|
try {
|
||||||
// 根据执行时间、预热期、预见期获取对应的预报、开始、结束时间
|
// 根据执行时间、预热期、预见期获取对应的预报、开始、结束时间
|
||||||
Date nowTime = sdfMinute.parse(sdf.format(nowDate));
|
Date nowTime = sdfMinute.parse(sdfMinute.format(nowDate));
|
||||||
Date forecastTime = nowTime;
|
Date forecastTime = nowTime;
|
||||||
Date startTime;
|
Date startTime;
|
||||||
Date endTime;
|
Date endTime;
|
||||||
|
|
@ -134,6 +132,6 @@ public class TaskGroupJob implements Job {
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
log.info("{}----TaskGroupJob-计划执行结束===>jobId:{}", sdf.format(LocalDateTime.now()), jobId);
|
log.info("{}----TaskGroupJob-计划执行结束===>jobId:{}", sdf.format(new Date()), jobId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,9 +36,9 @@ public class TaskGroupJobRunner implements CommandLineRunner {
|
||||||
@Override
|
@Override
|
||||||
public void run(String... args) {
|
public void run(String... args) {
|
||||||
// 初始加载数据库里状态为正常的定时任务
|
// 初始加载数据库里状态为正常的定时任务
|
||||||
List<ForecastTask> TaskList = forecastTaskService.list(new QueryWrapper<ForecastTask>().eq("status", "0"));
|
List<ForecastTask> taskList = forecastTaskService.list(new QueryWrapper<ForecastTask>().eq("status", "0"));
|
||||||
if (CollectionUtils.isNotEmpty(TaskList)) {
|
if (CollectionUtils.isNotEmpty(taskList)) {
|
||||||
Map<Long, ForecastTask> jobMap = TaskList.stream()
|
Map<Long, ForecastTask> jobMap = taskList.stream()
|
||||||
.collect(Collectors.toMap(ForecastTask::getId, Function.identity(), (key1, key2)->key2));
|
.collect(Collectors.toMap(ForecastTask::getId, Function.identity(), (key1, key2)->key2));
|
||||||
for (Map.Entry<Long, ForecastTask> entry : jobMap.entrySet()) {
|
for (Map.Entry<Long, ForecastTask> entry : jobMap.entrySet()) {
|
||||||
taskGroupHandler.addCronJob(String.valueOf(entry.getKey()), entry.getValue());
|
taskGroupHandler.addCronJob(String.valueOf(entry.getKey()), entry.getValue());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue