From 4c5e705c9ac10827254900305b7b915191005db4 Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期二, 21 四月 2026 15:25:16 +0800
Subject: [PATCH] 版改板

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java |   35 ++++++++++++++++++++++++++---------
 1 files changed, 26 insertions(+), 9 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
index 4474458..da205ba 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReceiveMsgServiceImpl.java
@@ -345,7 +345,9 @@
     public R syncLocsDetl(PageParam<Loc, BaseParam> pageParam, QueryWrapper<Loc> wrapper) {
         Page<Object> page = new Page<>();
         page.setCurrent(pageParam.getCurrent()).setSize(pageParam.getSize());
-        IPage<LocStockDto> locStocks = locService.getLocDetls(page);
+        BaseParam bp = pageParam.getWhere();
+        Map<String, Object> conds = bp != null && bp.getMap() != null ? bp.getMap() : Collections.emptyMap();
+        IPage<LocStockDto> locStocks = locService.getLocDetls(page, conds);
         return R.ok().add(locStocks);
     }
 
@@ -1404,18 +1406,32 @@
         if (!Cools.isEmpty(param.getPlanNo())) {
             wrapper.eq(LocItem::getPlatWorkCode, param.getPlanNo());
         }
+        // 浠撳簱銆佹枡绠辩爜鎸夊簱浣� id 浜ら泦杩囨护
+        List<Long> allowedLocIds = null;
         if (!Cools.isEmpty(param.getWareHouseId())) {
             Warehouse wh = warehouseService.getOne(new LambdaQueryWrapper<Warehouse>().eq(Warehouse::getCode, param.getWareHouseId()));
-            if (wh != null) {
-                List<Loc> locs = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getWarehouseId, wh.getId()));
-                if (!locs.isEmpty()) {
-                    wrapper.in(LocItem::getLocId, locs.stream().map(Loc::getId).collect(Collectors.toList()));
-                } else {
-                    return R.ok().add(Collections.emptyList());
-                }
-            } else {
+            if (wh == null) {
                 return R.ok().add(Collections.emptyList());
             }
+            List<Loc> locs = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getWarehouseId, wh.getId()));
+            if (locs.isEmpty()) {
+                return R.ok().add(Collections.emptyList());
+            }
+            allowedLocIds = locs.stream().map(Loc::getId).collect(Collectors.toList());
+        }
+        if (!Cools.isEmpty(param.getBarcode())) {
+            LambdaQueryWrapper<Loc> lw = new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, param.getBarcode());
+            if (allowedLocIds != null) {
+                lw.in(Loc::getId, allowedLocIds);
+            }
+            List<Loc> locs = locService.list(lw);
+            if (locs.isEmpty()) {
+                return R.ok().add(Collections.emptyList());
+            }
+            allowedLocIds = locs.stream().map(Loc::getId).collect(Collectors.toList());
+        }
+        if (allowedLocIds != null) {
+            wrapper.in(LocItem::getLocId, allowedLocIds);
         }
         List<LocItem> list = locItemService.list(wrapper);
         List<Map<String, Object>> result = new ArrayList<>();
@@ -1431,6 +1447,7 @@
                 row.put("wareHouseId", null);
                 row.put("wareHouseName", null);
             }
+            row.put("barcode", loc != null ? loc.getBarcode() : null);
             row.put("palletId", item.getTrackCode());
             row.put("matNr", item.getMatnrCode());
             row.put("makTx", item.getMaktx());

--
Gitblit v1.9.1