From 0a1dceaa6478ec0081c38721be88fa6d807c6094 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 17 九月 2025 14:26:34 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/controller/OutController.java |   51 +++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 37 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index 81a5510..76c4d62 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -83,12 +83,22 @@
             return R.parse("璁㈠崟鏁版嵁涓虹┖");
         }
 
-        // 鎸夊寘瑁呯粍鍙峰垎缁勫鐞�
-        Map<String, List<OrderDetl>> brandGroup = orderDetls.stream()
-                .collect(Collectors.groupingBy(o -> {
-                    String brand = o.getBrand();
-                    return brand != null ? brand : "璺ㄥ贩閬�";
-                }));
+        Map<String, List<OrderDetl>> brandGroup;
+        if (order.getDocType() == 27) {
+            // 鎸夊寘瑁呯粍鍙峰垎缁勫鐞�
+            brandGroup = orderDetls.stream()
+                    .collect(Collectors.groupingBy(o -> {
+                        String brand = o.getModel();
+                        return brand != null ? brand : "璺ㄥ贩閬�";
+                    }));
+        } else {
+            // 鎸夊寘瑁呯粍鍙峰垎缁勫鐞�
+            brandGroup = orderDetls.stream()
+                    .collect(Collectors.groupingBy(o -> {
+                        String brand = o.getBrand();
+                        return brand != null ? brand : "璺ㄥ贩閬�";
+                    }));
+        }
 
 
         List<LocDto> locDtos = new ArrayList<>();
@@ -97,11 +107,18 @@
         for (Map.Entry<String, List<OrderDetl>> entry : brandGroup.entrySet()) {
             String brand = entry.getKey();
             List<OrderDetl> brandOrderDetls = entry.getValue();
+            List<LocDetl> locDetls;
+            if (order.getDocType() == 27) {
+                locDetls = locDetlService.selectList(
+                        new EntityWrapper<LocDetl>().eq("model", brand)
+                );
+            } else {
+                // 鏌ヨ繖涓寘瑁呯粍瀵瑰簲鐨勬墍鏈夊簱瀛�
+                locDetls = locDetlService.selectList(
+                        new EntityWrapper<LocDetl>().eq("brand", brand)
+                );
+            }
 
-            // 鏌ヨ繖涓寘瑁呯粍瀵瑰簲鐨勬墍鏈夊簱瀛�
-            List<LocDetl> locDetls = locDetlService.selectList(
-                    new EntityWrapper<LocDetl>().eq("brand", brand)
-            );
             if (locDetls.isEmpty()) continue;
 
             // 鑾峰彇鍑哄簱鍙�
@@ -133,7 +150,7 @@
                 locDto.setUnit(locDetl.getUnit());
                 locDto.setModel(locDetl.getModel());
                 locDto.setThreeCode(locDetl.getThreeCode());
-                locDto.setBrand(brand);
+                locDto.setBrand(locDetl.getBrand());
                 locDto.setOrderNo(firstDetl.getOrderNo());
                 locDto.setStaNos(staNos);
                 locDto.setOrderDetlId(firstDetl.getId());
@@ -269,9 +286,15 @@
                             ioWorkType = IoWorkType.ALL_OUT;
                         }
                     }
-                    workService.stockOut(staNo, locDetlDtos,
-                            ioWorkType,
-                            getUserId(), optionValue);
+                    if (order.getDocType() == 27) {
+                        workService.stockOut2(staNo, locDetlDtos,
+                                ioWorkType,
+                                getUserId(), optionValue);
+                    }else {
+                        workService.stockOut(staNo, locDetlDtos,
+                                ioWorkType,
+                                getUserId(), optionValue);
+                    }
                 } else {
                     throw new CoolException("鎵�閫夊簱浣嶇姸鎬佷笉涓篎/D锛屽簱浣嶅彿锛�" +
                             locMast.getLocNo() + "锛屽綋鍓嶇姸鎬侊細" +

--
Gitblit v1.9.1