添加领域层接口
This commit is contained in:
parent
dbafd98b14
commit
25e26b1b9f
6
pom.xml
6
pom.xml
|
|
@ -71,6 +71,12 @@
|
||||||
<artifactId>ruoyi-common-swagger</artifactId>
|
<artifactId>ruoyi-common-swagger</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!-- RuoYi Common Core -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.ruoyi</groupId>
|
||||||
|
<artifactId>ruoyi-common-core</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- Tuoheng TASK API -->
|
<!-- Tuoheng TASK API -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.ruoyi</groupId>
|
<groupId>com.ruoyi</groupId>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,62 @@
|
||||||
|
package com.ruoyi.task.domain.api;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.Task;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务领域接口
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public interface ITaskDomain {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建无关联计划的飞行任务
|
||||||
|
*
|
||||||
|
* @param task 任务领域模型
|
||||||
|
* @return 创建后的任务
|
||||||
|
*/
|
||||||
|
Task createTaskWithoutPlan(Task task);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新任务
|
||||||
|
*
|
||||||
|
* @param task 任务领域模型
|
||||||
|
* @return 更新后的任务
|
||||||
|
*/
|
||||||
|
Task updateTask(Task task);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除任务
|
||||||
|
*
|
||||||
|
* @param taskId 任务ID
|
||||||
|
* @return 是否删除成功
|
||||||
|
*/
|
||||||
|
boolean deleteTask(Long taskId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据ID获取任务
|
||||||
|
*
|
||||||
|
* @param taskId 任务ID
|
||||||
|
* @return 任务领域模型
|
||||||
|
*/
|
||||||
|
Task getTaskById(Long taskId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据条件查询任务列表
|
||||||
|
*
|
||||||
|
* @param task 查询条件
|
||||||
|
* @return 任务列表
|
||||||
|
*/
|
||||||
|
List<Task> getTaskList(Task task);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据计划ID获取任务
|
||||||
|
*
|
||||||
|
* @param planId 计划ID
|
||||||
|
* @return 任务列表
|
||||||
|
*/
|
||||||
|
List<Task> getTaskByPlanId(Long planId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
package com.ruoyi.task.domain.api;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.TaskPlan;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskPlanEntity;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划领域接口
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public interface ITaskPlanDomain {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建定时任务计划
|
||||||
|
*
|
||||||
|
* @param taskPlan 任务计划领域模型
|
||||||
|
* @return 创建后的任务计划
|
||||||
|
*/
|
||||||
|
TaskPlan createTimedTaskPlan(TaskPlan taskPlan);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建周期任务计划
|
||||||
|
*
|
||||||
|
* @param taskPlan 任务计划领域模型
|
||||||
|
* @return 创建后的任务计划
|
||||||
|
*/
|
||||||
|
TaskPlan createCycleTaskPlan(TaskPlan taskPlan);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新任务计划
|
||||||
|
*
|
||||||
|
* @param taskPlan 任务计划领域模型
|
||||||
|
* @return 更新后的任务计划
|
||||||
|
*/
|
||||||
|
TaskPlan updateTaskPlan(TaskPlan taskPlan);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除任务计划
|
||||||
|
*
|
||||||
|
* @param planId 计划ID
|
||||||
|
* @return 是否删除成功
|
||||||
|
*/
|
||||||
|
boolean deleteTaskPlan(Long planId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据ID获取任务计划
|
||||||
|
*
|
||||||
|
* @param planId 计划ID
|
||||||
|
* @return 任务计划领域模型
|
||||||
|
*/
|
||||||
|
TaskPlan getTaskPlanById(Long planId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据条件查询任务计划列表
|
||||||
|
*
|
||||||
|
* @param taskPlan 查询条件
|
||||||
|
* @return 任务计划列表
|
||||||
|
*/
|
||||||
|
List<TaskPlan> getTaskPlanList(TaskPlan taskPlan);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据计划类型获取任务计划
|
||||||
|
*
|
||||||
|
* @param planType 计划类型
|
||||||
|
* @return 任务计划列表
|
||||||
|
*/
|
||||||
|
List<TaskPlan> getTaskPlanByType(String planType);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据状态获取任务计划
|
||||||
|
*
|
||||||
|
* @param status 状态
|
||||||
|
* @return 任务计划列表
|
||||||
|
*/
|
||||||
|
List<TaskPlan> getTaskPlanByStatus(String status);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,100 @@
|
||||||
|
package com.ruoyi.task.domain.api;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.TaskStat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务统计领域接口
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public interface ITaskStatDomain {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据时间范围获取任务统计
|
||||||
|
*
|
||||||
|
* @param startTime 开始时间
|
||||||
|
* @param endTime 结束时间
|
||||||
|
* @param airportCode 机场代码
|
||||||
|
* @param routeName 航线名称
|
||||||
|
* @param taskCategory 任务类别
|
||||||
|
* @param taskType 任务类型
|
||||||
|
* @param taskStatus 任务状态
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByTimeRange(Date startTime, Date endTime, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按月获取任务统计
|
||||||
|
*
|
||||||
|
* @param year 年份
|
||||||
|
* @param month 月份
|
||||||
|
* @param airportCode 机场代码
|
||||||
|
* @param routeName 航线名称
|
||||||
|
* @param taskCategory 任务类别
|
||||||
|
* @param taskType 任务类型
|
||||||
|
* @param taskStatus 任务状态
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByMonth(int year, int month, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按周获取任务统计
|
||||||
|
*
|
||||||
|
* @param year 年份
|
||||||
|
* @param week 周数
|
||||||
|
* @param airportCode 机场代码
|
||||||
|
* @param routeName 航线名称
|
||||||
|
* @param taskCategory 任务类别
|
||||||
|
* @param taskType 任务类型
|
||||||
|
* @param taskStatus 任务状态
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByWeek(int year, int week, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按年获取任务统计
|
||||||
|
*
|
||||||
|
* @param year 年份
|
||||||
|
* @param airportCode 机场代码
|
||||||
|
* @param routeName 航线名称
|
||||||
|
* @param taskCategory 任务类别
|
||||||
|
* @param taskType 任务类型
|
||||||
|
* @param taskStatus 任务状态
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByYear(int year, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按任务类别获取统计
|
||||||
|
*
|
||||||
|
* @param taskCategory 任务类别
|
||||||
|
* @param startTime 开始时间
|
||||||
|
* @param endTime 结束时间
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByCategory(String taskCategory, Date startTime, Date endTime);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按任务类型获取统计
|
||||||
|
*
|
||||||
|
* @param taskType 任务类型
|
||||||
|
* @param startTime 开始时间
|
||||||
|
* @param endTime 结束时间
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByType(String taskType, Date startTime, Date endTime);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按任务状态获取统计
|
||||||
|
*
|
||||||
|
* @param taskStatus 任务状态
|
||||||
|
* @param startTime 开始时间
|
||||||
|
* @param endTime 结束时间
|
||||||
|
* @return 任务统计列表
|
||||||
|
*/
|
||||||
|
List<TaskStat> getTaskStatByStatus(String taskStatus, Date startTime, Date endTime);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
package com.ruoyi.task.domain.convert;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.Task;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskInfoEntity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务转换类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class TaskConvert {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将实体转换为领域模型
|
||||||
|
*
|
||||||
|
* @param entity 任务信息实体
|
||||||
|
* @return 任务领域模型
|
||||||
|
*/
|
||||||
|
public static Task toModel(TaskInfoEntity entity) {
|
||||||
|
if (entity == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
Task model = new Task();
|
||||||
|
model.setId(entity.getId());
|
||||||
|
model.setPlanId(entity.getPlanId());
|
||||||
|
model.setTaskName(entity.getTaskName());
|
||||||
|
model.setTaskCategory(entity.getTaskCategory());
|
||||||
|
model.setTaskType(entity.getTaskType());
|
||||||
|
model.setExecuteType(entity.getExecuteType());
|
||||||
|
model.setRouteId(entity.getRouteId());
|
||||||
|
model.setUavId(entity.getUavId());
|
||||||
|
model.setStatus(entity.getStatus());
|
||||||
|
model.setStartTime(entity.getStartTime());
|
||||||
|
model.setEndTime(entity.getEndTime());
|
||||||
|
model.setDescription(entity.getDescription());
|
||||||
|
model.setCreateBy(entity.getCreateBy());
|
||||||
|
model.setCreateTime(entity.getCreateTime());
|
||||||
|
model.setUpdateBy(entity.getUpdateBy());
|
||||||
|
model.setUpdateTime(entity.getUpdateTime());
|
||||||
|
model.setRemark(entity.getRemark());
|
||||||
|
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将领域模型转换为实体
|
||||||
|
*
|
||||||
|
* @param model 任务领域模型
|
||||||
|
* @return 任务信息实体
|
||||||
|
*/
|
||||||
|
public static TaskInfoEntity toEntity(Task model) {
|
||||||
|
if (model == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
TaskInfoEntity entity = new TaskInfoEntity();
|
||||||
|
entity.setId(model.getId());
|
||||||
|
entity.setPlanId(model.getPlanId());
|
||||||
|
entity.setTaskName(model.getTaskName());
|
||||||
|
entity.setTaskCategory(model.getTaskCategory());
|
||||||
|
entity.setTaskType(model.getTaskType());
|
||||||
|
entity.setExecuteType(model.getExecuteType());
|
||||||
|
entity.setRouteId(model.getRouteId());
|
||||||
|
entity.setUavId(model.getUavId());
|
||||||
|
entity.setStatus(model.getStatus());
|
||||||
|
entity.setStartTime(model.getStartTime());
|
||||||
|
entity.setEndTime(model.getEndTime());
|
||||||
|
entity.setDescription(model.getDescription());
|
||||||
|
entity.setCreateBy(model.getCreateBy());
|
||||||
|
entity.setCreateTime(model.getCreateTime());
|
||||||
|
entity.setUpdateBy(model.getUpdateBy());
|
||||||
|
entity.setUpdateTime(model.getUpdateTime());
|
||||||
|
entity.setRemark(model.getRemark());
|
||||||
|
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,81 @@
|
||||||
|
package com.ruoyi.task.domain.convert;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.TaskPlan;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskPlanEntity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划转换类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class TaskPlanConvert {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将实体转换为领域模型
|
||||||
|
*
|
||||||
|
* @param entity 任务计划实体
|
||||||
|
* @return 任务计划领域模型
|
||||||
|
*/
|
||||||
|
public static TaskPlan toModel(TaskPlanEntity entity) {
|
||||||
|
if (entity == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
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.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.setDescription(entity.getDescription());
|
||||||
|
model.setCreateBy(entity.getCreateBy());
|
||||||
|
model.setCreateTime(entity.getCreateTime());
|
||||||
|
model.setUpdateBy(entity.getUpdateBy());
|
||||||
|
model.setUpdateTime(entity.getUpdateTime());
|
||||||
|
model.setRemark(entity.getRemark());
|
||||||
|
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将领域模型转换为实体
|
||||||
|
*
|
||||||
|
* @param model 任务计划领域模型
|
||||||
|
* @return 任务计划实体
|
||||||
|
*/
|
||||||
|
public static TaskPlanEntity toEntity(TaskPlan model) {
|
||||||
|
if (model == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
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.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.setDescription(model.getDescription());
|
||||||
|
entity.setCreateBy(model.getCreateBy());
|
||||||
|
entity.setCreateTime(model.getCreateTime());
|
||||||
|
entity.setUpdateBy(model.getUpdateBy());
|
||||||
|
entity.setUpdateTime(model.getUpdateTime());
|
||||||
|
entity.setRemark(model.getRemark());
|
||||||
|
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,71 @@
|
||||||
|
package com.ruoyi.task.domain.convert;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.model.TaskStat;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskStatEntity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务统计转换类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class TaskStatConvert {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将实体转换为领域模型
|
||||||
|
*
|
||||||
|
* @param entity 任务统计实体
|
||||||
|
* @return 任务统计领域模型
|
||||||
|
*/
|
||||||
|
public static TaskStat toModel(TaskStatEntity entity) {
|
||||||
|
if (entity == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
TaskStat model = new TaskStat();
|
||||||
|
model.setId(entity.getId());
|
||||||
|
model.setAirportCode(entity.getAirportCode());
|
||||||
|
model.setRouteName(entity.getRouteName());
|
||||||
|
model.setTaskCategory(entity.getTaskCategory());
|
||||||
|
model.setTaskType(entity.getTaskType());
|
||||||
|
model.setTaskStatus(entity.getTaskStatus());
|
||||||
|
model.setYear(entity.getYear());
|
||||||
|
model.setMonth(entity.getMonth());
|
||||||
|
model.setDay(entity.getDay());
|
||||||
|
model.setTaskCount(entity.getTaskCount());
|
||||||
|
model.setCreateBy(entity.getCreateBy());
|
||||||
|
model.setUpdateBy(entity.getUpdateBy());
|
||||||
|
model.setRemark(entity.getRemark());
|
||||||
|
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将领域模型转换为实体
|
||||||
|
*
|
||||||
|
* @param model 任务统计领域模型
|
||||||
|
* @return 任务统计实体
|
||||||
|
*/
|
||||||
|
public static TaskStatEntity toEntity(TaskStat model) {
|
||||||
|
if (model == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setId(model.getId());
|
||||||
|
entity.setAirportCode(model.getAirportCode());
|
||||||
|
entity.setRouteName(model.getRouteName());
|
||||||
|
entity.setTaskCategory(model.getTaskCategory());
|
||||||
|
entity.setTaskType(model.getTaskType());
|
||||||
|
entity.setTaskStatus(model.getTaskStatus());
|
||||||
|
entity.setYear(model.getYear());
|
||||||
|
entity.setMonth(model.getMonth());
|
||||||
|
entity.setDay(model.getDay());
|
||||||
|
entity.setTaskCount(model.getTaskCount());
|
||||||
|
entity.setCreateBy(model.getCreateBy());
|
||||||
|
entity.setUpdateBy(model.getUpdateBy());
|
||||||
|
entity.setRemark(model.getRemark());
|
||||||
|
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,90 @@
|
||||||
|
package com.ruoyi.task.domain.impl;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.api.ITaskDomain;
|
||||||
|
import com.ruoyi.task.domain.convert.TaskConvert;
|
||||||
|
import com.ruoyi.task.domain.model.Task;
|
||||||
|
import com.ruoyi.task.mapper.TaskInfoMapper;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskInfoEntity;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务领域实现类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class TaskDomainImpl implements ITaskDomain {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TaskInfoMapper taskInfoMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Task createTaskWithoutPlan(Task task) {
|
||||||
|
// 确保planId为null,表示无关联计划
|
||||||
|
task.setPlanId(null);
|
||||||
|
// 转换为实体
|
||||||
|
TaskInfoEntity entity = TaskConvert.toEntity(task);
|
||||||
|
// 插入数据库
|
||||||
|
taskInfoMapper.insertTaskInfo(entity);
|
||||||
|
// 转换回领域模型并返回
|
||||||
|
return TaskConvert.toModel(entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Task updateTask(Task task) {
|
||||||
|
// 转换为实体
|
||||||
|
TaskInfoEntity entity = TaskConvert.toEntity(task);
|
||||||
|
// 更新数据库
|
||||||
|
taskInfoMapper.updateTaskInfo(entity);
|
||||||
|
// 查询更新后的实体
|
||||||
|
TaskInfoEntity updatedEntity = taskInfoMapper.selectTaskInfoById(task.getId());
|
||||||
|
// 转换回领域模型并返回
|
||||||
|
return TaskConvert.toModel(updatedEntity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean deleteTask(Long taskId) {
|
||||||
|
// 删除数据库记录
|
||||||
|
int result = taskInfoMapper.deleteTaskInfoById(taskId);
|
||||||
|
// 返回删除结果
|
||||||
|
return result > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Task getTaskById(Long taskId) {
|
||||||
|
// 查询数据库
|
||||||
|
TaskInfoEntity entity = taskInfoMapper.selectTaskInfoById(taskId);
|
||||||
|
// 转换为领域模型并返回
|
||||||
|
return TaskConvert.toModel(entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Task> getTaskList(Task task) {
|
||||||
|
// 转换为实体作为查询条件
|
||||||
|
TaskInfoEntity entity = TaskConvert.toEntity(task);
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskInfoEntity> entityList = taskInfoMapper.selectTaskInfoList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Task> getTaskByPlanId(Long planId) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskInfoEntity entity = new TaskInfoEntity();
|
||||||
|
entity.setPlanId(planId);
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskInfoEntity> entityList = taskInfoMapper.selectTaskInfoList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,115 @@
|
||||||
|
package com.ruoyi.task.domain.impl;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.api.ITaskPlanDomain;
|
||||||
|
import com.ruoyi.task.domain.convert.TaskPlanConvert;
|
||||||
|
import com.ruoyi.task.domain.model.TaskPlan;
|
||||||
|
import com.ruoyi.task.mapper.TaskPlanMapper;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskPlanEntity;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划领域实现类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class TaskPlanDomainImpl implements ITaskPlanDomain {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TaskPlanMapper taskPlanMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TaskPlan createTimedTaskPlan(TaskPlan taskPlan) {
|
||||||
|
// 设置计划类型为定时任务计划
|
||||||
|
taskPlan.setPlanType("定时任务计划");
|
||||||
|
// 转换为实体
|
||||||
|
TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan);
|
||||||
|
// 插入数据库
|
||||||
|
taskPlanMapper.insertTaskPlan(entity);
|
||||||
|
// 转换回领域模型并返回
|
||||||
|
return TaskPlanConvert.toModel(entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TaskPlan createCycleTaskPlan(TaskPlan taskPlan) {
|
||||||
|
// 设置计划类型为周期任务计划
|
||||||
|
taskPlan.setPlanType("周期任务计划");
|
||||||
|
// 转换为实体
|
||||||
|
TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan);
|
||||||
|
// 插入数据库
|
||||||
|
taskPlanMapper.insertTaskPlan(entity);
|
||||||
|
// 转换回领域模型并返回
|
||||||
|
return TaskPlanConvert.toModel(entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TaskPlan updateTaskPlan(TaskPlan taskPlan) {
|
||||||
|
// 转换为实体
|
||||||
|
TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan);
|
||||||
|
// 更新数据库
|
||||||
|
taskPlanMapper.updateTaskPlan(entity);
|
||||||
|
// 查询更新后的实体
|
||||||
|
TaskPlanEntity updatedEntity = taskPlanMapper.selectTaskPlanById(taskPlan.getId());
|
||||||
|
// 转换回领域模型并返回
|
||||||
|
return TaskPlanConvert.toModel(updatedEntity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean deleteTaskPlan(Long planId) {
|
||||||
|
// 删除数据库记录
|
||||||
|
int result = taskPlanMapper.deleteTaskPlanById(planId);
|
||||||
|
// 返回删除结果
|
||||||
|
return result > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TaskPlan getTaskPlanById(Long planId) {
|
||||||
|
// 查询数据库
|
||||||
|
TaskPlanEntity entity = taskPlanMapper.selectTaskPlanById(planId);
|
||||||
|
// 转换为领域模型并返回
|
||||||
|
return TaskPlanConvert.toModel(entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskPlan> getTaskPlanList(TaskPlan taskPlan) {
|
||||||
|
// 转换为实体作为查询条件
|
||||||
|
TaskPlanEntity entity = TaskPlanConvert.toEntity(taskPlan);
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskPlanEntity> entityList = taskPlanMapper.selectTaskPlanList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskPlanConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskPlan> getTaskPlanByType(String planType) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskPlanEntity entity = new TaskPlanEntity();
|
||||||
|
entity.setPlanType(planType);
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskPlanEntity> entityList = taskPlanMapper.selectTaskPlanList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskPlanConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskPlan> getTaskPlanByStatus(String status) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskPlanEntity entity = new TaskPlanEntity();
|
||||||
|
entity.setStatus(status);
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskPlanEntity> entityList = taskPlanMapper.selectTaskPlanList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskPlanConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,146 @@
|
||||||
|
package com.ruoyi.task.domain.impl;
|
||||||
|
|
||||||
|
import com.ruoyi.task.domain.api.ITaskStatDomain;
|
||||||
|
import com.ruoyi.task.domain.convert.TaskStatConvert;
|
||||||
|
import com.ruoyi.task.domain.model.TaskStat;
|
||||||
|
import com.ruoyi.task.mapper.TaskStatMapper;
|
||||||
|
import com.ruoyi.task.mapper.entity.TaskStatEntity;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务统计领域实现类
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class TaskStatDomainImpl implements ITaskStatDomain {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TaskStatMapper taskStatMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByTimeRange(Date startTime, Date endTime, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
// 这里需要根据实际的数据库查询逻辑来设置条件
|
||||||
|
// 由于TaskStatMapper的selectTaskStatList方法支持的条件有限,
|
||||||
|
// 实际实现中可能需要扩展Mapper接口或使用其他方式实现复杂查询
|
||||||
|
// 这里仅作为示例
|
||||||
|
entity.setAirportCode(airportCode);
|
||||||
|
entity.setTaskCategory(taskCategory);
|
||||||
|
entity.setTaskType(taskType);
|
||||||
|
entity.setTaskStatus(taskStatus);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByMonth(int year, int month, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setYear(year);
|
||||||
|
entity.setMonth(month);
|
||||||
|
entity.setAirportCode(airportCode);
|
||||||
|
entity.setTaskCategory(taskCategory);
|
||||||
|
entity.setTaskType(taskType);
|
||||||
|
entity.setTaskStatus(taskStatus);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByWeek(int year, int week, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
// 周统计需要根据实际的周计算逻辑来设置条件
|
||||||
|
// 这里仅作为示例
|
||||||
|
entity.setYear(year);
|
||||||
|
entity.setAirportCode(airportCode);
|
||||||
|
entity.setTaskCategory(taskCategory);
|
||||||
|
entity.setTaskType(taskType);
|
||||||
|
entity.setTaskStatus(taskStatus);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByYear(int year, String airportCode, String routeName, String taskCategory, String taskType, String taskStatus) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setYear(year);
|
||||||
|
entity.setAirportCode(airportCode);
|
||||||
|
entity.setTaskCategory(taskCategory);
|
||||||
|
entity.setTaskType(taskType);
|
||||||
|
entity.setTaskStatus(taskStatus);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByCategory(String taskCategory, Date startTime, Date endTime) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setTaskCategory(taskCategory);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByType(String taskType, Date startTime, Date endTime) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setTaskType(taskType);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<TaskStat> getTaskStatByStatus(String taskStatus, Date startTime, Date endTime) {
|
||||||
|
// 创建查询条件
|
||||||
|
TaskStatEntity entity = new TaskStatEntity();
|
||||||
|
entity.setTaskStatus(taskStatus);
|
||||||
|
|
||||||
|
// 查询数据库
|
||||||
|
List<TaskStatEntity> entityList = taskStatMapper.selectTaskStatList(entity);
|
||||||
|
// 转换为领域模型列表并返回
|
||||||
|
return entityList.stream()
|
||||||
|
.map(TaskStatConvert::toModel)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,218 @@
|
||||||
|
package com.ruoyi.task.domain.model;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务领域模型
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class Task {
|
||||||
|
|
||||||
|
/** 任务ID */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 计划ID(可为空,如一键起飞) */
|
||||||
|
private Long planId;
|
||||||
|
|
||||||
|
/** 任务名称 */
|
||||||
|
private String taskName;
|
||||||
|
|
||||||
|
/** 任务类别(如人工执飞) */
|
||||||
|
private String taskCategory;
|
||||||
|
|
||||||
|
/** 任务类型(如一键起飞) */
|
||||||
|
private String taskType;
|
||||||
|
|
||||||
|
/** 执行类型(单次执行、连续执行) */
|
||||||
|
private String executeType;
|
||||||
|
|
||||||
|
/** 航线ID */
|
||||||
|
private Long routeId;
|
||||||
|
|
||||||
|
/** 无人机ID */
|
||||||
|
private Long uavId;
|
||||||
|
|
||||||
|
/** 状态(0待执行 1执行中 2已完成 3已取消) */
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
/** 开始时间 */
|
||||||
|
private Date startTime;
|
||||||
|
|
||||||
|
/** 结束时间 */
|
||||||
|
private Date endTime;
|
||||||
|
|
||||||
|
/** 描述 */
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
/** 创建者 */
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
/** 创建时间 */
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
/** 更新者 */
|
||||||
|
private String updateBy;
|
||||||
|
|
||||||
|
/** 更新时间 */
|
||||||
|
private Date updateTime;
|
||||||
|
|
||||||
|
/** 备注 */
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
// Getters and Setters
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getPlanId() {
|
||||||
|
return planId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPlanId(Long planId) {
|
||||||
|
this.planId = planId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskName() {
|
||||||
|
return taskName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskName(String taskName) {
|
||||||
|
this.taskName = taskName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskCategory() {
|
||||||
|
return taskCategory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskCategory(String taskCategory) {
|
||||||
|
this.taskCategory = taskCategory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskType() {
|
||||||
|
return taskType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskType(String taskType) {
|
||||||
|
this.taskType = taskType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getExecuteType() {
|
||||||
|
return executeType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setExecuteType(String executeType) {
|
||||||
|
this.executeType = executeType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getRouteId() {
|
||||||
|
return routeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRouteId(Long routeId) {
|
||||||
|
this.routeId = routeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getUavId() {
|
||||||
|
return uavId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUavId(Long uavId) {
|
||||||
|
this.uavId = uavId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(String status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getStartTime() {
|
||||||
|
return startTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStartTime(Date startTime) {
|
||||||
|
this.startTime = startTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getEndTime() {
|
||||||
|
return endTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEndTime(Date endTime) {
|
||||||
|
this.endTime = endTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDescription() {
|
||||||
|
return description;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDescription(String description) {
|
||||||
|
this.description = description;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCreateBy() {
|
||||||
|
return createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreateBy(String createBy) {
|
||||||
|
this.createBy = createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getCreateTime() {
|
||||||
|
return createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreateTime(Date createTime) {
|
||||||
|
this.createTime = createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUpdateBy() {
|
||||||
|
return updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateBy(String updateBy) {
|
||||||
|
this.updateBy = updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getUpdateTime() {
|
||||||
|
return updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateTime(Date updateTime) {
|
||||||
|
this.updateTime = updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRemark() {
|
||||||
|
return remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRemark(String remark) {
|
||||||
|
this.remark = remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Task{" +
|
||||||
|
"id=" + id +
|
||||||
|
", planId=" + planId +
|
||||||
|
", taskName='" + taskName + '\'' +
|
||||||
|
", taskCategory='" + taskCategory + '\'' +
|
||||||
|
", taskType='" + taskType + '\'' +
|
||||||
|
", executeType='" + executeType + '\'' +
|
||||||
|
", routeId=" + routeId +
|
||||||
|
", uavId=" + uavId +
|
||||||
|
", status='" + status + '\'' +
|
||||||
|
", startTime=" + startTime +
|
||||||
|
", endTime=" + endTime +
|
||||||
|
", description='" + description + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,230 @@
|
||||||
|
package com.ruoyi.task.domain.model;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划领域模型
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class TaskPlan {
|
||||||
|
|
||||||
|
/** 计划ID */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 计划名称 */
|
||||||
|
private String planName;
|
||||||
|
|
||||||
|
/** 计划类型(定时任务计划、周期任务计划) */
|
||||||
|
private String planType;
|
||||||
|
|
||||||
|
/** 执行类型(单次执行、连续执行) */
|
||||||
|
private String executeType;
|
||||||
|
|
||||||
|
/** 周期类型(日周期、周周期、月周期) */
|
||||||
|
private String cycleType;
|
||||||
|
|
||||||
|
/** 周期值(周周期:1-7多选,如"1,3,5";月周期:1-31多选,如"1,15,30") */
|
||||||
|
private String cycleValue;
|
||||||
|
|
||||||
|
/** 开始日期 */
|
||||||
|
private Date startDate;
|
||||||
|
|
||||||
|
/** 结束日期 */
|
||||||
|
private Date endDate;
|
||||||
|
|
||||||
|
/** 执行时间(仅在定义任务时有效) */
|
||||||
|
private Date executeTime;
|
||||||
|
|
||||||
|
/** 航线ID */
|
||||||
|
private Long routeId;
|
||||||
|
|
||||||
|
/** 无人机ID */
|
||||||
|
private Long uavId;
|
||||||
|
|
||||||
|
/** 状态(0待执行 1执行中 2已完成 3已取消) */
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
/** 描述 */
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
/** 创建者 */
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
/** 创建时间 */
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
/** 更新者 */
|
||||||
|
private String updateBy;
|
||||||
|
|
||||||
|
/** 更新时间 */
|
||||||
|
private Date updateTime;
|
||||||
|
|
||||||
|
/** 备注 */
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
// Getters and Setters
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPlanName() {
|
||||||
|
return planName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPlanName(String planName) {
|
||||||
|
this.planName = planName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPlanType() {
|
||||||
|
return planType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPlanType(String planType) {
|
||||||
|
this.planType = planType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getExecuteType() {
|
||||||
|
return executeType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setExecuteType(String executeType) {
|
||||||
|
this.executeType = executeType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCycleType() {
|
||||||
|
return cycleType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCycleType(String cycleType) {
|
||||||
|
this.cycleType = cycleType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCycleValue() {
|
||||||
|
return cycleValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCycleValue(String cycleValue) {
|
||||||
|
this.cycleValue = cycleValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getStartDate() {
|
||||||
|
return startDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStartDate(Date startDate) {
|
||||||
|
this.startDate = startDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getEndDate() {
|
||||||
|
return endDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEndDate(Date endDate) {
|
||||||
|
this.endDate = endDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getExecuteTime() {
|
||||||
|
return executeTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setExecuteTime(Date executeTime) {
|
||||||
|
this.executeTime = executeTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getRouteId() {
|
||||||
|
return routeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRouteId(Long routeId) {
|
||||||
|
this.routeId = routeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getUavId() {
|
||||||
|
return uavId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUavId(Long uavId) {
|
||||||
|
this.uavId = uavId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStatus(String status) {
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDescription() {
|
||||||
|
return description;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDescription(String description) {
|
||||||
|
this.description = description;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCreateBy() {
|
||||||
|
return createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreateBy(String createBy) {
|
||||||
|
this.createBy = createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getCreateTime() {
|
||||||
|
return createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreateTime(Date createTime) {
|
||||||
|
this.createTime = createTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUpdateBy() {
|
||||||
|
return updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateBy(String updateBy) {
|
||||||
|
this.updateBy = updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getUpdateTime() {
|
||||||
|
return updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateTime(Date updateTime) {
|
||||||
|
this.updateTime = updateTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRemark() {
|
||||||
|
return remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRemark(String remark) {
|
||||||
|
this.remark = remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "TaskPlan{" +
|
||||||
|
"id=" + id +
|
||||||
|
", planName='" + planName + '\'' +
|
||||||
|
", planType='" + planType + '\'' +
|
||||||
|
", executeType='" + executeType + '\'' +
|
||||||
|
", cycleType='" + cycleType + '\'' +
|
||||||
|
", cycleValue='" + cycleValue + '\'' +
|
||||||
|
", startDate=" + startDate +
|
||||||
|
", endDate=" + endDate +
|
||||||
|
", executeTime=" + executeTime +
|
||||||
|
", routeId=" + routeId +
|
||||||
|
", uavId=" + uavId +
|
||||||
|
", status='" + status + '\'' +
|
||||||
|
", description='" + description + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,170 @@
|
||||||
|
package com.ruoyi.task.domain.model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务统计领域模型
|
||||||
|
*
|
||||||
|
* @author ruoyi
|
||||||
|
* @date 2026-03-05
|
||||||
|
*/
|
||||||
|
public class TaskStat {
|
||||||
|
|
||||||
|
/** 统计ID */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 机场代码 */
|
||||||
|
private String airportCode;
|
||||||
|
|
||||||
|
/** 航线名称 */
|
||||||
|
private String routeName;
|
||||||
|
|
||||||
|
/** 任务类别(如人工执飞) */
|
||||||
|
private String taskCategory;
|
||||||
|
|
||||||
|
/** 任务类型(如一键起飞) */
|
||||||
|
private String taskType;
|
||||||
|
|
||||||
|
/** 任务状态(0待执行 1执行中 2已完成 3已取消) */
|
||||||
|
private String taskStatus;
|
||||||
|
|
||||||
|
/** 年份 */
|
||||||
|
private Integer year;
|
||||||
|
|
||||||
|
/** 月份 */
|
||||||
|
private Integer month;
|
||||||
|
|
||||||
|
/** 日期 */
|
||||||
|
private Integer day;
|
||||||
|
|
||||||
|
/** 任务数量 */
|
||||||
|
private Integer taskCount;
|
||||||
|
|
||||||
|
/** 创建者 */
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
/** 更新者 */
|
||||||
|
private String updateBy;
|
||||||
|
|
||||||
|
/** 备注 */
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
// Getters and Setters
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAirportCode() {
|
||||||
|
return airportCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAirportCode(String airportCode) {
|
||||||
|
this.airportCode = airportCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRouteName() {
|
||||||
|
return routeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRouteName(String routeName) {
|
||||||
|
this.routeName = routeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskCategory() {
|
||||||
|
return taskCategory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskCategory(String taskCategory) {
|
||||||
|
this.taskCategory = taskCategory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskType() {
|
||||||
|
return taskType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskType(String taskType) {
|
||||||
|
this.taskType = taskType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTaskStatus() {
|
||||||
|
return taskStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskStatus(String taskStatus) {
|
||||||
|
this.taskStatus = taskStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getYear() {
|
||||||
|
return year;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setYear(Integer year) {
|
||||||
|
this.year = year;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getMonth() {
|
||||||
|
return month;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMonth(Integer month) {
|
||||||
|
this.month = month;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getDay() {
|
||||||
|
return day;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDay(Integer day) {
|
||||||
|
this.day = day;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getTaskCount() {
|
||||||
|
return taskCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTaskCount(Integer taskCount) {
|
||||||
|
this.taskCount = taskCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCreateBy() {
|
||||||
|
return createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCreateBy(String createBy) {
|
||||||
|
this.createBy = createBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUpdateBy() {
|
||||||
|
return updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUpdateBy(String updateBy) {
|
||||||
|
this.updateBy = updateBy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRemark() {
|
||||||
|
return remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRemark(String remark) {
|
||||||
|
this.remark = remark;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "TaskStat{" +
|
||||||
|
"id=" + id +
|
||||||
|
", airportCode='" + airportCode + '\'' +
|
||||||
|
", routeName='" + routeName + '\'' +
|
||||||
|
", taskCategory='" + taskCategory + '\'' +
|
||||||
|
", taskType='" + taskType + '\'' +
|
||||||
|
", taskStatus='" + taskStatus + '\'' +
|
||||||
|
", year=" + year +
|
||||||
|
", month=" + month +
|
||||||
|
", day=" + day +
|
||||||
|
", taskCount=" + taskCount +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue