From 664df6de041aeab4341f739372f64ac9e428aad2 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期二, 13 一月 2026 13:57:45 +0800
Subject: [PATCH] lsh#

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 46 insertions(+), 6 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
index 23933bb..921c7f0 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
@@ -28,10 +28,7 @@
 import com.vincent.rsf.server.system.entity.*;
 import com.vincent.rsf.server.system.mapper.FieldsMapper;
 import com.vincent.rsf.server.system.mapper.TenantMapper;
-import com.vincent.rsf.server.system.service.ConfigService;
-import com.vincent.rsf.server.system.service.FieldsItemService;
-import com.vincent.rsf.server.system.service.UserLoginService;
-import com.vincent.rsf.server.system.service.UserService;
+import com.vincent.rsf.server.system.service.*;
 import com.vincent.rsf.server.system.utils.SerialRuleUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -127,6 +124,8 @@
     private CompanysService companysService;
     @Autowired
     private OutStockService outStockService;
+    @Autowired
+    private WarehouseRoleMenuService warehouseRoleMenuService;
 
     /**
      * @return
@@ -505,9 +504,39 @@
      * @time 2025/3/11 10:12
      */
     @Override
-    public R getReceiptAreas() {
+    public R getReceiptAreas(User user) {
+        Long[] userRoleIds = user.getUserRoleIds();
+        List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService.list(new LambdaQueryWrapper<WarehouseRoleMenu>()
+                .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds))
+        );
+        Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus);
+        List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId).collect(Collectors.toList());
         List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>()
-                .eq(WarehouseAreas::getType, WarehouseAreaType.WAREHOUSE_AREA_RECEIPT.type));
+                .eq(WarehouseAreas::getType, WarehouseAreaType.WAREHOUSE_AREA_RECEIPT.type)
+                .in(WarehouseAreas::getId, longs)
+        );
+        return R.ok(areas);
+    }
+
+    /**
+     * @param
+     * @return
+     * @author Ryan
+     * @description 鑾峰彇闆嗚揣鍖�
+     * @time 2025/3/11 10:12
+     */
+    @Override
+    public R getAreasUserAll(User user) {
+        Long[] userRoleIds = user.getUserRoleIds();
+        List<WarehouseRoleMenu> warehouseRoleMenus = warehouseRoleMenuService.list(new LambdaQueryWrapper<WarehouseRoleMenu>()
+                .in(WarehouseRoleMenu::getRoleId, Arrays.asList(userRoleIds))
+        );
+        Set<WarehouseRoleMenu> warehouseRoleMenusSet = new HashSet<>(warehouseRoleMenus);
+        List<Long> longs = warehouseRoleMenusSet.stream().map(WarehouseRoleMenu::getMenuId).collect(Collectors.toList());
+        List<WarehouseAreas> areas = warehouseAreasService.list(new LambdaQueryWrapper<WarehouseAreas>()
+                .eq(WarehouseAreas::getType, WarehouseAreaType.WAREHOUSE_AREA_COLLECTION.type)
+                .in(WarehouseAreas::getId, longs)
+        );
         return R.ok(areas);
     }
 
@@ -564,6 +593,17 @@
     }
 
     /**
+     * @author Munch D. Luffy
+     * @date 2026/01/09
+     * @description: PDA缁勬嫋
+     * @version 1.0
+     */
+    @Override
+    public WaitPakin mergeItemsWcs(WaitPakinParam waitPakin, Long userId) {
+        return waitPakinService.mergeItemsWcs(waitPakin, userId);
+    }
+
+    /**
      * @param param
      * @return
      * @author Ryan

--
Gitblit v1.9.1