src/main/java/com/whyc/controller/InterfaceWmsController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/TaskDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/BattAlarmService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/TaskService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/WmsService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/InterfaceWmsController.java
@@ -1,6 +1,7 @@ package com.whyc.controller; import com.whyc.dto.Response; import com.whyc.dto.TaskDto; import com.whyc.dto.WmsPalletDto; import com.whyc.pojo.db_wms.Task; import com.whyc.service.WmsService; @@ -63,12 +64,12 @@ /** * 提供给第三方的接口,用于接收任务状态 * @param task * @param taskDto * @return */ @PostMapping("sendTaskStatus") public Response sendTaskStatus(@RequestBody Task task){ return service.sendTaskStatus(task); public Response sendTaskStatus(@RequestBody TaskDto taskDto){ return service.sendTaskStatus(taskDto); } } src/main/java/com/whyc/dto/TaskDto.java
New file @@ -0,0 +1,31 @@ package com.whyc.dto; import lombok.Data; import lombok.ToString; /** * 参数说明 字段名称 参数类型 字段描述 * task_no String 任务编号 * task_type int 任务类型:1=普通搬运、2=活化任务、3=缓存测压任务、4=入库测压任务、5=检测搬运任务 * start_location_code String 起点编号 * end_location_code String 终点编号 * pallet String 电池编号,在入库测压任务时需要有此字段 * status Int 状态:1=开始取货、2=取货完成、4=放货完成; * 11=开始取活化电池、12=取到活化电池、13=活化电池放置到活化仓内、14=开始取活化结束的电池、15=取到活化结束的电池、16=活化返库完成; * 21=开始取测压电池、22=取到测压电池、23=测压电池放置到活化仓内、24=开始取测压结束的电池、25=取到测压结束的电池、26=测压返库完成 * status_time DateTime 获取status时的对应时间 */ @ToString @Data public class TaskDto { private String task_no; private Integer task_type; private String start_location_code; private String end_location_code; private String pallet; private Integer status; private String status_time; } src/main/java/com/whyc/service/BattAlarmService.java
@@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; @Service @@ -53,6 +54,7 @@ UpdateWrapper wrapper=new UpdateWrapper(); wrapper.eq("num",num); wrapper.set("alm_confirm",1); wrapper.set("alm_confirm_time",new Date()); int flag=mapper.update((BattAlarm) ActionUtil.objeNull,wrapper); return new Response().set(1,flag>0); } @@ -61,6 +63,7 @@ UpdateWrapper wrapper=new UpdateWrapper(); wrapper.eq("num",num); wrapper.set("alm_confirm",0); wrapper.set("alm_confirm_time",null); int flag=mapper.update((BattAlarm) ActionUtil.objeNull,wrapper); return new Response().set(1,flag>0); } src/main/java/com/whyc/service/TaskService.java
@@ -1,5 +1,7 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.whyc.mapper.TaskMapper; import com.whyc.pojo.db_wms.Task; import org.springframework.stereotype.Service; @@ -15,4 +17,10 @@ public void add(Task task) { mapper.insert(task); } public void update(Task task) { UpdateWrapper<Task> update = Wrappers.update(); update.eq("task_no",task.getTaskNo()); mapper.update(task,update); } } src/main/java/com/whyc/service/WmsService.java
@@ -5,13 +5,12 @@ import com.whyc.pojo.db_wms.Task; import com.whyc.util.HttpUtil; import com.whyc.util.JsonUtil; import com.whyc.util.ThreadLocalUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @Service public class WmsService { @@ -108,15 +107,52 @@ return response; } public Response sendTaskStatus(Task task) { //对接收到的任务进行逻辑判断和数据存储 TODO /*String taskNo = task.getTaskNo(); public Response sendTaskStatus(TaskDto taskDto) { Task task = new Task(); task.setTaskNo(taskDto.getTask_no()); task.setTaskType(taskDto.getTask_type()); task.setStartLocationCode(taskDto.getStart_location_code()); task.setEndLocationCode(taskDto.getEnd_location_code()); task.setStatus(taskDto.getStatus()); task.setStatusTime(ThreadLocalUtil.parse(taskDto.getStatus_time(),1)); //对接收到的任务进行逻辑判断和数据存储 String taskNo = task.getTaskNo(); //taskType=4,入库测压任务,这个为仓储自动触发的任务,非主动平台下达, // 需要手动添加任务类型,和电池组编号 Integer taskType = task.getTaskType(); if(taskType == 4){ task.setDes(2); task.setPallets(taskDto.getPallet()); } Integer status = task.getStatus(); if(status == 13 || status == 23){ //电池放置在活化仓内 task.setExecuteTime(task.getStatusTime()); }else if(status == 14 || status == 24){ task.setExecuteEndTime(task.getStatusTime()); }*/ Date statusTime = task.getStatusTime(); switch (status){ case 1: case 11: case 21: task.setPickUpStartTime(statusTime);break; case 2: case 12: case 22: task.setPickUpTime(statusTime);break; case 13: case 23: task.setActivationChamberStartTime(statusTime);break; case 14: case 24: task.setActivationChamberPickUpTime(statusTime);break; case 15: case 25: task.setActivationChamberEndTime(statusTime);break; case 4: case 16: case 26: task.setBackFinishTime(statusTime); task.setEndTime(new Date()); break; default: throw new IllegalArgumentException("status字段未定义,无法被识别: " + status); } taskService.update(task); return new Response().setII(1,"上报状态完成"); }