From 54c5131962c735b5e1d96a9be66fffe9c7eed468 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 29 十二月 2025 08:48:59 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java |   36 ++++++++++++++++++++++++++++++------
 1 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index 790ab43..7cb0de0 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -1469,16 +1469,40 @@
 
             // query current segment
             Segment currSeg = segmentService.getCurrRunningSeg(agv.getId(), agv_06_up.getQrCode());
+            if (null == currSeg) {
+                log.error("failed to find curr segment [{}]", agv.getUuid());
+            } else {
 
+                boolean responseAck = true;
+                TaskPosDto.PosType posType = TaskPosDto.PosType.of(currSeg.getPosType());
+                assert null != posType;
+                switch (posType) {
+                    case ORI_LOC:
+                    case DEST_LOC:
+                        break;
+                    case ORI_STA:
+                    case DEST_STA:
+                        // todo
+                        break;
+                    default:
+                        responseAck = false;
+                        log.error("agv[{}] has wrong posType [{}], segment [{}]", protocol.getAgvNo(), posType.toString(), currSeg.getId());
+                        break;
+                }
 
-            // todo:vincent 鏍¢獙鏄惁鍙互鍙栨斁璐�
+                if (responseAck) {
 
-            AGV_06_DOWN agv_06_down = new AGV_06_DOWN();
-            agv_06_down.setSerialNo(agv_06_up.getSerialNo());
-            agv_06_down.setActionCode(agv_06_up.getActionCode());
-            agv_06_down.setResult(1);
+                    // todo:vincent 鏍¢獙鏄惁鍙互鍙栨斁璐�
 
-            redis.push(RedisConstant.AGV_PATH_DOWN_FLAG, AgvProtocol.build(protocol.getAgvNo()).setMessageBody(agv_06_down));
+                    AGV_06_DOWN agv_06_down = new AGV_06_DOWN();
+                    agv_06_down.setSerialNo(agv_06_up.getSerialNo());
+                    agv_06_down.setActionCode(agv_06_up.getActionCode());
+                    agv_06_down.setResult(1);
+
+                    redis.push(RedisConstant.AGV_PATH_DOWN_FLAG, AgvProtocol.build(protocol.getAgvNo()).setMessageBody(agv_06_down));
+                }
+
+            }
         }
 
         // 鏂欎粨淇℃伅鍖�

--
Gitblit v1.9.1