From 840c30f54760e693eae46f43c3df791b5034a7df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E5=B0=8F=E4=BA=91?= Date: Tue, 17 Mar 2026 15:12:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BB=BB=E5=8A=A1=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/task/controller/TaskController.java | 12 ++++++++++++ .../com/ruoyi/task/service/api/ITaskService.java | 7 +++++++ .../ruoyi/task/service/impl/TaskServiceImpl.java | 14 ++++++++++++++ 3 files changed, 33 insertions(+) diff --git a/src/main/java/com/ruoyi/task/controller/TaskController.java b/src/main/java/com/ruoyi/task/controller/TaskController.java index f6725ae..623123b 100644 --- a/src/main/java/com/ruoyi/task/controller/TaskController.java +++ b/src/main/java/com/ruoyi/task/controller/TaskController.java @@ -114,6 +114,18 @@ public class TaskController extends BaseController return R.ok(result); } + /** + * 设置 recovery 为true + * @param taskId + * @return + */ + @PutMapping("/recovery/{taskId}") + public R updateTaskRecovery(@PathVariable("taskId") Long taskId) + { + boolean result = taskService.updateTaskRecovery(taskId); + return R.ok(result); + } + /** * 按年统计任务 */ diff --git a/src/main/java/com/ruoyi/task/service/api/ITaskService.java b/src/main/java/com/ruoyi/task/service/api/ITaskService.java index 3fac55c..2f354e2 100644 --- a/src/main/java/com/ruoyi/task/service/api/ITaskService.java +++ b/src/main/java/com/ruoyi/task/service/api/ITaskService.java @@ -82,6 +82,13 @@ public interface ITaskService { */ boolean updateTaskStatus(Long taskId, StatusEnum status); + /** + * 设置 recovery 为 true + * @param taskId 任务ID + * @return 是否成功 + */ + boolean updateTaskRecovery(Long taskId); + /** * 按年统计任务 * @param queryDTO 查询条件 diff --git a/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java b/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java index 939bddb..8208832 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java @@ -165,6 +165,9 @@ public class TaskServiceImpl implements ITaskService { if(Objects.isNull(task.getEndTime())){ task.setEndTime(new java.util.Date()); } + if(status == StatusEnum.FAILED) { + task.setRecovery(false); + } } Task result = taskDomain.updateTask(task); return result != null; @@ -172,6 +175,17 @@ public class TaskServiceImpl implements ITaskService { return false; } + @Override + public boolean updateTaskRecovery(Long taskId) { + Task task = taskDomain.getTaskById(taskId); + if (task != null) { + task.setRecovery(true); + Task result = taskDomain.updateTask(task); + return result != null; + } + return false; + } + @Override public TaskStatByYearServiceDTO getTaskStatByYear(TaskStatQueryServiceDTO queryDTO) { Task task = new Task();