src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/common/service/CommonService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/enums/WrkIoType.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/enums/WrkStsType.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -3,9 +3,7 @@ import com.core.common.R; import com.zy.asrs.domain.NotifyDto; import com.zy.asrs.domain.enums.NotifyMsgType; import com.zy.asrs.domain.param.CancelTaskParam; import com.zy.asrs.domain.param.CompleteTaskParam; import com.zy.asrs.domain.param.CreateMoveTaskParam; import com.zy.asrs.domain.param.*; import com.zy.asrs.utils.NotifyUtils; import com.zy.common.service.CommonService; import com.zy.core.dispatcher.ShuttleDispatchUtils; @@ -13,8 +11,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @Slf4j @RestController @@ -40,6 +36,45 @@ return R.error("生成失败"); } //移库任务 @PostMapping("/createLocMoveTask") public R createLocMoveTask(@RequestBody CreateLocMoveTaskParam param) { if (param == null) { return R.error("参数不能为空"); } boolean result = commonService.createLocMoveTask(param); if (result) { return R.ok(); } return R.error("生成移库任务失败"); } //入库任务 @PostMapping("/createInTask") public R createInTask(@RequestBody CreateInTaskParam param) { if (param == null) { return R.error("参数不能为空"); } boolean result = commonService.createInTask(param); if (result) { return R.ok(); } return R.error("生成入库任务失败"); } //出库任务 @PostMapping("/createOutTask") public R createOutTask(@RequestBody CreateOutTaskParam param) { if (param == null) { return R.error("参数不能为空"); } boolean result = commonService.createOutTask(param); if (result) { return R.ok(); } return R.error("生成出库任务失败"); } @PostMapping("/completeTask") public R completeTask(@RequestBody CompleteTaskParam param) { if (param == null) { src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java
New file @@ -0,0 +1,20 @@ package com.zy.asrs.domain.param; import lombok.Data; @Data public class CreateInTaskParam { //wms任务号 private String taskNo; //源站 private Integer sourceStaNo; //目标站 private Integer staNo; //目标库位 private String locNo; } src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java
New file @@ -0,0 +1,17 @@ package com.zy.asrs.domain.param; import lombok.Data; @Data public class CreateLocMoveTaskParam { //wms任务号 private String taskNo; //源库位 private String sourceLocNo; //目标库位 private String locNo; } src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java
New file @@ -0,0 +1,17 @@ package com.zy.asrs.domain.param; import lombok.Data; @Data public class CreateOutTaskParam { //wms任务号 private String taskNo; //目标站 private Integer staNo; //源库位 private String sourceLocNo; } src/main/java/com/zy/common/service/CommonService.java
@@ -2,10 +2,10 @@ import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.domain.param.CancelTaskParam; import com.zy.asrs.domain.param.CompleteTaskParam; import com.zy.asrs.domain.param.*; import com.zy.asrs.entity.*; import com.zy.asrs.service.*; import com.zy.core.News; import com.zy.core.enums.WrkIoType; import com.zy.core.enums.WrkStsType; import lombok.extern.slf4j.Slf4j; @@ -24,6 +24,8 @@ private WrkMastLogService wrkMastLogService; @Autowired private WrkLastnoService wrkLastnoService; @Autowired private LocMastService locMastService; /** * 生成工作号 @@ -111,4 +113,110 @@ return true; } //移库任务 public boolean createLocMoveTask(CreateLocMoveTaskParam param) { Date now = new Date(); LocMast locMast = locMastService.queryByLoc(param.getSourceLocNo()); if (null == locMast) { throw new CoolException("源库位不存在"); } if (!locMast.getLocSts().equals("F")) { throw new CoolException("源库位不处于在库状态"); } // 获取工作号 int workNo = getWorkNo(WrkIoType.LOC_MOVE.id); // 保存工作档 WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_LOC_MOVE.sts); // 工作状态:501.生成移库任务 wrkMast.setIoType(WrkIoType.LOC_MOVE.id); // 入出库状态: 201.移库任务 wrkMast.setIoPri(800D); wrkMast.setSourceLocNo(param.getSourceLocNo()); wrkMast.setLocNo(param.getLocNo()); // 目标库位 wrkMast.setWmsWrkNo(param.getTaskNo()); wrkMast.setAppeTime(now); wrkMast.setModiTime(now); boolean res = wrkMastService.insert(wrkMast); if (!res) { News.error("移库任务 --- 保存工作档失败!"); throw new CoolException("保存工作档失败"); } return true; } //入库任务 public boolean createInTask(CreateInTaskParam param) { Date now = new Date(); LocMast locMast = locMastService.queryByLoc(param.getLocNo()); if (null == locMast) { throw new CoolException("目标库位不存在"); } if (!locMast.getLocSts().equals("O")) { throw new CoolException("目标库位不处于空库状态"); } // 获取工作号 int workNo = getWorkNo(WrkIoType.IN.id); // 保存工作档 WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_INBOUND.sts); // 工作状态:1.生成入库任务 wrkMast.setIoType(WrkIoType.IN.id); // 入出库状态: 1.入库 wrkMast.setIoPri(100D); wrkMast.setLocNo(param.getLocNo()); // 目标库位 wrkMast.setSourceStaNo(param.getSourceStaNo());//源站 wrkMast.setStaNo(param.getStaNo());//目标站 wrkMast.setWmsWrkNo(param.getTaskNo()); wrkMast.setAppeTime(now); wrkMast.setModiTime(now); boolean res = wrkMastService.insert(wrkMast); if (!res) { News.error("入库任务 --- 保存工作档失败!"); throw new CoolException("保存工作档失败"); } return true; } //出库任务 public boolean createOutTask(CreateOutTaskParam param) { Date now = new Date(); LocMast locMast = locMastService.queryByLoc(param.getSourceLocNo()); if (null == locMast) { throw new CoolException("源库位不存在"); } if (!locMast.getLocSts().equals("F")) { throw new CoolException("源库位不处于在库状态"); } // 获取工作号 int workNo = getWorkNo(WrkIoType.OUT.id); // 保存工作档 WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_OUTBOUND.sts); // 工作状态:101.生成出库任务 wrkMast.setIoType(WrkIoType.OUT.id); // 入出库状态: 101.出库 wrkMast.setIoPri(100D); wrkMast.setSourceLocNo(param.getSourceLocNo()); // 源库位 wrkMast.setStaNo(param.getStaNo());//目标站 wrkMast.setWmsWrkNo(param.getTaskNo()); wrkMast.setAppeTime(now); wrkMast.setModiTime(now); boolean res = wrkMastService.insert(wrkMast); if (!res) { News.error("出库任务 --- 保存工作档失败!"); throw new CoolException("保存工作档失败"); } return true; } } src/main/java/com/zy/core/enums/WrkIoType.java
@@ -7,6 +7,7 @@ IN(1, "入库"), OUT(101, "出库"), SHUTTLE_MOVE(200, "小车移动"), LOC_MOVE(201, "移库任务"), SHUTTLE_CHARGE(300, "小车充电"), ; src/main/java/com/zy/core/enums/WrkStsType.java
@@ -44,6 +44,11 @@ ANALYZE_MANUAL(402, "手动任务解析"), EXECUTE_MANUAL(403, "执行手动任务"), COMPLETE_MANUAL(410, "手动任务完成"), NEW_LOC_MOVE(501, "生成移库任务"), LOC_MOVE_SHUTTLE_RUN(502, "小车搬运中"), COMPLETE_LOC_MOVE(509, "移库完成"), SETTLE_LOC_MOVE(510, "移库库存更新"), ;