From 605a99cf4bc3da9cf7fa4077969dd6b09829df2e Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期三, 12 六月 2024 13:03:11 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java |   44 ++++++++++++++++++++++++++++++++++++++------
 1 files changed, 38 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index bfe79c1..61fa350 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -328,15 +328,46 @@
         if (Cools.isEmpty(agvBasDevp)) {
             throw new CoolException("鏆傛棤"+ station + "绔欑偣");
         }
+        int br = 0;
+        if (containerType == 21 && agvBasDevp.getFloor() == 2) {
+            containerType = 20;
+        }
+        switch (containerType) {
+            case 10:
+                br = 1;
+                break;
+            case 20:
+                br = 2;
+                break;
+            case 21:
+                br = 4;
+                break;
+            case 30:
+                br = 3;
+                break;
+            case 40:
+                br = 5;
+                break;
+        }
+        if (br == 4 && agvBasDevp.getLocType1() == 2) {
+            br = 2;
+        }
+        if (agvBasDevp.getLocType1() != br) {
+            throw new CoolException("鍑嗗叆璐ф灦绫诲瀷涓嶇鍚堬紝妫�鏌ヨ揣鏋跺拰绔欑偣鏄惁涓�鑷达紒");
+        }
         if (containerType == 40) {
             locType = 5;
         } else if (containerType == 21 && agvBasDevp.getFloor() == 3) {
             locType = 4;
         } else if (containerType == 20 && agvBasDevp.getFloor() == 3) {
             locType = 2;
+        } else if (containerType == 30) {
+            locType = 3;
         } else {
             locType = agvBasDevp.getLocType1();
         }
+
+
 
         if(!Cools.eq(agvBasDevp.getBarcode(),containerCode) && !agvBasDevp.getLocSts().equals("O") && !emptyAutoIn){
             throw new CoolException("褰撳墠宸ヤ綔浣嶇姸鎬佷负" + agvBasDevp.getLocSts()+",鏃犳硶杩涜鍏ュ簱");
@@ -584,8 +615,12 @@
             }
             return;
 
-        } else {
-            agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+        } else  {
+            if(wrkMast.getIoType() == 110){
+                agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),206,"鎵嬪姩瀹屾垚",userId);
+            } else {
+                agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+            }
         }
 
         //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱
@@ -598,12 +633,9 @@
             agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getSourceLocNo(),"O","",wrkMast.getWhsType().shortValue());
         }
         //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱
-        if(wrkMast.getIoType() == 110){
-            agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getLocNo(),"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
-        }
+
         if (wrkMast.getIoType() == 10) {
             agvBasDevpService.updateLocStsAndBarcodeByDevNo(wrkMast.getSourceLocNo(),"O",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
-            agvLocMastService.updateLocStsByLocNo(wrkMast.getLocNo(),"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(wrkMast.getLocNo()));
         }
 
     }

--
Gitblit v1.9.1