From 9ed4cb53a2c643b879f993537f5a2793fba56ba1 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期一, 31 三月 2025 07:57:13 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/controller/AgvOpenController.java |   51 ++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 44 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvOpenController.java b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
index 4748ef8..48b4713 100644
--- a/src/main/java/com/zy/asrs/controller/AgvOpenController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvOpenController.java
@@ -15,6 +15,8 @@
 import com.zy.common.web.BaseController;
 import lombok.Setter;
 import lombok.extern.slf4j.Slf4j;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
@@ -30,6 +32,8 @@
 import java.util.Date;
 import java.util.EnumSet;
 import java.util.Map;
+
+import static org.reflections.Reflections.log;
 
 /**
  * 涓婃姤浜嬩欢绫诲瀷锛坋ventType锛夛細
@@ -51,6 +55,8 @@
 @RestController
 @RequestMapping("/agv")
 public class AgvOpenController extends BaseController {
+
+    private static final Logger log = LoggerFactory.getLogger(AgvMobileController.class);
 
     @Autowired
     AgvWrkMastService agvWrkMastService;
@@ -174,8 +180,13 @@
 
             //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱
             if (agvWrkMast.getIoType() == 101 || agvWrkMast.getIoType() == 103 || agvWrkMast.getIoType() == 107) {
-                //淇敼鍑哄簱绔欑偣鐘舵��
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue());
+                AgvBasDevp byDevNo = agvBasDevpService.getByDevNo(agvWrkMast.getLocNo());
+                if (byDevNo != null) {
+                    log.info("鍑哄簱浠诲姟杩涘叆绔欑偣===>>绔欑偣鐮侊細{}锛岀珯鐐圭姸鎬亄}", byDevNo.getDevNo(), byDevNo.getLocSts());
+                    //淇敼鍑哄簱绔欑偣鐘舵��
+                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(), "F", agvWrkMast.getBarcode(), agvWrkMast.getWhsType().shortValue());
+
+                }
             }
             //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱
             if (agvWrkMast.getIoType() == 110) {
@@ -213,18 +224,44 @@
                 case 10:
                     // 鎷f枡鍏ュ簱浠诲姟
                 case 53:
+                    // 绔欑偣閫�鍥�
+                case 58:
                     // 鐩樼偣鍐嶅叆搴�
                 case 57:
                     AgvBasDevp byDevNo = agvBasDevpService.getByDevNo(agvWrkMast.getSourceLocNo());
                     String locSts = "O";
-                    if (byDevNo != null && "R".equals(byDevNo.getLocSts())) {
-                        locSts = "O";
-                    } else {
-                        locSts = byDevNo.getLocSts();
+                    if (byDevNo != null) {
+                        assert log != null;
+//                        if (!Cools.isEmpty(agvWrkMast.getBarcode())) {
+//                            AgvBasDevp agvBasDevp = agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>().eq("barcode", agvWrkMast.getBarcode()));
+//                            if (!Cools.isEmpty(agvBasDevp) && agvBasDevp.getLocSts().equals("F") && !agvBasDevp.getDevNo().equals(byDevNo.getDevNo())) {
+//                                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(), locSts, "", null);
+//                            }
+//                        }
+                        log.info("鏂欐灦绂诲紑鏃跺綋鍓嶇珯鐐圭姸鎬�:{},{}", byDevNo.getDevNo(), byDevNo.getLocSts());
+                        if ("S".equals(byDevNo.getLocSts()) || "F".equals(byDevNo.getLocSts())) {
+                            log.info("鏂欐灦绂诲紑鏃跺綋鍓嶇珯鐐圭姸鎬佷繚鎸佷笉鍙�1:{},{}", byDevNo.getDevNo(), byDevNo.getLocSts());
+                            locSts = byDevNo.getLocSts();
+                            agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), locSts, byDevNo.getBarcode(), null);
+                        } else {
+                            log.info("鏂欐灦绂诲紑鏃跺綋鍓嶇珯鐐圭姸鎬佷繚鎸佷笉鍙�2:{},{}", byDevNo.getDevNo(), byDevNo.getLocSts());
+                            locSts = "O";
+                            agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), locSts, "", null);
+                        }
+
                     }
-                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(), locSts, "", null);
                     break;
             }
+
+            if (agvWrkMast.getIoType() == 108 || agvWrkMast.getIoType() == 114) {
+                //鏇存柊搴撳瓨鏄庣粏
+                agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(), agvWrkMast.getLocNo());
+                //淇敼婧愬簱浣嶇姸鎬佷负O
+                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0);
+            } else if (agvWrkMast.getIoType() == 109 && !agvWrkMast.getSourceLocNo().substring(0, 2).equals("DB")) {
+                //淇敼婧愬簱浣嶇姸鎬佷负O
+                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(), "O", "", agvWrkMast.getWhsType().shortValue(), "", (short) 0);
+            }
             //if(agvWrkMast.getIoType() == 1 || agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57 || agvWrkMast.getIoType() == 10){
             //    //淇敼婧愮珯鐐圭姸鎬佷负O.绌猴紝浠ュ強瑙g粦鎵樼洏鏉$爜
             //    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",null);

--
Gitblit v1.9.1