From 2b1c858126f9c059bd6e308923eabfc71b1b4e7a Mon Sep 17 00:00:00 2001
From: pjb <pjb123456>
Date: 星期一, 11 八月 2025 17:03:53 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   43 +++++++++++++++++++++++++++++--------------
 1 files changed, 29 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 627d74c..b6df9d2 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -340,7 +340,7 @@
             wrkMast.setIoTime(now);
             wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
             wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
-            wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+            wrkMast.setIoPri(staDesc.getStnNo() == 1064 || staDesc.getStnNo() == 1031 ? 14D: 13D); // 绌烘《鍑哄簱鍒颁簩鍙风綈瑁呯嚎,鍘绘墦鍖咃紝浼樺厛绾ф彁楂�
             wrkMast.setCrnNo(locMast.getCrnNo());
             wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
             wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
@@ -741,7 +741,7 @@
             throw new CoolException(locDetl.getLocNo() + "," + locDetl.getMatnr() + "," + locDetl.getBatch() + "搴撳瓨鏄庣粏宸茶鍐荤粨!");
         }
 
-        if (!loc.getLocSts().equals("O") || (!sourceLoc.getLocSts().equals("F") && !sourceLoc.getLocSts().equals("D"))){
+        if (!loc.getLocSts().equals("O") || (!sourceLoc.getLocSts().equals("F") && !sourceLoc.getLocSts().equals("M") && !sourceLoc.getLocSts().equals("Z"))){
             throw new CoolException("搴撲綅鐘舵�佸凡鏀瑰彉");
         }
         if (!sourceLoc.getCrnNo().equals(loc.getCrnNo())) {
@@ -763,7 +763,7 @@
         wrkMast.setFullPlt(Cools.isEmpty(locDetls)?"N":"Y"); // 婊℃澘锛歒
         wrkMast.setPicking("N"); // 鎷f枡
         wrkMast.setExitMk("N"); // 閫�鍑�
-        wrkMast.setEmptyMk(sourceLoc.getLocSts().equals("D")?"Y":"N"); // 绌烘澘
+        wrkMast.setEmptyMk(sourceLoc.getLocSts().equals("M") ? "M" : sourceLoc.getLocSts().equals("Z") ? "Z" : "N"); // 绌烘澘
         wrkMast.setBarcode(sourceLoc.getBarcode()); // 鎵樼洏鐮�
         wrkMast.setLinkMis("N");
         wrkMast.setAppeUser(userId);
@@ -790,7 +790,7 @@
             }
         }
         // 淇敼婧愬簱浣嶇姸鎬�
-        if (sourceLoc.getLocSts().equals("D") || sourceLoc.getLocSts().equals("F")) {
+        if (sourceLoc.getLocSts().equals("F") || sourceLoc.getLocSts().equals("M") || sourceLoc.getLocSts().equals("Z")) {
             sourceLoc.setLocSts("R"); // R.鍑哄簱棰勭害
             sourceLoc.setModiUser(userId);
             sourceLoc.setModiTime(now);
@@ -823,7 +823,7 @@
         if (wrkMast.getStaNo() == 1090 && wrkMast.getLocNo() == null) {
             throw new CoolException(workNo+"宸ヤ綔妗f棤娉曞畬鎴�,搴撲綅鍙蜂负绌猴紒");
         }
-        if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) {
+        if (wrkMast.getWrkSts() == 4L || wrkMast.getWrkSts() == 14L || wrkMast.getWrkSts() == 54L) {
             throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚");
         }
         // 瀹屾垚绌烘《搴撳叆鍑哄簱浠诲姟鍙︿竴涓换鍔�
@@ -844,6 +844,9 @@
         } else if(wrkMast.getIoType() == 1 && wrkMast.getWrkSts() == 10) {
             wrkMast.setWrkSts(2L);
             wrkMast.setRgvFinishTime(new Date());
+        } else if(wrkMast.getIoType() == 120) {
+            wrkMast.setWrkSts(54L);
+            wrkMast.setRgvFinishTime(new Date());
         }
         Date now = new Date();
         wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
@@ -857,13 +860,15 @@
         }
         if(workNoOther != 0) {
             WrkMast wrkMast1 = wrkMastService.selectById(workNoOther);
-            wrkMast1.setWrkSts(wrkMast.getWrkSts());
-            wrkMast1.setCrnStrTime(wrkMast.getCrnStrTime());
-            wrkMast1.setCrnEndTime(now);
-            wrkMast1.setModiTime(now);
-            wrkMast1.setModiUser(userId);
-            wrkMast1.setManuType("鎵嬪姩瀹屾垚");
-            wrkMastService.updateById(wrkMast1);
+            if (wrkMast1 != null) {
+                wrkMast1.setWrkSts(wrkMast.getWrkSts());
+                wrkMast1.setCrnStrTime(wrkMast.getCrnStrTime());
+                wrkMast1.setCrnEndTime(now);
+                wrkMast1.setModiTime(now);
+                wrkMast1.setModiUser(userId);
+                wrkMast1.setManuType("鎵嬪姩瀹屾垚");
+                wrkMastService.updateById(wrkMast1);
+            }
         }
     }
 
@@ -1099,7 +1104,7 @@
         String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
         String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
         // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
-        if (wrkMast.getWrkSts() <= 10) {
+        if (wrkMast.getWrkSts() <= 10  && wrkMast.getIoType()!=120) {
             locNo = wrkMast.getLocNo();
             locSts = "O";
 
@@ -1116,7 +1121,7 @@
                 locMastService.updateById(locMast);
             }
         // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
-        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
+        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14 && wrkMast.getIoType()!=120) {
             locNo = wrkMast.getSourceLocNo();
             if (wrkMast.getIoType() == 110) {
                 if(wrkMast.getStaNo() == 1035) { // 瀛愭媶鐩樻満绔欑偣
@@ -1141,6 +1146,16 @@
                 locMast.setModiUser(userId);
                 locMastService.updateById(locMast);
             }
+        } else if (wrkMast.getIoType()==120){
+            // 鍙栨秷鎿嶄綔浜哄憳璁板綍
+            wrkMast.setWrkSts(54L);
+            wrkMast.setManuType("鎵嬪姩鍙栨秷");
+            wrkMast.setModiUser(userId);
+            wrkMast.setModiTime(now);
+            if (!wrkMastService.updateById(wrkMast)) {
+                throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐�");
+            }
+            return;
         } else {
             throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
         }

--
Gitblit v1.9.1