opt:1.新增国际化准备工作。
This commit is contained in:
@@ -4,10 +4,7 @@ import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.logging.annotation.Log;
|
||||
import org.nl.enums.TaskSourceEnum;
|
||||
import org.nl.task.param.CancelTaskRequestParam;
|
||||
import org.nl.task.param.CreateTaskRequestParam;
|
||||
import org.nl.task.param.OneClickOperationRequestParam;
|
||||
import org.nl.task.param.PauseAndResumeTaskParam;
|
||||
import org.nl.task.param.*;
|
||||
import org.nl.task.service.TaskService;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -32,6 +29,12 @@ public class TaskController {
|
||||
return new ResponseEntity<>(taskService.createTask(createTaskRequestParam, TaskSourceEnum.SCREEN.getName()), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/queryTask")
|
||||
@Log("查询任务")
|
||||
public ResponseEntity<Object> queryTask(@RequestBody @Validated QueryTaskRequestParam queryTaskRequestParam){
|
||||
return new ResponseEntity<>(taskService.queryTask(queryTaskRequestParam), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/cancelTask")
|
||||
@Log("取消任务")
|
||||
public ResponseEntity<Object> cancelTask(@RequestBody @Validated CancelTaskRequestParam cancelTaskRequestParam){
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package org.nl.task.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @author dsh
|
||||
* 2025/12/1
|
||||
*/
|
||||
@Getter
|
||||
public enum OneClickTaskTypeEnum {
|
||||
|
||||
/**
|
||||
* 一键充电
|
||||
*/
|
||||
CHARGE("Charge", "CHARGE", "一键充电"),
|
||||
/**
|
||||
* 一键加水
|
||||
*/
|
||||
REFILL("Refill", "WATER", "一键加水");
|
||||
|
||||
private String code;
|
||||
private String scheduleType;
|
||||
private String desc;
|
||||
|
||||
|
||||
OneClickTaskTypeEnum(String code, String scheduleType, String desc) {
|
||||
this.code = code;
|
||||
this.scheduleType = scheduleType;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public static String mappingScheduleTypeByCode(String code){
|
||||
for (OneClickTaskTypeEnum oneClickTaskTypeEnum: OneClickTaskTypeEnum.values()){
|
||||
if (oneClickTaskTypeEnum.code.equals(code)){
|
||||
return oneClickTaskTypeEnum.scheduleType;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package org.nl.task.param;
|
||||
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author dsh
|
||||
* 2026/2/3
|
||||
*/
|
||||
@Data
|
||||
public class QueryTaskRequestParam {
|
||||
|
||||
/**
|
||||
* 当前页
|
||||
*/
|
||||
@NotNull(message = "当前页不能为空")
|
||||
private Integer pageNum;
|
||||
|
||||
/**
|
||||
* 页数大小
|
||||
*/
|
||||
@NotNull(message = "页数大小不能为空")
|
||||
private Integer pageSize;
|
||||
|
||||
/**
|
||||
* 任务号
|
||||
*/
|
||||
private String task_code;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 目标点
|
||||
*/
|
||||
private String destinations;
|
||||
|
||||
/**
|
||||
* 任务类型
|
||||
*/
|
||||
private String type;
|
||||
}
|
||||
@@ -3,10 +3,7 @@ package org.nl.task.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.nl.response.WebResponse;
|
||||
import org.nl.task.entity.Task;
|
||||
import org.nl.task.param.CancelTaskRequestParam;
|
||||
import org.nl.task.param.CreateTaskRequestParam;
|
||||
import org.nl.task.param.OneClickOperationRequestParam;
|
||||
import org.nl.task.param.PauseAndResumeTaskParam;
|
||||
import org.nl.task.param.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -22,6 +19,12 @@ public interface TaskService extends IService<Task>{
|
||||
*/
|
||||
WebResponse createTask(CreateTaskRequestParam createTaskRequestParam, String taskSource);
|
||||
|
||||
/**
|
||||
* 查询任务
|
||||
* @return WebResponse
|
||||
*/
|
||||
WebResponse queryTask(QueryTaskRequestParam queryTaskRequestParam);
|
||||
|
||||
/**
|
||||
* 取消任务
|
||||
* @return WebResponse
|
||||
|
||||
@@ -10,6 +10,8 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -21,14 +23,12 @@ import org.nl.enums.YesOrNoEnum;
|
||||
import org.nl.exception.BadRequestException;
|
||||
import org.nl.response.WebResponse;
|
||||
import org.nl.task.entity.Task;
|
||||
import org.nl.task.enums.OneClickTaskTypeEnum;
|
||||
import org.nl.task.enums.ScheduleTaskStatusEnum;
|
||||
import org.nl.task.enums.TaskStatusEnum;
|
||||
import org.nl.task.enums.TaskTypeEnum;
|
||||
import org.nl.task.mapper.TaskMapper;
|
||||
import org.nl.task.param.CancelTaskRequestParam;
|
||||
import org.nl.task.param.CreateTaskRequestParam;
|
||||
import org.nl.task.param.OneClickOperationRequestParam;
|
||||
import org.nl.task.param.PauseAndResumeTaskParam;
|
||||
import org.nl.task.param.*;
|
||||
import org.nl.task.service.TaskService;
|
||||
import org.nl.util.IdUtil;
|
||||
import org.nl.util.TaskCodeGeneratorUtil;
|
||||
@@ -77,7 +77,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper,Task> implements Tas
|
||||
.lt(Task::getStatus,TaskStatusEnum.FINISHED.getCode())
|
||||
);
|
||||
currentTaskList.clear();
|
||||
currentTaskList = taskList;
|
||||
currentTaskList.addAll(taskList);
|
||||
taskInfoList.clear();
|
||||
//根据车辆编号分类 车辆任务队列。
|
||||
if (!taskList.isEmpty()) {
|
||||
@@ -161,6 +161,18 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper,Task> implements Tas
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public WebResponse queryTask(QueryTaskRequestParam param) {
|
||||
Page<Task> page = new Page<>(param.getPageNum(),param.getPageSize());
|
||||
IPage<Task> infoPage = taskMapper.selectPage(page,new LambdaQueryWrapper<>(Task.class)
|
||||
.likeRight(StrUtil.isNotBlank(param.getTask_code()),Task::getTask_code,param.getTask_code())
|
||||
.eq(StrUtil.isNotBlank(param.getStatus()),Task::getStatus,param.getStatus())
|
||||
.eq(StrUtil.isNotBlank(param.getDestinations()),Task::getDestinations,param.getDestinations())
|
||||
.eq(StrUtil.isNotBlank(param.getType()),Task::getType,param.getType())
|
||||
);
|
||||
return WebResponse.requestParamOk(infoPage);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public WebResponse cancelTask(CancelTaskRequestParam cancelTaskRequestParam) {
|
||||
@@ -296,6 +308,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper,Task> implements Tas
|
||||
taskMapper.insert(task);
|
||||
|
||||
ScheduleAPICreateOneClickTaskParam scheduleAPICreateOneClickTaskParam = BeanUtil.copyProperties(task, ScheduleAPICreateOneClickTaskParam.class);
|
||||
scheduleAPICreateOneClickTaskParam.setType(OneClickTaskTypeEnum.mappingScheduleTypeByCode(oneClickOperationRequestParam.getType()));
|
||||
HttpResponse result = scheduleTaskAPI.oneClickOperationTask(scheduleAPICreateOneClickTaskParam);
|
||||
if (result == null || !result.isOk()){
|
||||
throw new BadRequestException("调度生成一键任务失败");
|
||||
|
||||
Reference in New Issue
Block a user