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 b8d804f..1f15444 100644 --- a/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java +++ b/src/main/java/com/ruoyi/task/domain/convert/TaskConvert.java @@ -2,6 +2,8 @@ package com.ruoyi.task.domain.convert; import com.ruoyi.task.api.enums.ExecuteTypeEnum; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.mapper.entity.TaskInfoEntity; @@ -28,8 +30,8 @@ public class TaskConvert { model.setId(entity.getId()); model.setPlanId(entity.getPlanId()); model.setTaskName(entity.getTaskName()); - model.setTaskCategory(entity.getTaskCategory()); - model.setTaskType(entity.getTaskType()); + model.setTaskCategory(TaskCategoryEnum.getByCode(entity.getTaskCategory())); + model.setTaskType(TaskTypeEnum.getByCode(entity.getTaskType())); model.setExecuteType(ExecuteTypeEnum.getByCode(entity.getExecuteType())); model.setRouteId(entity.getRouteId()); model.setUavId(entity.getUavId()); @@ -61,8 +63,8 @@ public class TaskConvert { entity.setId(model.getId()); entity.setPlanId(model.getPlanId()); entity.setTaskName(model.getTaskName()); - entity.setTaskCategory(model.getTaskCategory()); - entity.setTaskType(model.getTaskType()); + entity.setTaskCategory(model.getTaskCategory() != null ? model.getTaskCategory().getCode() : null); + entity.setTaskType(model.getTaskType() != null ? model.getTaskType().getCode() : null); entity.setExecuteType(model.getExecuteType() != null ? model.getExecuteType().getCode() : null); entity.setRouteId(model.getRouteId()); entity.setUavId(model.getUavId()); 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 ce7fd32..ae04748 100644 --- a/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java +++ b/src/main/java/com/ruoyi/task/domain/convert/TaskStatConvert.java @@ -1,6 +1,8 @@ package com.ruoyi.task.domain.convert; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import com.ruoyi.task.domain.model.TaskStat; import com.ruoyi.task.mapper.entity.TaskStatEntity; @@ -27,8 +29,8 @@ public class TaskStatConvert { model.setId(entity.getId()); model.setAirportCode(entity.getAirportCode()); model.setRouteName(entity.getRouteName()); - model.setTaskCategory(entity.getTaskCategory()); - model.setTaskType(entity.getTaskType()); + model.setTaskCategory(TaskCategoryEnum.getByCode(entity.getTaskCategory())); + model.setTaskType(TaskTypeEnum.getByCode(entity.getTaskType())); model.setTaskStatus(StatusEnum.getByCode(entity.getTaskStatus())); model.setYear(entity.getYear()); model.setMonth(entity.getMonth()); @@ -56,8 +58,8 @@ public class TaskStatConvert { entity.setId(model.getId()); entity.setAirportCode(model.getAirportCode()); entity.setRouteName(model.getRouteName()); - entity.setTaskCategory(model.getTaskCategory()); - entity.setTaskType(model.getTaskType()); + entity.setTaskCategory(model.getTaskCategory() != null ? model.getTaskCategory().getCode() : null); + entity.setTaskType(model.getTaskType() != null ? model.getTaskType().getCode() : null); entity.setTaskStatus(model.getTaskStatus() != null ? model.getTaskStatus().getCode() : null); entity.setYear(model.getYear()); entity.setMonth(model.getMonth()); 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 434c1e3..99ff311 100644 --- a/src/main/java/com/ruoyi/task/domain/model/Task.java +++ b/src/main/java/com/ruoyi/task/domain/model/Task.java @@ -2,6 +2,8 @@ package com.ruoyi.task.domain.model; import com.ruoyi.task.api.enums.ExecuteTypeEnum; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import java.util.Date; @@ -23,10 +25,10 @@ public class Task { private String taskName; /** 任务类别(如人工执飞) */ - private String taskCategory; + private TaskCategoryEnum taskCategory; /** 任务类型(如一键起飞) */ - private String taskType; + private TaskTypeEnum taskType; /** 执行类型(单次执行、连续执行) */ private ExecuteTypeEnum executeType; @@ -89,19 +91,19 @@ public class Task { this.taskName = taskName; } - public String getTaskCategory() { + public TaskCategoryEnum getTaskCategory() { return taskCategory; } - public void setTaskCategory(String taskCategory) { + public void setTaskCategory(TaskCategoryEnum taskCategory) { this.taskCategory = taskCategory; } - public String getTaskType() { + public TaskTypeEnum getTaskType() { return taskType; } - public void setTaskType(String taskType) { + public void setTaskType(TaskTypeEnum taskType) { this.taskType = taskType; } @@ -207,8 +209,8 @@ public class Task { "id=" + id + ", planId=" + planId + ", taskName='" + taskName + '\'' + - ", taskCategory='" + taskCategory + '\'' + - ", taskType='" + taskType + '\'' + + ", taskCategory=" + taskCategory + + ", taskType=" + taskType + ", executeType=" + executeType + ", routeId=" + routeId + ", uavId=" + uavId + 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 788e05b..9b79627 100644 --- a/src/main/java/com/ruoyi/task/domain/model/TaskStat.java +++ b/src/main/java/com/ruoyi/task/domain/model/TaskStat.java @@ -1,6 +1,8 @@ package com.ruoyi.task.domain.model; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; /** * 任务统计领域模型 @@ -20,10 +22,10 @@ public class TaskStat { private String routeName; /** 任务类别(如人工执飞) */ - private String taskCategory; + private TaskCategoryEnum taskCategory; /** 任务类型(如一键起飞) */ - private String taskType; + private TaskTypeEnum taskType; /** 任务状态 */ private StatusEnum taskStatus; @@ -74,19 +76,19 @@ public class TaskStat { this.routeName = routeName; } - public String getTaskCategory() { + public TaskCategoryEnum getTaskCategory() { return taskCategory; } - public void setTaskCategory(String taskCategory) { + public void setTaskCategory(TaskCategoryEnum taskCategory) { this.taskCategory = taskCategory; } - public String getTaskType() { + public TaskTypeEnum getTaskType() { return taskType; } - public void setTaskType(String taskType) { + public void setTaskType(TaskTypeEnum taskType) { this.taskType = taskType; } @@ -160,9 +162,9 @@ public class TaskStat { "id=" + id + ", airportCode='" + airportCode + '\'' + ", routeName='" + routeName + '\'' + - ", taskCategory='" + taskCategory + '\'' + - ", taskType='" + taskType + '\'' + - ", taskStatus='" + taskStatus + '\'' + + ", taskCategory=" + taskCategory + + ", taskType=" + taskType + + ", taskStatus=" + taskStatus + ", year=" + year + ", month=" + month + ", day=" + day + 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 acbc553..d42d291 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskDTO.java @@ -2,6 +2,8 @@ package com.ruoyi.task.service.dto; import com.ruoyi.task.api.enums.ExecuteTypeEnum; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import java.util.Date; @@ -23,10 +25,10 @@ public class TaskDTO { private String taskName; /** 任务类别(如人工执飞) */ - private String taskCategory; + private TaskCategoryEnum taskCategory; /** 任务类型(如一键起飞) */ - private String taskType; + private TaskTypeEnum taskType; /** 执行类型(单次执行、连续执行) */ private ExecuteTypeEnum executeType; @@ -77,19 +79,19 @@ public class TaskDTO { this.taskName = taskName; } - public String getTaskCategory() { + public TaskCategoryEnum getTaskCategory() { return taskCategory; } - public void setTaskCategory(String taskCategory) { + public void setTaskCategory(TaskCategoryEnum taskCategory) { this.taskCategory = taskCategory; } - public String getTaskType() { + public TaskTypeEnum getTaskType() { return taskType; } - public void setTaskType(String taskType) { + public void setTaskType(TaskTypeEnum taskType) { this.taskType = taskType; } @@ -163,8 +165,8 @@ public class TaskDTO { "id=" + id + ", planId=" + planId + ", taskName='" + taskName + '\'' + - ", taskCategory='" + taskCategory + '\'' + - ", taskType='" + taskType + '\'' + + ", taskCategory=" + taskCategory + + ", taskType=" + taskType + ", executeType=" + executeType + ", routeId=" + routeId + ", uavId=" + uavId + 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 01e644f..2df6532 100644 --- a/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java +++ b/src/main/java/com/ruoyi/task/service/dto/TaskStatDTO.java @@ -1,14 +1,16 @@ package com.ruoyi.task.service.dto; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; public class TaskStatDTO { private Long id; private String airportCode; private String routeName; - private String taskCategory; - private String taskType; + private TaskCategoryEnum taskCategory; + private TaskTypeEnum taskType; private StatusEnum taskStatus; private Integer year; private Integer month; @@ -42,19 +44,19 @@ public class TaskStatDTO { this.routeName = routeName; } - public String getTaskCategory() { + public TaskCategoryEnum getTaskCategory() { return taskCategory; } - public void setTaskCategory(String taskCategory) { + public void setTaskCategory(TaskCategoryEnum taskCategory) { this.taskCategory = taskCategory; } - public String getTaskType() { + public TaskTypeEnum getTaskType() { return taskType; } - public void setTaskType(String taskType) { + public void setTaskType(TaskTypeEnum taskType) { this.taskType = taskType; } 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 c799346..39f1128 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskPlanServiceImpl.java @@ -3,6 +3,8 @@ 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.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import com.ruoyi.task.domain.api.ITaskDomain; import com.ruoyi.task.domain.api.ITaskPlanDomain; import com.ruoyi.task.domain.model.Task; @@ -29,17 +31,38 @@ public class TaskPlanServiceImpl implements ITaskPlanService { @Override public Long createTimedTaskPlan(TaskPlanDTO taskPlanDTO) { TaskPlan taskPlan = TaskPlanDTOConvert.toDomain(taskPlanDTO); + + // 校验PlanTypeEnum + if (taskPlan.getPlanType() != null && taskPlan.getPlanType() == PlanTypeEnum.CYCLE) { + throw new IllegalArgumentException("定时任务计划不能设置为周期类型"); + } + + // 如果PlanTypeEnum为空,设置为定时类型 + if (taskPlan.getPlanType() == null) { + taskPlan.setPlanType(PlanTypeEnum.TIMED); + } + TaskPlan result = taskPlanDomain.createTimedTaskPlan(taskPlan); // 创建对应的任务记录 createTaskFromPlan(result); - - return result != null ? result.getId() : null; + return result.getId(); } @Override public Long createCycleTaskPlan(TaskPlanDTO taskPlanDTO) { TaskPlan taskPlan = TaskPlanDTOConvert.toDomain(taskPlanDTO); + + // 校验PlanTypeEnum + if (taskPlan.getPlanType() != null && taskPlan.getPlanType() == PlanTypeEnum.TIMED) { + throw new IllegalArgumentException("周期任务计划不能设置为定时类型"); + } + + // 如果PlanTypeEnum为空,设置为周期类型 + if (taskPlan.getPlanType() == null) { + taskPlan.setPlanType(PlanTypeEnum.CYCLE); + } + TaskPlan result = taskPlanDomain.createCycleTaskPlan(taskPlan); // 创建对应的任务记录 @@ -55,8 +78,8 @@ public class TaskPlanServiceImpl implements ITaskPlanService { Task task = new Task(); task.setTaskName(taskPlan.getPlanName() + "_任务"); task.setPlanId(taskPlan.getId()); - task.setTaskCategory("计划任务"); - task.setTaskType(taskPlan.getPlanType() != null ? taskPlan.getPlanType().getCode() : null); + task.setTaskCategory(TaskCategoryEnum.PLAN_TASK); + task.setTaskType(TaskTypeEnum.PLAN_TASK); task.setExecuteType(taskPlan.getExecuteType()); task.setRouteId(taskPlan.getRouteId()); task.setUavId(taskPlan.getUavId()); 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 b287277..6ee2451 100644 --- a/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/ruoyi/task/service/impl/TaskServiceImpl.java @@ -1,6 +1,8 @@ package com.ruoyi.task.service.impl; import com.ruoyi.task.api.enums.StatusEnum; +import com.ruoyi.task.api.enums.TaskCategoryEnum; +import com.ruoyi.task.api.enums.TaskTypeEnum; import com.ruoyi.task.domain.api.ITaskDomain; import com.ruoyi.task.domain.model.Task; import com.ruoyi.task.service.api.ITaskService; @@ -37,8 +39,8 @@ public class TaskServiceImpl implements ITaskService { Task task = new Task(); task.setRouteId(queryDTO.getRouteId()); task.setStatus(StatusEnum.getByCode(queryDTO.getStatus())); - task.setTaskCategory(queryDTO.getTaskCategory()); - task.setTaskType(queryDTO.getTaskType()); + task.setTaskCategory(TaskCategoryEnum.getByCode(queryDTO.getTaskCategory())); + task.setTaskType(TaskTypeEnum.getByCode(queryDTO.getTaskType())); List tasks = taskDomain.getTaskList(task); return TaskDTOConvert.toDTOList(tasks);