From d1ef13d1f116e69a7f44e78d64fd0fe4ce2cad80 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 10 二月 2025 13:17:10 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/enums/WrkStsType.java | 5 + src/main/java/com/zy/asrs/controller/OpenController.java | 45 ++++++++++- src/main/java/com/zy/core/enums/WrkIoType.java | 1 src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java | 20 +++++ src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java | 17 ++++ src/main/java/com/zy/common/service/CommonService.java | 112 +++++++++++++++++++++++++++ src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java | 17 ++++ 7 files changed, 210 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index da84136..c72e692 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/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) { diff --git a/src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java b/src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java new file mode 100644 index 0000000..b1fadc2 --- /dev/null +++ b/src/main/java/com/zy/asrs/domain/param/CreateInTaskParam.java @@ -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; + +} diff --git a/src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java b/src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java new file mode 100644 index 0000000..ffab168 --- /dev/null +++ b/src/main/java/com/zy/asrs/domain/param/CreateLocMoveTaskParam.java @@ -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; + +} diff --git a/src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java b/src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java new file mode 100644 index 0000000..4e16ca1 --- /dev/null +++ b/src/main/java/com/zy/asrs/domain/param/CreateOutTaskParam.java @@ -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; + +} diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 8604944..42cc7bb 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/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("绉诲簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒"); + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + + 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("鍏ュ簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒"); + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + + 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("鍑哄簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒"); + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + + return true; + } + } diff --git a/src/main/java/com/zy/core/enums/WrkIoType.java b/src/main/java/com/zy/core/enums/WrkIoType.java index 3b3a19f..e6fbccb 100644 --- a/src/main/java/com/zy/core/enums/WrkIoType.java +++ b/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, "灏忚溅鍏呯數"), ; diff --git a/src/main/java/com/zy/core/enums/WrkStsType.java b/src/main/java/com/zy/core/enums/WrkStsType.java index d44ac9d..ac9e6c9 100644 --- a/src/main/java/com/zy/core/enums/WrkStsType.java +++ b/src/main/java/com/zy/core/enums/WrkStsType.java @@ -44,6 +44,11 @@ ANALYZE_MANUAL(402, "鎵嬪姩浠诲姟瑙f瀽"), EXECUTE_MANUAL(403, "鎵ц鎵嬪姩浠诲姟"), COMPLETE_MANUAL(410, "鎵嬪姩浠诲姟瀹屾垚"), + + NEW_LOC_MOVE(501, "鐢熸垚绉诲簱浠诲姟"), + LOC_MOVE_SHUTTLE_RUN(502, "灏忚溅鎼繍涓�"), + COMPLETE_LOC_MOVE(509, "绉诲簱瀹屾垚"), + SETTLE_LOC_MOVE(510, "绉诲簱搴撳瓨鏇存柊"), ; -- Gitblit v1.9.1