From 648d00ba15235bf349f54a7c4893abf73dabf2de Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期二, 03 九月 2024 12:08:52 +0800
Subject: [PATCH] 找库位bug

---
 src/main/resources/mapper/LocDetlMapper.xml             |   14 +++++++++++---
 src/main/java/com/zy/asrs/controller/OutController.java |    8 ++++----
 2 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index 1b7cb3d..7a2569e 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -91,13 +91,13 @@
             }
             List<LocDetl> locDetls;
             if (Cools.isEmpty(orderDetls.get(0).getSPgNO())) {
-                locDetls = locDetlService.queryStockByModel(orderDetl.getModel());
+                locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), null, null);
             } else {
                 locDetls = locDetlService.queryStock(orderDetl.getSPgNO());
             }
 
             for (LocDetl locDetl : locDetls) {
-                if (Cools.isEmpty(locDetl.getBatch())||Cools.isEmpty(orderDetl.getBatch())){
+                if (Cools.isEmpty(locDetl.getBatch()) || Cools.isEmpty(orderDetl.getBatch())) {
                     if (locDetl.getMatnr().equals(orderDetl.getMatnr())) {
                         if (issued > 0) {
                             LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
@@ -113,8 +113,8 @@
                             break;
                         }
                     }
-                }else {
-                    if (locDetl.getMatnr().equals(orderDetl.getMatnr())&&locDetl.getBatch().equals(orderDetl.getBatch())) {
+                } else {
+                    if (locDetl.getMatnr().equals(orderDetl.getMatnr()) && locDetl.getBatch().equals(orderDetl.getBatch())) {
                         if (issued > 0) {
                             LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
                                     issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index d45615b..dd8714e 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -248,9 +248,17 @@
         <if test="sPgNO != null and sPgNO != ''">
             and a.pg_no = #{sPgNO}
         </if>
-        <if test="batch != null and batch != ''">
-            and a.batch = #{batch}
-        </if>
+<!--        <if test="batch != null and batch != ''">-->
+<!--            and a.batch = #{batch}-->
+<!--        </if>-->
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
 <!--        <if test="orderNo != null and orderNo != ''">-->
 <!--            and a.order_no = #{orderNo}-->
 <!--        </if>-->

--
Gitblit v1.9.1