From 8e6a88bd7fcd9dc47bd77f217a18f58a6ab3721c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Fri, 13 Mar 2026 10:56:34 +0800 Subject: [PATCH] =?UTF-8?q?PDA=E4=BB=93=E5=BA=93=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WarehouseApplicationService.java | 37 +++++++++++++++++++ .../facadeApi/warehouse/WarehouseApi.java | 6 +-- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/warehouse/WarehouseApplicationService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/warehouse/WarehouseApplicationService.java index 4871df6ed..8aa850b83 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/warehouse/WarehouseApplicationService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/warehouse/WarehouseApplicationService.java @@ -1,9 +1,12 @@ package com.mhd.basic.application.service.warehouse; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.mhd.basic.domain.areaAggregate.repository.po.SysAreaPO; import com.mhd.basic.domain.areaAggregate.repository.todo.SysProvinceCityCountyDO; import com.mhd.basic.domain.areaAggregate.service.SysProvinceCityCountyDomainService; +import com.mhd.basic.domain.associationWarehouse.entity.AssociationWarehouse; +import com.mhd.basic.domain.associationWarehouse.repository.facade.IAssociationWarehouseService; import com.mhd.basic.domain.warehouse.repository.po.WarehousePO; import com.mhd.basic.domain.warehouse.repository.po.po.WarehouseLinkagePO; import com.mhd.basic.domain.warehouse.repository.todo.WarehouseDO; @@ -17,8 +20,11 @@ import com.mhd.system.service.ISysDictTypeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import java.util.Collections; import java.util.List; +import java.util.stream.Collectors; /** * 仓库ApplicationService * @@ -34,6 +40,8 @@ public class WarehouseApplicationService { private ISysDictTypeService dictTypeService; @Autowired private SysProvinceCityCountyDomainService sysProvinceCityCountyDomainService; + @Autowired + private IAssociationWarehouseService associationWarehouseService; /** @@ -93,6 +101,35 @@ public class WarehouseApplicationService { return warehouseDomainService.queryList(warehouseDO); } + /** + * 查询当前用户绑定的仓库列表(用于App端,只返回用户关联的仓库) + */ + public List queryListByApp(WarehouseDO warehouseDO) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (loginUser == null || loginUser.getUserid() == null) { + return Collections.emptyList(); + } + // 查询当前用户绑定的仓库ID列表 + List associationList = associationWarehouseService.list( + new QueryWrapper().lambda() + .eq(AssociationWarehouse::getCorrelationId, loginUser.getUserid()) + .eq(AssociationWarehouse::getDelFlag, 1) + .select(AssociationWarehouse::getWarehouseId)); + if (CollectionUtils.isEmpty(associationList)) { + return Collections.emptyList(); + } + List warehouseIds = associationList.stream() + .map(AssociationWarehouse::getWarehouseId) + .filter(ObjectUtil::isNotNull) + .distinct() + .collect(Collectors.toList()); + if (warehouseIds.isEmpty()) { + return Collections.emptyList(); + } + warehouseDO.setWarehouseIds(warehouseIds); + return warehouseDomainService.queryList(warehouseDO); + } + /** * 新增仓库 diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facadeApi/warehouse/WarehouseApi.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facadeApi/warehouse/WarehouseApi.java index 3ca7fcfa5..e8cd397b0 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facadeApi/warehouse/WarehouseApi.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facadeApi/warehouse/WarehouseApi.java @@ -56,15 +56,15 @@ public class WarehouseApi extends BaseController{ } /** - * 分页查询仓库列表 + * 查询仓库列表(App端,只返回当前用户绑定的仓库) */ - @ApiOperation("查询仓库列表") + @ApiOperation("查询仓库列表(仅当前用户绑定的仓库)") @GetMapping("/listByApp") public AjaxResult listByApp(WarehouseDTO warehouseDTO) { //转换实体 WarehouseDO warehouseDO = warehouseAssembler.toDO(warehouseDTO); - List list = warehouseApplicationService.queryList(warehouseDO); + List list = warehouseApplicationService.queryListByApp(warehouseDO); return AjaxResult.success(list); }