From ad79ba405b2d1ac96423f88f4e8a76c584b9d38a Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期一, 09 二月 2026 15:57:06 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/CommonService.java | 45 +++++++++++++++++++++++++++++++++++----------
1 files changed, 35 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 6026fd8..52fba06 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -12,11 +12,13 @@
import com.zy.common.utils.NavigateUtils;
import com.zy.common.utils.RedisUtil;
import com.zy.core.News;
-import com.zy.core.enums.RedisKeyType;
-import com.zy.core.enums.SlaveType;
-import com.zy.core.enums.WrkIoType;
-import com.zy.core.enums.WrkStsType;
+import com.zy.core.cache.MessageQueue;
+import com.zy.core.cache.SlaveConnection;
+import com.zy.core.enums.*;
import com.zy.core.model.StationObjModel;
+import com.zy.core.model.Task;
+import com.zy.core.model.command.StationCommand;
+import com.zy.core.thread.StationThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -177,7 +179,10 @@
if (!sourceCrnResult.getCrnNo().equals(targetCrnResult.getCrnNo())) {
throw new CoolException("婧愬簱浣嶅拰鐩爣搴撲綅涓嶅湪鍚屼竴宸烽亾");
}
-
+ List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wms_wrk_no", param.getTaskNo()));
+ if (!wrkMasts.isEmpty()) {
+ throw new CoolException("宸茬粡鐢熸垚鏀逛换鍔″彿浠诲姟="+param.getTaskNo());
+ }
// 鑾峰彇宸ヤ綔鍙�
int workNo = getWorkNo(WrkIoType.LOC_MOVE.id);
// 淇濆瓨宸ヤ綔妗�
@@ -222,6 +227,7 @@
//鍏ュ簱浠诲姟
public WrkMast createInTask(CreateInTaskParam param) {
Date now = new Date();
+// String s = Utils.WMSLocToWCSLoc(param.getLocNo());
LocMast locMast = locMastService.queryByLoc(param.getLocNo());
if (null == locMast) {
throw new CoolException(param.getLocNo() + "鐩爣搴撲綅涓嶅瓨鍦�");
@@ -248,16 +254,22 @@
WrkMast wrkMast = new WrkMast();
wrkMast.setWrkNo(workNo);
wrkMast.setIoTime(now);
- wrkMast.setWrkSts(WrkStsType.NEW_INBOUND.sts); // 宸ヤ綔鐘舵�侊細1.鐢熸垚鍏ュ簱浠诲姟
+ wrkMast.setWrkSts(WrkStsType.INBOUND_DEVICE_RUN.sts); // 宸ヤ綔鐘舵�侊細3.璁惧鎼繍涓�
wrkMast.setIoType(WrkIoType.IN.id); // 鍏ュ嚭搴撶姸鎬侊細 1.鍏ュ簱
wrkMast.setIoPri(ioPri);
wrkMast.setLocNo(param.getLocNo()); // 鐩爣搴撲綅
- wrkMast.setSourceStaNo(param.getSourceStaNo());//婧愮珯
- wrkMast.setStaNo(param.getStaNo());//鐩爣绔�
- wrkMast.setWmsWrkNo(param.getTaskNo());
+ wrkMast.setSourceStaNo(Integer.valueOf(param.getSourceStaNo()));//婧愮珯
+ wrkMast.setStaNo(Integer.valueOf(param.getSourceStaNo()));//鐩爣绔�
+ wrkMast.setWmsWrkNo(String.valueOf(param.getTaskNo()));
wrkMast.setBarcode(param.getBarcode());
wrkMast.setAppeTime(now);
wrkMast.setModiTime(now);
+ StationThread stationThread = (StationThread) SlaveConnection.get(SlaveType.Devp, 1);
+
+ StationCommand command = stationThread.getCommand(StationCommandType.WRITE_INFO,
+ wrkMast.getWrkNo(), Integer.valueOf(param.getSourceStaNo()), Integer.valueOf(param.getSourceStaNo()), 0);
+
+ MessageQueue.offer(SlaveType.Devp, 1, new Task(2, command));
if (findCrnResult.getCrnType().equals(SlaveType.Crn)) {
wrkMast.setCrnNo(findCrnResult.getCrnNo());
@@ -285,7 +297,7 @@
//鍑哄簱浠诲姟
public boolean createOutTask(CreateOutTaskParam param) {
Date now = new Date();
- LocMast locMast = locMastService.queryByLoc(param.getLocNo());
+ LocMast locMast = locMastService.queryByLoc(param.getSourceLocNo());
if (null == locMast) {
throw new CoolException("婧愬簱浣嶄笉瀛樺湪");
}
@@ -336,6 +348,19 @@
wrkMast.setIoType(WrkIoType.OUT.id); // 鍏ュ嚭搴撶姸鎬侊細 101.鍑哄簱
wrkMast.setIoPri(ioPri);
wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+
+ if(!Cools.isEmpty(param.getLocNo())) {
+ //鐩爣绔欑偣
+ LocMast locMast1 = locMastService.queryByLoc(param.getLocNo());
+ if (null == locMast1) {
+ throw new CoolException("婧愬簱浣嶄笉瀛樺湪");
+ }
+
+ if (!locMast1.getLocSts().equals("O")) {
+ throw new CoolException("鐩爣搴撲綅涓嶅浜庡湪搴撶姸鎬�");
+ }
+ wrkMast.setLocNo(locMast1.getLocNo()); //鐩爣搴撲綅
+ }
wrkMast.setSourceStaNo(sourceStationId);//婧愮珯
wrkMast.setStaNo(staNo);//鐩爣绔�
wrkMast.setWmsWrkNo(param.getTaskNo());
--
Gitblit v1.9.1