From 62c22cbb41f23b3d58a4e7dce51dd6d96097a517 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E5=B0=8F=E4=BA=91?= Date: Fri, 6 Mar 2026 09:19:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task/domain/convert/TaskConvert.java | 14 ++++--- .../task/domain/convert/TaskPlanConvert.java | 20 +++++---- .../task/domain/convert/TaskStatConvert.java | 5 ++- .../task/domain/impl/TaskPlanDomainImpl.java | 5 ++- .../com/ruoyi/task/domain/model/Task.java | 21 ++++++---- .../com/ruoyi/task/domain/model/TaskPlan.java | 39 +++++++++-------- .../com/ruoyi/task/domain/model/TaskStat.java | 10 +++-- .../task/service/convert/TaskDTOConvert.java | 10 +++-- .../service/convert/TaskPlanDTOConvert.java | 4 ++ .../service/convert/TaskStatDTOConvert.java | 1 + .../com/ruoyi/task/service/dto/TaskDTO.java | 21 ++++++---- .../ruoyi/task/service/dto/TaskPlanDTO.java | 39 +++++++++-------- .../ruoyi/task/service/dto/TaskStatDTO.java | 8 ++-- .../service/impl/TaskPlanServiceImpl.java | 42 ++++++++++++++++++- .../task/service/impl/TaskServiceImpl.java | 3 +- 15 files changed, 158 insertions(+), 84 deletions(-) diff --git a/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java b/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java index f8d0d27..b8d804f 100644 --- a/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java +++ b/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java @@ -1,5 +1,7 @@ package com.ruoyi.task.domain.convert; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.mapper.entity.TaskInfoEntity; @@ -14,7 +16,7 @@ public class TaskConvert { /** * 将实体转换为领域模型 * - * @param entity 任务信息实体 + * @param entity 任务实体 * @return 任务领域模型 */ public static Task toModel(TaskInfoEntity entity) { @@ -28,10 +30,10 @@ public class TaskConvert { model.setTaskName(entity.getTaskName()); model.setTaskCategory(entity.getTaskCategory()); model.setTaskType(entity.getTaskType()); - model.setExecuteType(entity.getExecuteType()); + model.setExecuteType(ExecuteTypeEnum.getByCode(entity.getExecuteType())); model.setRouteId(entity.getRouteId()); model.setUavId(entity.getUavId()); - model.setStatus(entity.getStatus()); + model.setStatus(StatusEnum.getByCode(entity.getStatus())); model.setStartTime(entity.getStartTime()); model.setEndTime(entity.getEndTime()); model.setDescription(entity.getDescription()); @@ -48,7 +50,7 @@ public class TaskConvert { * 将领域模型转换为实体 * * @param model 任务领域模型 - * @return 任务信息实体 + * @return 任务实体 */ public static TaskInfoEntity toEntity(Task model) { if (model == null) { @@ -61,10 +63,10 @@ public class TaskConvert { entity.setTaskName(model.getTaskName()); entity.setTaskCategory(model.getTaskCategory()); entity.setTaskType(model.getTaskType()); - entity.setExecuteType(model.getExecuteType()); + entity.setExecuteType(model.getExecuteType() != null ? model.getExecuteType().getCode() : null); entity.setRouteId(model.getRouteId()); entity.setUavId(model.getUavId()); - entity.setStatus(model.getStatus()); + entity.setStatus(model.getStatus() != null ? model.getStatus().getCode() : null); entity.setStartTime(model.getStartTime()); entity.setEndTime(model.getEndTime()); entity.setDescription(model.getDescription()); diff --git a/src/main/java/com/ruoyi/task/domain/convert/TaskPlanConvert.java b/src/main/java/com/ruoyi/task/domain/convert/TaskPlanConvert.java index d1e9ec9..23cb3bc 100644 --- a/src/main/java/com/ruoyi/task/domain/convert/TaskPlanConvert.java +++ b/src/main/java/com/ruoyi/task/domain/convert/TaskPlanConvert.java @@ -1,5 +1,9 @@ package com.ruoyi.task.domain.convert; +import com.ruoyi.task.api.enums.CycleTypeEnum; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.PlanTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.TaskPlan; import com.ruoyi.task.mapper.entity.TaskPlanEntity; @@ -25,16 +29,16 @@ public class TaskPlanConvert { TaskPlan model = new TaskPlan(); model.setId(entity.getId()); model.setPlanName(entity.getPlanName()); - model.setPlanType(entity.getPlanType()); - model.setExecuteType(entity.getExecuteType()); - model.setCycleType(entity.getCycleType()); + model.setPlanType(PlanTypeEnum.getByCode(entity.getPlanType())); + model.setExecuteType(ExecuteTypeEnum.getByCode(entity.getExecuteType())); + model.setCycleType(CycleTypeEnum.getByCode(entity.getCycleType())); model.setCycleValue(entity.getCycleValue()); model.setStartDate(entity.getStartDate()); model.setEndDate(entity.getEndDate()); model.setExecuteTime(entity.getExecuteTime()); model.setRouteId(entity.getRouteId()); model.setUavId(entity.getUavId()); - model.setStatus(entity.getStatus()); + model.setStatus(StatusEnum.getByCode(entity.getStatus())); model.setDescription(entity.getDescription()); model.setCreateBy(entity.getCreateBy()); model.setCreateTime(entity.getCreateTime()); @@ -59,16 +63,16 @@ public class TaskPlanConvert { TaskPlanEntity entity = new TaskPlanEntity(); entity.setId(model.getId()); entity.setPlanName(model.getPlanName()); - entity.setPlanType(model.getPlanType()); - entity.setExecuteType(model.getExecuteType()); - entity.setCycleType(model.getCycleType()); + entity.setPlanType(model.getPlanType() != null ? model.getPlanType().getCode() : null); + entity.setExecuteType(model.getExecuteType() != null ? model.getExecuteType().getCode() : null); + entity.setCycleType(model.getCycleType() != null ? model.getCycleType().getCode() : null); entity.setCycleValue(model.getCycleValue()); entity.setStartDate(model.getStartDate()); entity.setEndDate(model.getEndDate()); entity.setExecuteTime(model.getExecuteTime()); entity.setRouteId(model.getRouteId()); entity.setUavId(model.getUavId()); - entity.setStatus(model.getStatus()); + entity.setStatus(model.getStatus() != null ? model.getStatus().getCode() : null); entity.setDescription(model.getDescription()); entity.setCreateBy(model.getCreateBy()); entity.setCreateTime(model.getCreateTime()); diff --git a/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java b/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java index 2cae5eb..ce7fd32 100644 --- a/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java +++ b/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java @@ -1,5 +1,6 @@ package com.ruoyi.task.domain.convert; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.TaskStat; import com.ruoyi.task.mapper.entity.TaskStatEntity; @@ -28,7 +29,7 @@ public class TaskStatConvert { model.setRouteName(entity.getRouteName()); model.setTaskCategory(entity.getTaskCategory()); model.setTaskType(entity.getTaskType()); - model.setTaskStatus(entity.getTaskStatus()); + model.setTaskStatus(StatusEnum.getByCode(entity.getTaskStatus())); model.setYear(entity.getYear()); model.setMonth(entity.getMonth()); model.setDay(entity.getDay()); @@ -57,7 +58,7 @@ public class TaskStatConvert { entity.setRouteName(model.getRouteName()); entity.setTaskCategory(model.getTaskCategory()); entity.setTaskType(model.getTaskType()); - entity.setTaskStatus(model.getTaskStatus()); + entity.setTaskStatus(model.getTaskStatus() != null ? model.getTaskStatus().getCode() : null); entity.setYear(model.getYear()); entity.setMonth(model.getMonth()); entity.setDay(model.getDay()); diff --git a/src/main/java/com/ruoyi/task/domain/impl/TaskPlanDomainImpl.java b/src/main/java/com/ruoyi/task/domain/impl/TaskPlanDomainImpl.java index 088af30..6eca2f2 100644 --- a/src/main/java/com/ruoyi/task/domain/impl/TaskPlanDomainImpl.java +++ b/src/main/java/com/ruoyi/task/domain/impl/TaskPlanDomainImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.task.domain.impl; +import com.ruoyi.task.api.enums.PlanTypeEnum; import com.ruoyi.task.domain.api.ITaskPlanDomain; import com.ruoyi.task.domain.convert.TaskPlanConvert; import com.ruoyi.task.domain.model.TaskPlan; @@ -26,7 +27,7 @@ public class TaskPlanDomainImpl implements ITaskPlanDomain { @Override public TaskPlan createTimedTaskPlan(TaskPlan taskPlan) { // 设置计划类型为定时任务计划 - taskPlan.setPlanType("定时任务计划"); + taskPlan.setPlanType(PlanTypeEnum.TIMED); // 转换为实体 TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan); // 插入数据库 @@ -38,7 +39,7 @@ public class TaskPlanDomainImpl implements ITaskPlanDomain { @Override public TaskPlan createCycleTaskPlan(TaskPlan taskPlan) { // 设置计划类型为周期任务计划 - taskPlan.setPlanType("周期任务计划"); + taskPlan.setPlanType(PlanTypeEnum.CYCLE); // 转换为实体 TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan); // 插入数据库 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 a2b9e9e..434c1e3 100644 --- a/src/main/java/com/ruoyi/task/domain/model/Task.java +++ b/src/main/java/com/ruoyi/task/domain/model/Task.java @@ -1,5 +1,8 @@ package com.ruoyi.task.domain.model; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; + import java.util.Date; /** @@ -26,7 +29,7 @@ public class Task { private String taskType; /** 执行类型(单次执行、连续执行) */ - private String executeType; + private ExecuteTypeEnum executeType; /** 航线ID */ private Long routeId; @@ -34,8 +37,8 @@ public class Task { /** 无人机ID */ private Long uavId; - /** 状态(0待执行 1执行中 2已完成 3已取消) */ - private String status; + /** 状态 */ + private StatusEnum status; /** 开始时间 */ private Date startTime; @@ -102,11 +105,11 @@ public class Task { this.taskType = taskType; } - public String getExecuteType() { + public ExecuteTypeEnum getExecuteType() { return executeType; } - public void setExecuteType(String executeType) { + public void setExecuteType(ExecuteTypeEnum executeType) { this.executeType = executeType; } @@ -126,11 +129,11 @@ public class Task { this.uavId = uavId; } - public String getStatus() { + public StatusEnum getStatus() { return status; } - public void setStatus(String status) { + public void setStatus(StatusEnum status) { this.status = status; } @@ -206,10 +209,10 @@ public class Task { ", taskName='" + taskName + '\'' + ", taskCategory='" + taskCategory + '\'' + ", taskType='" + taskType + '\'' + - ", executeType='" + executeType + '\'' + + ", executeType=" + executeType + ", routeId=" + routeId + ", uavId=" + uavId + - ", status='" + status + '\'' + + ", status=" + status + ", startTime=" + startTime + ", endTime=" + endTime + ", description='" + description + '\'' + diff --git a/src/main/java/com/ruoyi/task/domain/model/TaskPlan.java b/src/main/java/com/ruoyi/task/domain/model/TaskPlan.java index 33ea024..4f8d785 100644 --- a/src/main/java/com/ruoyi/task/domain/model/TaskPlan.java +++ b/src/main/java/com/ruoyi/task/domain/model/TaskPlan.java @@ -1,5 +1,10 @@ package com.ruoyi.task.domain.model; +import com.ruoyi.task.api.enums.CycleTypeEnum; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.PlanTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; + import java.util.Date; /** @@ -17,13 +22,13 @@ public class TaskPlan { private String planName; /** 计划类型(定时任务计划、周期任务计划) */ - private String planType; + private PlanTypeEnum planType; /** 执行类型(单次执行、连续执行) */ - private String executeType; + private ExecuteTypeEnum executeType; /** 周期类型(日周期、周周期、月周期) */ - private String cycleType; + private CycleTypeEnum cycleType; /** 周期值(周周期:1-7多选,如"1,3,5";月周期:1-31多选,如"1,15,30") */ private String cycleValue; @@ -43,8 +48,8 @@ public class TaskPlan { /** 无人机ID */ private Long uavId; - /** 状态(0待执行 1执行中 2已完成 3已取消) */ - private String status; + /** 状态 */ + private StatusEnum status; /** 描述 */ private String description; @@ -81,27 +86,27 @@ public class TaskPlan { this.planName = planName; } - public String getPlanType() { + public PlanTypeEnum getPlanType() { return planType; } - public void setPlanType(String planType) { + public void setPlanType(PlanTypeEnum planType) { this.planType = planType; } - public String getExecuteType() { + public ExecuteTypeEnum getExecuteType() { return executeType; } - public void setExecuteType(String executeType) { + public void setExecuteType(ExecuteTypeEnum executeType) { this.executeType = executeType; } - public String getCycleType() { + public CycleTypeEnum getCycleType() { return cycleType; } - public void setCycleType(String cycleType) { + public void setCycleType(CycleTypeEnum cycleType) { this.cycleType = cycleType; } @@ -153,11 +158,11 @@ public class TaskPlan { this.uavId = uavId; } - public String getStatus() { + public StatusEnum getStatus() { return status; } - public void setStatus(String status) { + public void setStatus(StatusEnum status) { this.status = status; } @@ -214,16 +219,16 @@ public class TaskPlan { return "TaskPlan{" + "id=" + id + ", planName='" + planName + '\'' + - ", planType='" + planType + '\'' + - ", executeType='" + executeType + '\'' + - ", cycleType='" + cycleType + '\'' + + ", planType=" + planType + + ", executeType=" + executeType + + ", cycleType=" + cycleType + ", cycleValue='" + cycleValue + '\'' + ", startDate=" + startDate + ", endDate=" + endDate + ", executeTime=" + executeTime + ", routeId=" + routeId + ", uavId=" + uavId + - ", status='" + status + '\'' + + ", status=" + status + ", description='" + description + '\'' + '}'; } diff --git a/src/main/java/com/ruoyi/task/domain/model/TaskStat.java b/src/main/java/com/ruoyi/task/domain/model/TaskStat.java index bd6c450..788e05b 100644 --- a/src/main/java/com/ruoyi/task/domain/model/TaskStat.java +++ b/src/main/java/com/ruoyi/task/domain/model/TaskStat.java @@ -1,5 +1,7 @@ package com.ruoyi.task.domain.model; +import com.ruoyi.task.api.enums.StatusEnum; + /** * 任务统计领域模型 * @@ -23,8 +25,8 @@ public class TaskStat { /** 任务类型(如一键起飞) */ private String taskType; - /** 任务状态(0待执行 1执行中 2已完成 3已取消) */ - private String taskStatus; + /** 任务状态 */ + private StatusEnum taskStatus; /** 年份 */ private Integer year; @@ -88,11 +90,11 @@ public class TaskStat { this.taskType = taskType; } - public String getTaskStatus() { + public StatusEnum getTaskStatus() { return taskStatus; } - public void setTaskStatus(String taskStatus) { + public void setTaskStatus(StatusEnum taskStatus) { this.taskStatus = taskStatus; } 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 83ae09a..f5c46a7 100644 --- a/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java +++ b/src/main/java/com/ruoyi/task/service/convert/TaskDTOConvert.java @@ -1,5 +1,7 @@ package com.ruoyi.task.service.convert; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.service.dto.TaskDTO; @@ -15,16 +17,16 @@ public class TaskDTOConvert { TaskDTO dto = new TaskDTO(); dto.setId(task.getId()); - dto.setTaskName(task.getTaskName()); dto.setPlanId(task.getPlanId()); + dto.setTaskName(task.getTaskName()); dto.setTaskCategory(task.getTaskCategory()); dto.setTaskType(task.getTaskType()); dto.setExecuteType(task.getExecuteType()); dto.setRouteId(task.getRouteId()); dto.setUavId(task.getUavId()); + dto.setStatus(task.getStatus()); dto.setStartTime(task.getStartTime()); dto.setEndTime(task.getEndTime()); - dto.setStatus(task.getStatus()); dto.setDescription(task.getDescription()); dto.setRemark(task.getRemark()); @@ -38,16 +40,16 @@ public class TaskDTOConvert { Task task = new Task(); task.setId(dto.getId()); - task.setTaskName(dto.getTaskName()); task.setPlanId(dto.getPlanId()); + task.setTaskName(dto.getTaskName()); task.setTaskCategory(dto.getTaskCategory()); task.setTaskType(dto.getTaskType()); task.setExecuteType(dto.getExecuteType()); task.setRouteId(dto.getRouteId()); task.setUavId(dto.getUavId()); + task.setStatus(dto.getStatus()); task.setStartTime(dto.getStartTime()); task.setEndTime(dto.getEndTime()); - task.setStatus(dto.getStatus()); task.setDescription(dto.getDescription()); task.setRemark(dto.getRemark()); diff --git a/src/main/java/com/ruoyi/task/service/convert/TaskPlanDTOConvert.java b/src/main/java/com/ruoyi/task/service/convert/TaskPlanDTOConvert.java index e934312..d90d07a 100644 --- a/src/main/java/com/ruoyi/task/service/convert/TaskPlanDTOConvert.java +++ b/src/main/java/com/ruoyi/task/service/convert/TaskPlanDTOConvert.java @@ -1,5 +1,9 @@ package com.ruoyi.task.service.convert; +import com.ruoyi.task.api.enums.CycleTypeEnum; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.PlanTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.TaskPlan; import com.ruoyi.task.service.dto.TaskPlanDTO; diff --git a/src/main/java/com/ruoyi/task/service/convert/TaskStatDTOConvert.java b/src/main/java/com/ruoyi/task/service/convert/TaskStatDTOConvert.java index 7e84774..58a675c 100644 --- a/src/main/java/com/ruoyi/task/service/convert/TaskStatDTOConvert.java +++ b/src/main/java/com/ruoyi/task/service/convert/TaskStatDTOConvert.java @@ -1,5 +1,6 @@ package com.ruoyi.task.service.convert; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.model.TaskStat; import com.ruoyi.task.service.dto.TaskStatDTO; 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 c15630e..acbc553 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java @@ -1,5 +1,8 @@ package com.ruoyi.task.service.dto; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; + import java.util.Date; /** @@ -26,7 +29,7 @@ public class TaskDTO { private String taskType; /** 执行类型(单次执行、连续执行) */ - private String executeType; + private ExecuteTypeEnum executeType; /** 航线ID */ private Long routeId; @@ -34,8 +37,8 @@ public class TaskDTO { /** 无人机ID */ private Long uavId; - /** 状态(0待执行 1执行中 2已完成 3已取消) */ - private String status; + /** 状态 */ + private StatusEnum status; /** 开始时间 */ private Date startTime; @@ -90,11 +93,11 @@ public class TaskDTO { this.taskType = taskType; } - public String getExecuteType() { + public ExecuteTypeEnum getExecuteType() { return executeType; } - public void setExecuteType(String executeType) { + public void setExecuteType(ExecuteTypeEnum executeType) { this.executeType = executeType; } @@ -114,11 +117,11 @@ public class TaskDTO { this.uavId = uavId; } - public String getStatus() { + public StatusEnum getStatus() { return status; } - public void setStatus(String status) { + public void setStatus(StatusEnum status) { this.status = status; } @@ -162,10 +165,10 @@ public class TaskDTO { ", taskName='" + taskName + '\'' + ", taskCategory='" + taskCategory + '\'' + ", taskType='" + taskType + '\'' + - ", executeType='" + executeType + '\'' + + ", executeType=" + executeType + ", routeId=" + routeId + ", uavId=" + uavId + - ", status='" + status + '\'' + + ", status=" + status + ", startTime=" + startTime + ", endTime=" + endTime + ", description='" + description + '\'' + diff --git a/src/main/java/com/ruoyi/task/service/dto/TaskPlanDTO.java b/src/main/java/com/ruoyi/task/service/dto/TaskPlanDTO.java index f8fb6cf..eb96323 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskPlanDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskPlanDTO.java @@ -1,5 +1,10 @@ package com.ruoyi.task.service.dto; +import com.ruoyi.task.api.enums.CycleTypeEnum; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.PlanTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; + import java.util.Date; /** @@ -17,13 +22,13 @@ public class TaskPlanDTO { private String planName; /** 计划类型(定时任务计划、周期任务计划) */ - private String planType; + private PlanTypeEnum planType; /** 执行类型(单次执行、连续执行) */ - private String executeType; + private ExecuteTypeEnum executeType; /** 周期类型(日周期、周周期、月周期) */ - private String cycleType; + private CycleTypeEnum cycleType; /** 周期值(周周期:1-7多选,如"1,3,5";月周期:1-31多选,如"1,15,30") */ private String cycleValue; @@ -43,8 +48,8 @@ public class TaskPlanDTO { /** 无人机ID */ private Long uavId; - /** 状态(0待执行 1执行中 2已完成 3已取消) */ - private String status; + /** 状态 */ + private StatusEnum status; /** 描述 */ private String description; @@ -69,27 +74,27 @@ public class TaskPlanDTO { this.planName = planName; } - public String getPlanType() { + public PlanTypeEnum getPlanType() { return planType; } - public void setPlanType(String planType) { + public void setPlanType(PlanTypeEnum planType) { this.planType = planType; } - public String getExecuteType() { + public ExecuteTypeEnum getExecuteType() { return executeType; } - public void setExecuteType(String executeType) { + public void setExecuteType(ExecuteTypeEnum executeType) { this.executeType = executeType; } - public String getCycleType() { + public CycleTypeEnum getCycleType() { return cycleType; } - public void setCycleType(String cycleType) { + public void setCycleType(CycleTypeEnum cycleType) { this.cycleType = cycleType; } @@ -141,11 +146,11 @@ public class TaskPlanDTO { this.uavId = uavId; } - public String getStatus() { + public StatusEnum getStatus() { return status; } - public void setStatus(String status) { + public void setStatus(StatusEnum status) { this.status = status; } @@ -170,16 +175,16 @@ public class TaskPlanDTO { return "TaskPlanDTO{" + "id=" + id + ", planName='" + planName + '\'' + - ", planType='" + planType + '\'' + - ", executeType='" + executeType + '\'' + - ", cycleType='" + cycleType + '\'' + + ", planType=" + planType + + ", executeType=" + executeType + + ", cycleType=" + cycleType + ", cycleValue='" + cycleValue + '\'' + ", startDate=" + startDate + ", endDate=" + endDate + ", executeTime=" + executeTime + ", routeId=" + routeId + ", uavId=" + uavId + - ", status='" + status + '\'' + + ", status=" + status + ", description='" + description + '\'' + '}'; } diff --git a/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java b/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java index a6068e1..01e644f 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java @@ -1,5 +1,7 @@ package com.ruoyi.task.service.dto; +import com.ruoyi.task.api.enums.StatusEnum; + public class TaskStatDTO { private Long id; @@ -7,7 +9,7 @@ public class TaskStatDTO { private String routeName; private String taskCategory; private String taskType; - private String taskStatus; + private StatusEnum taskStatus; private Integer year; private Integer month; private Integer day; @@ -56,11 +58,11 @@ public class TaskStatDTO { this.taskType = taskType; } - public String getTaskStatus() { + public StatusEnum getTaskStatus() { return taskStatus; } - public void setTaskStatus(String taskStatus) { + public void setTaskStatus(StatusEnum taskStatus) { this.taskStatus = taskStatus; } 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 3b8c075..c799346 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java @@ -1,9 +1,15 @@ package com.ruoyi.task.service.impl; +import com.ruoyi.task.api.enums.ExecuteTypeEnum; +import com.ruoyi.task.api.enums.PlanTypeEnum; +import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.domain.api.ITaskDomain; import com.ruoyi.task.domain.api.ITaskPlanDomain; +import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.domain.model.TaskPlan; import com.ruoyi.task.service.api.ITaskPlanService; import com.ruoyi.task.service.convert.TaskPlanDTOConvert; +import com.ruoyi.task.service.convert.TaskDTOConvert; import com.ruoyi.task.service.dto.TaskPlanDTO; import com.ruoyi.task.service.dto.TaskPlanQueryDTO; import org.springframework.beans.factory.annotation.Autowired; @@ -17,10 +23,17 @@ public class TaskPlanServiceImpl implements ITaskPlanService { @Autowired private ITaskPlanDomain taskPlanDomain; + @Autowired + private ITaskDomain taskDomain; + @Override public Long createTimedTaskPlan(TaskPlanDTO taskPlanDTO) { TaskPlan taskPlan = TaskPlanDTOConvert.toDomain(taskPlanDTO); TaskPlan result = taskPlanDomain.createTimedTaskPlan(taskPlan); + + // 创建对应的任务记录 + createTaskFromPlan(result); + return result != null ? result.getId() : null; } @@ -28,9 +41,34 @@ public class TaskPlanServiceImpl implements ITaskPlanService { public Long createCycleTaskPlan(TaskPlanDTO taskPlanDTO) { TaskPlan taskPlan = TaskPlanDTOConvert.toDomain(taskPlanDTO); TaskPlan result = taskPlanDomain.createCycleTaskPlan(taskPlan); + + // 创建对应的任务记录 + createTaskFromPlan(result); + return result != null ? result.getId() : null; } + /** + * 根据任务计划创建任务记录 + */ + private void createTaskFromPlan(TaskPlan taskPlan) { + Task task = new Task(); + task.setTaskName(taskPlan.getPlanName() + "_任务"); + task.setPlanId(taskPlan.getId()); + task.setTaskCategory("计划任务"); + task.setTaskType(taskPlan.getPlanType() != null ? taskPlan.getPlanType().getCode() : null); + task.setExecuteType(taskPlan.getExecuteType()); + task.setRouteId(taskPlan.getRouteId()); + task.setUavId(taskPlan.getUavId()); + task.setStartTime(taskPlan.getStartDate()); + task.setEndTime(taskPlan.getEndDate()); + task.setStatus(StatusEnum.PENDING); // 待执行 + task.setDescription("由任务计划自动创建"); + + // 创建任务 + taskDomain.createTaskWithoutPlan(task); + } + @Override public TaskPlanDTO getTaskPlanById(Long planId) { TaskPlan taskPlan = taskPlanDomain.getTaskPlanById(planId); @@ -42,8 +80,8 @@ public class TaskPlanServiceImpl implements ITaskPlanService { // 创建TaskPlan对象作为查询条件 TaskPlan taskPlan = new TaskPlan(); taskPlan.setRouteId(queryDTO.getRouteId()); - taskPlan.setStatus(queryDTO.getStatus()); - taskPlan.setPlanType(queryDTO.getPlanType()); + taskPlan.setStatus(StatusEnum.getByCode(queryDTO.getStatus())); + taskPlan.setPlanType(PlanTypeEnum.getByCode(queryDTO.getPlanType())); List taskPlans = taskPlanDomain.getTaskPlanList(taskPlan); return TaskPlanDTOConvert.toDTOList(taskPlans); 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 6af74e7..b287277 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.task.service.impl; +import com.ruoyi.task.api.enums.StatusEnum; import com.ruoyi.task.domain.api.ITaskDomain; import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.service.api.ITaskService; @@ -35,7 +36,7 @@ public class TaskServiceImpl implements ITaskService { // 创建Task对象作为查询条件 Task task = new Task(); task.setRouteId(queryDTO.getRouteId()); - task.setStatus(queryDTO.getStatus()); + task.setStatus(StatusEnum.getByCode(queryDTO.getStatus())); task.setTaskCategory(queryDTO.getTaskCategory()); task.setTaskType(queryDTO.getTaskType());