修复洪水预报自动执行方案任务
parent
f6b357f5bb
commit
2d4d43ff9a
|
|
@ -45,9 +45,9 @@ public class ForecastTaskController {
|
|||
public R<ForecastTask> insert(@Validated(Insert.class) @RequestBody ForecastTask dto) {
|
||||
dto.setId(IdWorker.getId());
|
||||
boolean result = service.save(dto);
|
||||
// if (result) {
|
||||
// taskGroupHandler.addCronJob(String.valueOf(dto.getId()), dto);
|
||||
// }
|
||||
if (result) {
|
||||
taskGroupHandler.addCronJob(String.valueOf(dto.getId()), dto);
|
||||
}
|
||||
return R.ok(result ? dto : null);
|
||||
}
|
||||
|
||||
|
|
@ -61,11 +61,11 @@ public class ForecastTaskController {
|
|||
dto.setChtm(oldTask.getChtm());
|
||||
dto.setUpdateTm(new Date());
|
||||
boolean result = service.updateById(dto);
|
||||
// if (result) {
|
||||
// // 先删除,再重新添加
|
||||
// taskGroupHandler.removeCronJob(String.valueOf(dto.getId()));
|
||||
// taskGroupHandler.addCronJob(String.valueOf(dto.getId()), dto);
|
||||
// }
|
||||
if (result) {
|
||||
// 先删除,再重新添加
|
||||
taskGroupHandler.removeCronJob(String.valueOf(dto.getId()));
|
||||
taskGroupHandler.addCronJob(String.valueOf(dto.getId()), dto);
|
||||
}
|
||||
return R.ok(result ? dto : null);
|
||||
}
|
||||
|
||||
|
|
@ -73,9 +73,9 @@ public class ForecastTaskController {
|
|||
@GetMapping("/del/{id}")
|
||||
public R<Boolean> del(@Schema(name = "id") @PathVariable("id") Serializable id) {
|
||||
boolean b = service.removeById(id);
|
||||
// if (b) {
|
||||
// taskGroupHandler.removeCronJob((String) id);
|
||||
// }
|
||||
if (b) {
|
||||
taskGroupHandler.removeCronJob((String) id);
|
||||
}
|
||||
return R.ok(service.removeById(id));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -138,4 +138,20 @@ public class ForecastTask extends GenericPageParams implements Serializable {
|
|||
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
|
||||
@TableField(exist = false)
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 上一次执行时间
|
||||
*/
|
||||
@TableField(value="last_excute_tm")
|
||||
@Schema(description="上一次执行时间")
|
||||
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
|
||||
private Date lastExcuteTm;
|
||||
|
||||
/**
|
||||
* 上一次结果保存时间
|
||||
*/
|
||||
@TableField(value="last_resultsave_tm")
|
||||
@Schema(description="上一次结果保存时间")
|
||||
@JsonFormat(pattern = DateFormatString.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8")
|
||||
private Date lastResultsaveTm;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import com.gunshi.project.xyt.model.ForecastUseparam;
|
|||
import com.gunshi.project.xyt.service.AttResBaseService;
|
||||
import com.gunshi.project.xyt.service.ForecastProjectService;
|
||||
import com.gunshi.project.xyt.service.ForecastResultsService;
|
||||
import com.gunshi.project.xyt.service.ForecastTaskService;
|
||||
import com.gunshi.project.xyt.service.ForecastUseparamService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.quartz.Job;
|
||||
|
|
@ -57,6 +58,8 @@ public class TaskGroupJob implements Job {
|
|||
|
||||
@Autowired
|
||||
private ForecastProjectService forecastProjectService;
|
||||
@Autowired
|
||||
private ForecastTaskService forecastTaskService;
|
||||
|
||||
@Override
|
||||
public void execute(JobExecutionContext context) throws JobExecutionException {
|
||||
|
|
@ -65,6 +68,7 @@ public class TaskGroupJob implements Job {
|
|||
String jobId = (String) jdMap.get("jobId");
|
||||
ForecastTask forecastTask = (ForecastTask) jdMap.get("forecastTask");
|
||||
log.info("{}----TaskGroupJob-计划执行开始===>jobId:{}", sdf.format(nowDate), jobId);
|
||||
forecastTask.setLastExcuteTm(nowDate);
|
||||
try {
|
||||
// 根据执行时间、预热期、预见期获取对应的预报、开始、结束时间
|
||||
Date nowTime = sdfMinute.parse(sdf.format(nowDate));
|
||||
|
|
@ -112,7 +116,7 @@ public class TaskGroupJob implements Job {
|
|||
forecastProject.setProjectTm(nowTime);
|
||||
forecastProject.setStartTm(startTime);
|
||||
forecastProject.setEndTm(endTime);
|
||||
forecastProject.setUserId("0000000000_系统");
|
||||
forecastProject.setUserId("1_系统");
|
||||
forecastProject.setForecastPeriod(forecastPeriod);
|
||||
forecastProject.setForecastWarm(forecastWarm);
|
||||
forecastProject.setTimeInterval(forecastTask.getTimeInterval());
|
||||
|
|
@ -121,10 +125,12 @@ public class TaskGroupJob implements Job {
|
|||
boolean save = forecastProjectService.save(forecastProject);
|
||||
if (save) {
|
||||
forecastProjectService.saveForecastResults(forecastProject);
|
||||
forecastTask.setLastResultsaveTm(nowDate);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
forecastTaskService.updateById(forecastTask);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue