From 952f6d21370d9d142f6ecbe11c179865d482f08f Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 09 六月 2025 14:04:25 +0800 Subject: [PATCH] 下发执行功能优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java | 19 ++++++++++--------- 1 files changed, 10 insertions(+), 9 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 7a00800..dbe8343 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; /** * @author Ryan @@ -410,10 +411,10 @@ throw new CoolException("鏈壘鍒板綋鍓嶇瓥鐣�"); } List<OrderOutItemDto> locItems = null; - switch (waveRule.getType()) { - case 1: - locItems = efficiencyFirst(param.getOrderId()); - break; + if (WaveRuleType.Efficiency_First.type.equals(waveRule.getType())) { + locItems = efficiencyFirst(param.getOrderId()); + } else if (WaveRuleType.First_In_First_Out.type.equals(waveRule.getType())) { + } return R.ok(locItems); } @@ -421,7 +422,7 @@ private List<LocItem> getEfficiencyFirstItemList(AsnOrderItem asnOrderItem){ QueryWrapper<LocItem> locItemQueryWrapper = new QueryWrapper<>(); locItemQueryWrapper.eq("matnr_code", asnOrderItem.getMatnrCode()); - locItemQueryWrapper.eq("batch", asnOrderItem.getBatch()); + locItemQueryWrapper.eq("batch", asnOrderItem.getSplrBatch()); String applySql = String.format( "EXISTS (SELECT 1 FROM man_loc ml " + "WHERE ml.use_status = '%s'" + @@ -431,9 +432,7 @@ ); locItemQueryWrapper.apply(applySql); List<LocItem> locItems = locItemService.list(locItemQueryWrapper); - locItems.sort((s1,s2)->{ - return LocUtils.isShallowLoc(s1.getLocCode())?1:0; - }); + locItems.sort((s1,s2)-> LocUtils.isShallowLoc(s1.getLocCode())?-1:0); return locItems; } @@ -462,8 +461,10 @@ if (issued.doubleValue() > 0){ ExistDto existDto = new ExistDto().setBatch(locItem.getBatch()).setMatnr(locItem.getMatnrCode()).setLocNo(locItem.getLocCode()); if (existDtos.add(existDto)){ + locItem.setWorkQty(issued.doubleValue() >= locItem.getAnfme() ? locItem.getAnfme() : issued.doubleValue()); OrderOutItemDto orderOutItemDto = new OrderOutItemDto(); - orderOutItemDto.sync(locItem); + 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) -- Gitblit v1.9.1