From df6487f4fa7d1ed1d953b98f25c7f376c59c9c7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E5=B0=8F=E4=BA=91?= Date: Sat, 14 Mar 2026 10:41:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/task/controller/TaskController.java | 23 ++++++++++--------- .../convert/TaskControllerConvert.java | 13 ++++++----- .../com/ruoyi/task/domain/model/Task.java | 13 +++++++++++ .../task/mapper/entity/TaskInfoEntity.java | 11 +++++++++ .../task/service/convert/TaskDTOConvert.java | 1 + .../com/ruoyi/task/service/dto/TaskDTO.java | 11 +++++++++ .../db/migration/V8__Add_recovery_column.sql | 2 ++ 7 files changed, 57 insertions(+), 17 deletions(-) create mode 100644 src/main/resources/db/migration/V8__Add_recovery_column.sql diff --git a/src/main/java/com/ruoyi/task/controller/TaskController.java b/src/main/java/com/ruoyi/task/controller/TaskController.java index d29fa36..f6725ae 100644 --- a/src/main/java/com/ruoyi/task/controller/TaskController.java +++ b/src/main/java/com/ruoyi/task/controller/TaskController.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.task.api.domain.TaskStatByMonthVO; import com.ruoyi.task.api.domain.TaskStatQueryVO; +import com.ruoyi.task.api.domain.TaskVO; import com.ruoyi.task.api.enums.TaskCategoryEnum; import com.ruoyi.task.api.enums.TaskTypeEnum; import com.ruoyi.task.api.enums.StatusEnum; @@ -35,13 +36,13 @@ public class TaskController extends BaseController * 创建普通-立即任务 */ @PostMapping - public R createTaskWithoutPlan(@RequestBody com.ruoyi.task.api.domain.TaskDTO taskDTO) + public R createTaskWithoutPlan(@RequestBody TaskVO taskVO) { - taskDTO.setTaskType(TaskTypeEnum.IMMEDIATELY); - taskDTO.setTaskCategory(TaskCategoryEnum.NORMAL); - log.info("createTaskWithoutPlan {}", JSON.toJSONString(taskDTO)); + taskVO.setTaskType(TaskTypeEnum.IMMEDIATELY); + taskVO.setTaskCategory(TaskCategoryEnum.NORMAL); + log.info("createTaskWithoutPlan {}", JSON.toJSONString(taskVO)); - Long taskId = taskService.createTaskWithoutPlan(TaskControllerConvert.to(taskDTO)); + Long taskId = taskService.createTaskWithoutPlan(TaskControllerConvert.to(taskVO)); return R.ok(taskId); } @@ -49,7 +50,7 @@ public class TaskController extends BaseController * 获取任务详细信息 */ @GetMapping(value = "/{taskId}") - public R getTaskById(@PathVariable("taskId") Long taskId) + public R getTaskById(@PathVariable("taskId") Long taskId) { return R.ok(TaskControllerConvert.from(taskService.getTaskById(taskId))); } @@ -67,10 +68,10 @@ public class TaskController extends BaseController * 更新任务 */ @PutMapping - public R updateTask(@RequestBody com.ruoyi.task.api.domain.TaskDTO taskDTO) + public R updateTask(@RequestBody TaskVO taskVO) { - log.info("updateTask {}", JSON.toJSONString(taskDTO)); - boolean result = taskService.updateTask(TaskControllerConvert.to(taskDTO)); + log.info("updateTask {}", JSON.toJSONString(taskVO)); + boolean result = taskService.updateTask(TaskControllerConvert.to(taskVO)); return R.ok(result); } @@ -89,7 +90,7 @@ public class TaskController extends BaseController * 根据无人机ID查询任务列表 */ @GetMapping("/uav/{uavId}") - public R> getTaskByUavId(@PathVariable("uavId") String uavId) + public R> getTaskByUavId(@PathVariable("uavId") String uavId) { return R.ok(TaskControllerConvert.fromList(taskService.getTaskByUavId(uavId))); } @@ -98,7 +99,7 @@ public class TaskController extends BaseController * 根据无人机ID获取最新的一条任务 */ @GetMapping("/uav/current/{uavId}") - public R getCurrentTaskByUavId(@PathVariable("uavId") String uavId) + public R getCurrentTaskByUavId(@PathVariable("uavId") String uavId) { return R.ok(TaskControllerConvert.from(taskService.getCurrentTaskByUavId(uavId))); } diff --git a/src/main/java/com/ruoyi/task/controller/convert/TaskControllerConvert.java b/src/main/java/com/ruoyi/task/controller/convert/TaskControllerConvert.java index 862c573..8c00efb 100644 --- a/src/main/java/com/ruoyi/task/controller/convert/TaskControllerConvert.java +++ b/src/main/java/com/ruoyi/task/controller/convert/TaskControllerConvert.java @@ -1,6 +1,7 @@ package com.ruoyi.task.controller.convert; import com.ruoyi.common.core.utils.BaseConvert; +import com.ruoyi.task.api.domain.TaskVO; import java.util.List; @@ -10,39 +11,39 @@ import java.util.List; * @author ruoyi * @date 2026-03-09 */ -public class TaskControllerConvert extends BaseConvert { +public class TaskControllerConvert extends BaseConvert { private static final TaskControllerConvert INSTANCE = new TaskControllerConvert(); private TaskControllerConvert() { - super(com.ruoyi.task.service.dto.TaskDTO.class, com.ruoyi.task.api.domain.TaskDTO.class); + super(com.ruoyi.task.service.dto.TaskDTO.class, TaskVO.class); } /** * 服务DTO 转 API DTO */ - public static com.ruoyi.task.api.domain.TaskDTO from(com.ruoyi.task.service.dto.TaskDTO dto) { + public static TaskVO from(com.ruoyi.task.service.dto.TaskDTO dto) { return INSTANCE.innerFrom(dto); } /** * API DTO 转 服务DTO */ - public static com.ruoyi.task.service.dto.TaskDTO to(com.ruoyi.task.api.domain.TaskDTO apiDTO) { + public static com.ruoyi.task.service.dto.TaskDTO to(TaskVO apiDTO) { return INSTANCE.innerTo(apiDTO); } /** * 服务DTO List 转 API DTO List */ - public static List fromList(List dtoList) { + public static List fromList(List dtoList) { return INSTANCE.innerFromList(dtoList); } /** * API DTO List 转 服务DTO List */ - public static List toList(List apiDTOList) { + public static List toList(List apiDTOList) { return INSTANCE.innerToList(apiDTOList); } } diff --git a/src/main/java/com/ruoyi/task/domain/model/Task.java b/src/main/java/com/ruoyi/task/domain/model/Task.java index fbbea90..9b39b04 100644 --- a/src/main/java/com/ruoyi/task/domain/model/Task.java +++ b/src/main/java/com/ruoyi/task/domain/model/Task.java @@ -42,6 +42,11 @@ public class Task { /** 状态 */ private StatusEnum status; + /** + * 错误是否恢复 + */ + private Boolean recovery ; + /** 开始时间 */ private Date startTime; @@ -148,6 +153,14 @@ public class Task { this.status = status; } + public Boolean getRecovery() { + return recovery; + } + + public void setRecovery(Boolean recovery) { + this.recovery = recovery; + } + public Date getStartTime() { return startTime; } diff --git a/src/main/java/com/ruoyi/task/mapper/entity/TaskInfoEntity.java b/src/main/java/com/ruoyi/task/mapper/entity/TaskInfoEntity.java index 3746fb2..96a479f 100644 --- a/src/main/java/com/ruoyi/task/mapper/entity/TaskInfoEntity.java +++ b/src/main/java/com/ruoyi/task/mapper/entity/TaskInfoEntity.java @@ -41,6 +41,9 @@ public class TaskInfoEntity extends BaseEntity { /** 状态 */ private String status; + /** 错误是否恢复 */ + private Boolean recovery; + /** 开始时间 */ private Date startTime; @@ -131,6 +134,14 @@ public class TaskInfoEntity extends BaseEntity { this.status = status; } + public Boolean getRecovery() { + return recovery; + } + + public void setRecovery(Boolean recovery) { + this.recovery = recovery; + } + public Date getStartTime() { return startTime; } diff --git a/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java b/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java index 3ec6bc4..93627ff 100644 --- a/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java +++ b/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java @@ -32,6 +32,7 @@ public class TaskDTOConvert { dto.setDescription(task.getDescription()); dto.setRemark(task.getRemark()); dto.setRouteUrl(task.getRouteUrl()); + dto.setRecovery(task.getRecovery()); return dto; } diff --git a/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java b/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java index 32d311f..8ded1a4 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java @@ -44,6 +44,9 @@ public class TaskDTO { /** 状态 */ private StatusEnum status; + /** 错误是否恢复 */ + private Boolean recovery; + /** 开始时间 */ private Date startTime; @@ -138,6 +141,14 @@ public class TaskDTO { this.status = status; } + public Boolean getRecovery() { + return recovery; + } + + public void setRecovery(Boolean recovery) { + this.recovery = recovery; + } + public Date getStartTime() { return startTime; } diff --git a/src/main/resources/db/migration/V8__Add_recovery_column.sql b/src/main/resources/db/migration/V8__Add_recovery_column.sql new file mode 100644 index 0000000..ffce61a --- /dev/null +++ b/src/main/resources/db/migration/V8__Add_recovery_column.sql @@ -0,0 +1,2 @@ +-- 为任务表添加 recovery 字段 +ALTER TABLE task_info ADD COLUMN recovery BOOLEAN DEFAULT FALSE COMMENT '错误是否恢复';