From 2a125d08bd4437dbf0e93f2d25ea196715ce82a4 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 09 六月 2025 14:21:38 +0800 Subject: [PATCH] 下发执行功能优化 添加站点默认值 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java | 25 +++++++++++++++---------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java index dbe8343..1194ff4 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java @@ -28,6 +28,7 @@ import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; + import com.vincent.rsf.server.manager.enums.WaveRuleType; /** @@ -368,6 +369,7 @@ } return R.ok(); } + /** * @param * @return @@ -400,26 +402,26 @@ @Override public R getOrderOutTaskItem(OrderOutTaskParam param) { - if (Cools.isEmpty(param.getWaveId())){ + if (Cools.isEmpty(param.getWaveId())) { throw new CoolException("绛栫暐鍙傛暟涓虹┖"); } - if (Cools.isEmpty(param.getOrderId())){ + if (Cools.isEmpty(param.getOrderId())) { throw new CoolException("鍗曟嵁id涓虹┖"); } WaveRule waveRule = waveRuleService.getOne(new LambdaQueryWrapper<WaveRule>().eq(WaveRule::getId, param.getWaveId())); - if (Cools.isEmpty(waveRule)){ + if (Cools.isEmpty(waveRule)) { throw new CoolException("鏈壘鍒板綋鍓嶇瓥鐣�"); } List<OrderOutItemDto> locItems = null; if (WaveRuleType.Efficiency_First.type.equals(waveRule.getType())) { - locItems = efficiencyFirst(param.getOrderId()); + locItems = efficiencyFirst(param.getOrderId()); } else if (WaveRuleType.First_In_First_Out.type.equals(waveRule.getType())) { } return R.ok(locItems); } - private List<LocItem> getEfficiencyFirstItemList(AsnOrderItem asnOrderItem){ + private List<LocItem> getEfficiencyFirstItemList(AsnOrderItem asnOrderItem) { QueryWrapper<LocItem> locItemQueryWrapper = new QueryWrapper<>(); locItemQueryWrapper.eq("matnr_code", asnOrderItem.getMatnrCode()); locItemQueryWrapper.eq("batch", asnOrderItem.getSplrBatch()); @@ -432,11 +434,11 @@ ); locItemQueryWrapper.apply(applySql); List<LocItem> locItems = locItemService.list(locItemQueryWrapper); - locItems.sort((s1,s2)-> LocUtils.isShallowLoc(s1.getLocCode())?-1:0); + locItems.sort((s1, s2) -> LocUtils.isShallowLoc(s1.getLocCode()) ? -1 : 0); return locItems; } - private List<OrderOutItemDto> efficiencyFirst(Long orderId){ + private List<OrderOutItemDto> efficiencyFirst(Long orderId) { List<AsnOrderItem> asnOrderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>() .eq(AsnOrderItem::getAsnId, orderId) ); @@ -458,17 +460,20 @@ for (LocItem locItem : locItems) { Loc loc = locService.getById(locItem.getLocId()); List<LocItem> itemList = locItemService.list(new LambdaQueryWrapper<LocItem>().eq(LocItem::getLocCode, locItem.getLocCode())); - if (issued.doubleValue() > 0){ + if (issued.doubleValue() > 0) { ExistDto existDto = new ExistDto().setBatch(locItem.getBatch()).setMatnr(locItem.getMatnrCode()).setLocNo(locItem.getLocCode()); - if (existDtos.add(existDto)){ + if (existDtos.add(existDto)) { locItem.setWorkQty(issued.doubleValue() >= locItem.getAnfme() ? locItem.getAnfme() : issued.doubleValue()); OrderOutItemDto orderOutItemDto = new OrderOutItemDto(); orderOutItemDto.setLocItem(locItem); - List<DeviceSite> deviceSites = deviceSiteService.list(new LambdaQueryWrapper<DeviceSite>() .eq(DeviceSite::getChannel, loc.getChannel()) .eq(DeviceSite::getType, issued.doubleValue() >= locItem.getAnfme() && itemList.size() == 1 ? TaskType.TASK_TYPE_OUT.type : TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) ); + if (!deviceSites.isEmpty()) { + DeviceSite deviceSite = deviceSites.stream().findFirst().get(); + orderOutItemDto.setSiteNo(deviceSite.getSite()); + } List<OrderOutItemDto.staListDto> maps = new ArrayList<>(); for (DeviceSite sta : deviceSites) { OrderOutItemDto.staListDto staListDto = new OrderOutItemDto.staListDto(); -- Gitblit v1.9.1