diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java index b254a0a9f..0c40e7d93 100644 --- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java +++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java @@ -1,5 +1,6 @@ package com.glxp.api.controller.auth; +import com.glxp.api.dto.DictDto; import org.springframework.beans.BeanUtils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; @@ -72,6 +73,24 @@ public class InvWarehouseController extends BaseController { return ResultVOUtils.success(responses); } + /** + * 获取仓库列表 + * + * @param filterInvSubWarehouseRequest + * @return + */ + @AuthRuleAnnotation("") + @GetMapping("spms/sub/inv/warehouse/filterOptimize") + public BaseResponse filterOptimize(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest) { + List responses = invWarehouseService.filterInvSubWarehouseResponse(filterInvSubWarehouseRequest); + List reList = responses.stream().map(s-> { + DictDto dictDto = new DictDto(s.getCode(),s.getName()); + return dictDto; + }).collect(Collectors.toList()); + return ResultVOUtils.success(reList); + } + + /** * 获取部门底下仓库列表-关联用户 @@ -105,6 +124,24 @@ public class InvWarehouseController extends BaseController { return ResultVOUtils.success(invSubWarehouseEntities); } + /** + * 获取用户所有关联仓库 + * + * @param filterInvWarehouseRequest + * @return + */ + @AuthRuleAnnotation("") + @GetMapping("spms/inv/warehouse/findByUserOptimize") + public BaseResponse findByUserOptimize(FilterInvWarehouseRequest filterInvWarehouseRequest) { + filterInvWarehouseRequest.setUserId(getUserId()); + List invSubWarehouseEntities = invWarehouseService.filterGroupInvSub(filterInvWarehouseRequest); + List reList = invSubWarehouseEntities.stream().map(s-> { + DictDto dictDto = new DictDto(s.getCode(),s.getName()); + return dictDto; + }).collect(Collectors.toList()); + return ResultVOUtils.success(reList); + } + /** * 获取供应商可使用单据类型 @@ -197,6 +234,36 @@ public class InvWarehouseController extends BaseController { return ResultVOUtils.success(results.stream().distinct().collect(Collectors.toList())); } + @AuthRuleAnnotation("") + @GetMapping("spms/inv/warehouse/findByFromOptimize") + public BaseResponse findByFromOptimize(FilterInvWarehouseRequest filterInvWarehouseRequest) { + if (StrUtil.isEmpty(filterInvWarehouseRequest.getLocInvCode())) { + return ResultVOUtils.error(500, "当前仓库不能为空!"); + } + FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest(); + BeanUtils.copyProperties(filterInvWarehouseRequest, filterInvSubWarehouseRequest); + if (filterInvWarehouseRequest.getType() == null) { + filterInvSubWarehouseRequest.setAdvanceType(1); + } + List invWarehouseEntities = invWarehouseService.filterInvSubWarehouse(filterInvSubWarehouseRequest); + + List results = new ArrayList<>(); + if (CollUtil.isNotEmpty(invWarehouseEntities)) { + invWarehouseEntities.forEach(invWarehouseEntity -> { + if (!invWarehouseEntity.getCode().equals(filterInvWarehouseRequest.getLocInvCode())) { + results.add(invWarehouseEntity); + } + }); + } + List list = results.stream().distinct().collect(Collectors.toList()); + + List reList = list.stream().map(s-> { + DictDto dictDto = new DictDto(s.getCode(),s.getName()); + return dictDto; + }).collect(Collectors.toList()); + return ResultVOUtils.success(reList); + } + /** * 获取上级仓库 *