diff --git a/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java b/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java index b151bc7..8764399 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java @@ -226,6 +226,20 @@ public class TaskPlanServiceImpl implements ITaskPlanService { public boolean updateTaskPlan(TaskPlanDTO taskPlanDTO) { TaskPlan taskPlan = TaskPlanDTOConvert.toDomain(taskPlanDTO); TaskPlan result = taskPlanDomain.updateTaskPlan(taskPlan); + + if (result != null) { + // 先删除该计划下的所有未执行任务 + List tasks = taskDomain.getTaskByPlanId(result.getId()); + for (Task task : tasks) { + if (task.getStatus() == StatusEnum.PENDING) { + taskDomain.deleteTask(task.getId()); + } + } + + // 重新创建任务 + createTaskFromPlan(result); + } + return result != null; }