From aa33e56e37cd19b88ae8eea69c5ebc7c6da8b1d2 Mon Sep 17 00:00:00 2001
From: Administrator <pjb>
Date: 星期四, 05 六月 2025 17:59:47 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/glccwcs' into glccwcs

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   32 +++++++++++++++++++++++---------
 1 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 18c8b4b..fd462e2 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -177,6 +177,7 @@
                             storageEscalationParam.setWCSErrorMessage(storageEscalationParam.getWCSErrorMessage() + errMsg);
                         }
                         storageEscalationParam.setBarcode(BoxNo);
+                        storageEscalationParam.setMatIdList(staProtocol.getMatIdList());
                         log.info("缁勬墭鍏ュ簱={}", storageEscalationParam);
                         TaskWrk taskWrk = toWmsService.getLocNoFromWms(storageEscalationParam);
                         if (taskWrk == null) {
@@ -184,16 +185,21 @@
                             continue;
                         }
                         if (back) {
-                            log.info("鎵樼洏閫�鍥�==>{}锛寋}", BoxNo, errMsg);
                             staProtocol.setStaNo(inSta.getBackSta().shortValue());
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
                             MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            log.info("缁勬墭鍏ュ簱鎵樼洏閫�鍥炲懡浠ゆ帹閫佽緭閫佺嚎闃熷垪鎴愬姛==>{}锛寋}", BoxNo, errMsg);
                         } else {
                             StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
                                     .eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId()));
+                            if (staDesc == null) {
+                                log.error("缁勬墭鍏ュ簱璺緞涓嶅瓨鍦紝wrkNo={},crn={},stn_no={}",taskWrk.getWrkNo(),taskWrk.getCrnNo(),staProtocol.getSiteId());
+                                continue;
+                            }
                             staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
                             staProtocol.setStaNo(staDesc.getCrnStn().shortValue());
                             MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            log.info("缁勬墭鍏ュ簱鍛戒护鎺ㄩ�佽緭閫佺嚎闃熷垪鎴愬姛:{}",staProtocol);
                         }
 
                     }
@@ -342,6 +348,15 @@
                     continue;
                 }
 
+                LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint());
+                if(!locMast.getLocSts().equals("O") && taskWrk.getWrkSts() == 2) {
+                    log.error("鍏ュ簱WMS鍒嗛厤搴撲綅{}鏈夎锛屽簱浣嶇姸鎬佷负{}",locMast.getLocNo(),locMast.getLocSts());
+                    taskWrk.setWrkSts(5);
+                    taskWrk.setMemo("WMS鍒嗛厤搴撲綅鏈夎");
+                    taskWrkService.updateById(taskWrk);
+                    continue;
+                }
+
                 // 鍫嗗灈鏈烘帶鍒惰繃婊�
                 if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) {
                     continue;
@@ -419,24 +434,24 @@
 
                     LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint());
                     //鍒ゆ柇鍏跺簱浣嶆槸鍚︿负娣卞簱浣嶏紝濡傛灉涓烘繁搴撲綅鎵惧叾娴呭簱浣嶆槸閮芥湁璐�
-                    boolean flag = false;
+                    int flag = 0;
                     if (locMast.getRow1() == 1 || locMast.getRow1() == 5 || locMast.getRow1() == 9) {
-                        flag = true;
+                        flag = 1;
                     } else if (locMast.getRow1() == 4 || locMast.getRow1() == 8 || locMast.getRow1() == 12) {
-                        flag = true;
+                        flag = 2;
                     }
-                    if (flag) {
+                    if (flag == 1) {
                         LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>()
-                                .eq("row1", (locMast.getRow1() - 1))
+                                .eq("row1", (locMast.getRow1() + 1))
                                 .eq("bay1", locMast.getBay1())
                                 .eq("lev1", locMast.getLev1()).eq("loc_sts", "F"));
                         if (!Cools.isEmpty(locMast1)) {
                             log.info(locMast.getLocNo() + "鍑烘繁搴撲綅锛屾祬搴撲綅鏈夎揣");
                             continue;
                         }
-                    } else {
+                    } else if (flag == 2){
                         LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>()
-                                .eq("row1", (locMast.getRow1() + 1))
+                                .eq("row1", (locMast.getRow1() - 1))
                                 .eq("bay1", locMast.getBay1())
                                 .eq("lev1", locMast.getLev1()).eq("loc_sts", "F"));
                         if (!Cools.isEmpty(locMast1)) {
@@ -625,7 +640,6 @@
                         //鏇存柊搴撲綅鐘舵��
                         LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint());
                         locMast.setLocSts("F");//F.鍦ㄥ簱
-                        locMast.setStatus("1");
                         locMast.setBarcode(taskWrk.getBarcode());//鎵樼洏鐮�
                         locMast.setModiTime(new Date());
                         locMast.setModiUser(9999L);

--
Gitblit v1.9.1