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