From 0f5a5a759221bde50ace126eae797326837f5f72 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期三, 16 十月 2024 16:15:12 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigatePositionConvert.java |   30 ++++++++++++++++++++++--------
 1 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigatePositionConvert.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigatePositionConvert.java
index fb6fa67..44adfe3 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigatePositionConvert.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigatePositionConvert.java
@@ -15,14 +15,15 @@
         String locNo = Utils.getLocNo(x, y, z);
 
         //搴撲綅鍙疯浆灏忚溅浜岀淮鐮�
-        LocService locMastService = SpringUtils.getBean(LocService.class);
-        Loc locMast = locMastService.getOne(new LambdaQueryWrapper<Loc>()
+        LocService locService = SpringUtils.getBean(LocService.class);
+        Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>()
                 .eq(Loc::getLocNo, locNo)
-                .eq(Loc::getHostId, hostId));
-        if (locMast == null) {
+                .eq(Loc::getHostId, hostId)
+                .eq(Loc::getStatus, 1));
+        if (loc == null) {
             return null;
         }
-        return locMast.getCode();
+        return loc.getCode();
     }
 
     //鍧愭爣缂栧彿杞瑇y杞�
@@ -37,14 +38,27 @@
 
     //WCS绯荤粺搴撲綅鍙疯浆璺緞绠楁硶鑺傜偣
     public static NavigateNode locNoToNode(String locNo) {
-        int col = Integer.parseInt(locNo.substring(0, 2));
-        int row = Integer.parseInt(locNo.substring(2, 5));
+        int col = Utils.getRow(locNo);
+        int row = Utils.getBay(locNo);
         int[] newPosition = coverPosition(col,row);
-        NavigateNode node = new NavigateNode(col, row);
+        NavigateNode node = new NavigateNode(newPosition[0], newPosition[1]);
         node.setZ(Utils.getLev(locNo));
         return node;
     }
 
+    //灏忚溅鏉″舰鐮佽浆璺緞绠楁硶鑺傜偣
+    public static NavigateNode codeToNode(String code, Long hostId) {
+        LocService locService = SpringUtils.getBean(LocService.class);
+        Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>()
+                .eq(Loc::getCode, code)
+                .eq(Loc::getHostId, hostId)
+                .eq(Loc::getStatus, 1));
+
+        NavigateNode node = new NavigateNode(loc.getRow(), loc.getBay());
+        node.setZ(loc.getLev());
+        return node;
+    }
+
     //璺緞绠楁硶鑺傜偣杞琖CS绯荤粺搴撲綅鍙�
     public static String nodeToLocNo(NavigateNode node) {
         return xyzToLocNo(node.getX(), node.getY(), node.getZ());

--
Gitblit v1.9.1