From c28812eb7e5afa79cb5e2f4fbee7f96c7d7767ed Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期五, 03 四月 2026 14:33:22 +0800
Subject: [PATCH] AGV出库,立库查询库存优化

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   54 +++++++++++++++++++++++++++---------------------------
 1 files changed, 27 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 7afbf9d..db16ddc 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -370,35 +370,35 @@
                                     .eq("supp_code", wrkDetl.getSuppCode())
                                     .eq("matnr", wrkDetl.getMatnr())
                                     .eq("loc_no", locMast.getLocNo()));
+                            // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                            OrderDetlPakin detlPakin = orderDetlPakinService.selectOne(new EntityWrapper<OrderDetlPakin>()
+//                                                .eq("three_code", wrkDetl.getThreeCode()) //TODO 骞舵澘鏃堕渶瑕佷慨鏀笲SCODE涓鸿鍗昩scode
+                                    .eq("supp_code", wrkDetl.getSuppCode())
+                                    .eq("matnr", wrkDetl.getMatnr())
+                                    .eq("order_no", wrkDetl.getOrderNo()));
+                            if (!Cools.isEmpty(detlPakin)) {
+                                //浠诲姟鏄庣粏鏁伴噺=鏂板叆搴撴暟閲� + 鍘熷簱瀛樻暟閲�
+                                double locQty = 0.0;
+                                if (!Objects.isNull(locDetl)) {
+                                    locQty = locDetl.getAnfme();
+                                }
+                                double v = Math.round((wrkDetl.getAnfme() - locQty) * 10000) / 10000.0;
+                                double v1 = Math.round((detlPakin.getQty() + v) * 10000) / 10000.0;
+                                detlPakin.setQty(v1);
+                                detlPakin.setWorkQty(v1);
+                                detlPakin.setAdjustQty(wrkDetl.getAdjustQty());
+                                detlPakin.setSplusQty(wrkDetl.getSplusQty());
+                                if (!orderDetlPakinService.update(detlPakin, new EntityWrapper<OrderDetlPakin>()
+                                        .eq("matnr", detlPakin.getMatnr())
+                                        .eq("supp_code", detlPakin.getSuppCode())
+                                        .eq("order_no", detlPakin.getOrderNo()))) {
+                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                                    return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
+                                            + "],[locNo=" + wrkMast.getLocNo() + "]");
+                                }
+                            }
 
                             if (null != locDetl) {
-                                // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
-                                OrderDetlPakin detlPakin = orderDetlPakinService.selectOne(new EntityWrapper<OrderDetlPakin>()
-//                                                .eq("three_code", wrkDetl.getThreeCode()) //TODO 骞舵澘鏃堕渶瑕佷慨鏀笲SCODE涓鸿鍗昩scode
-                                        .eq("supp_code", wrkDetl.getSuppCode())
-                                        .eq("matnr", wrkDetl.getMatnr())
-                                        .eq("order_no", wrkDetl.getOrderNo()));
-                                try {
-                                    if (!Cools.isEmpty(detlPakin)) {
-                                        double v = Math.round((wrkDetl.getAnfme() - locDetl.getAnfme()) * 10000) / 10000.0;
-                                        double v1 = Math.round((detlPakin.getQty() + v) * 10000) / 10000.0;
-                                        detlPakin.setQty(v1);
-                                        detlPakin.setWorkQty(v1);
-                                        detlPakin.setAdjustQty(wrkDetl.getAdjustQty());
-                                        detlPakin.setSplusQty(wrkDetl.getSplusQty());
-                                        if (!orderDetlPakinService.update(detlPakin, new EntityWrapper<OrderDetlPakin>()
-                                                .eq("matnr", detlPakin.getMatnr())
-                                                .eq("supp_code", detlPakin.getSuppCode())
-                                                .eq("order_no", detlPakin.getOrderNo()))) {
-                                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                                            return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo()
-                                                    + "],[locNo=" + wrkMast.getLocNo() + "]");
-                                        }
-                                    }
-                                } catch (Exception e) {
-                                    log.error(e.getMessage());
-                                }
-
                                 LocDetl detl = new LocDetl();
                                 detl.setAnfme(wrkDetl.getAnfme());
                                 detl.setStandby1(wrkDetl.getSuppCode());

--
Gitblit v1.9.1