From b591d3396c94e0ca3496d2bac280d106438c75e9 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期六, 17 八月 2024 09:37:35 +0800 Subject: [PATCH] # --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/LocUtils.java | 28 ++++++++++++++++++++++++---- 1 files changed, 24 insertions(+), 4 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/LocUtils.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/LocUtils.java index 06d9e13..1312609 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/LocUtils.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/utils/LocUtils.java @@ -80,7 +80,7 @@ } //鑾峰彇鎺ㄨ崘搴撲綅(婊℃墭鐩�) - public List<Loc> getSuggestLoc(Long taskType, Long matId, String batch, Integer locTypeHeight) { + public List<Loc> getSuggestLoc(Long taskType, Long matId, String batch, Integer locTypeHeight, List<Integer> laneRowList) { //婊℃墭鐩� List<Loc> locs = new ArrayList<>(); LocTypeHeightType locTypeHeightType = LocTypeHeightType.get(locTypeHeight); @@ -109,6 +109,11 @@ queryWrapper.le(Loc::getLev1, suggestLocRule.getTargetLev()); queryWrapper.eq(Loc::getLocStsId, LocStsType.O.val()); queryWrapper.in(Loc::getId, locIdList); + + if (laneRowList != null && !laneRowList.isEmpty()) { + queryWrapper.in(Loc::getRow1, laneRowList); + } + List<Loc> list = locService.list(queryWrapper); if (!list.isEmpty()) { locs.addAll(list); @@ -118,7 +123,7 @@ } //鑾峰彇鍏ㄥ眬搴撲綅(瀹屾暣宸烽亾) - public List<Loc> getGlobalLoc(Long taskType, Integer locTypeHeight) { + public List<Loc> getGlobalLoc(Long taskType, Integer locTypeHeight, List<Integer> laneRowList) { List<Loc> locs = new ArrayList<>(); LocTypeHeightType locTypeHeightType = LocTypeHeightType.get(locTypeHeight); if (locTypeHeightType == null) { @@ -132,6 +137,11 @@ LambdaQueryWrapper<Loc> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(Loc::getLocStsId, LocStsType.O.val()); queryWrapper.in(Loc::getId, locIdList); + + if (laneRowList != null && !laneRowList.isEmpty()) { + queryWrapper.in(Loc::getRow1, laneRowList); + } + List<Loc> list = locService.list(queryWrapper); if (!list.isEmpty()) { locs.addAll(list); @@ -270,7 +280,7 @@ } //鑾峰彇鎺ㄨ崘搴撲綅(绌烘墭鐩�) - public List<Loc> getSuggestEmptyLoc(Long taskType, Integer locTypeHeight) { + public List<Loc> getSuggestEmptyLoc(Long taskType, Integer locTypeHeight, List<Integer> laneRowList) { List<Loc> locs = new ArrayList<>(); //绌烘墭鐩� List<SuggestLocRule> suggestLocRules = suggestLocRuleService.list(new LambdaQueryWrapper<SuggestLocRule>().eq(SuggestLocRule::getLocType, 0)); @@ -283,6 +293,11 @@ queryWrapper.ge(Loc::getLev1, suggestLocRule.getStartLev()); queryWrapper.le(Loc::getLev1, suggestLocRule.getTargetLev()); queryWrapper.eq(Loc::getLocStsId, LocStsType.O.val()); + + if (laneRowList != null && !laneRowList.isEmpty()) { + queryWrapper.in(Loc::getRow1, laneRowList); + } + List<Loc> list = locService.list(queryWrapper); if (!list.isEmpty()) { locs.addAll(list); @@ -292,7 +307,7 @@ } //鑾峰彇鍏ㄥ眬搴撲綅(瀹屾暣宸烽亾) - public List<Loc> getGlobalEmptyLoc(Long taskType, Integer locTypeHeight) { + public List<Loc> getGlobalEmptyLoc(Long taskType, Integer locTypeHeight, List<Integer> laneRowList) { List<Loc> locs = new ArrayList<>(); LocTypeHeightType locTypeHeightType = LocTypeHeightType.get(locTypeHeight); if (locTypeHeightType == null) { @@ -306,6 +321,11 @@ LambdaQueryWrapper<Loc> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(Loc::getLocStsId, LocStsType.O.val()); queryWrapper.in(Loc::getId, locIdList); + + if (laneRowList != null && !laneRowList.isEmpty()) { + queryWrapper.in(Loc::getRow1, laneRowList); + } + List<Loc> list = locService.list(queryWrapper); if (!list.isEmpty()) { locs.addAll(list); -- Gitblit v1.9.1