From 7190814c7438c5871cbee00c17619a0c9360f6b7 Mon Sep 17 00:00:00 2001 From: Huluwa22 <2667400744@qq.com> Date: Fri, 21 Feb 2025 20:34:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(orderin):=20=E5=85=A5=E5=BA=93=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E6=98=AF=E5=90=A6113=E5=8F=A3=E7=9A=84=E7=A9=BA?= =?UTF-8?q?=E6=89=98=E7=9B=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceImplements/parent/ContainerImplement.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/wms/service/serviceImplements/parent/ContainerImplement.java b/src/main/java/com/wms/service/serviceImplements/parent/ContainerImplement.java index 25d157c..db119a8 100644 --- a/src/main/java/com/wms/service/serviceImplements/parent/ContainerImplement.java +++ b/src/main/java/com/wms/service/serviceImplements/parent/ContainerImplement.java @@ -27,6 +27,7 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.util.*; +import java.util.stream.Collectors; /** * 四向车 api service 的实现 @@ -94,7 +95,7 @@ public class ContainerImplement implements ContainerService { } CreateInstoreTaskResponse success = new CreateInstoreTaskResponse(); - // 判断是否为空托盘 + // 判断是否为有判断好 B0000001代表无托盘号 if("B0000001".equals(request.getPalletNo())) { String virtualVehicleNo = WmsUtils.generateUUIDString(); log.info("无托盘号,生成虚拟托盘号{}",virtualVehicleNo); @@ -121,16 +122,18 @@ public class ContainerImplement implements ContainerService { return new CreateInstoreTaskResponse("400", "创建入库单失败"); } /* 查找可用库位 */ - List canUseLocations = locationUtils.getNewLocation(2,appOrderIn); + List canUseLocations = locationUtils.getNewLocation(2,appOrderIn).stream().filter(location -> location.getLayer() == 1).collect(Collectors.toList()); if(canUseLocations.isEmpty()){ log.info("无可用库位"); return new CreateInstoreTaskResponse("400", "没有可用库位"); } Location useLocation = locationUtils.checkCanUse(canUseLocations); - if(useLocation == null) { + // 筛选出可用区域为第一层的库位 + if(useLocation == null) { log.info("暂没有可以直接使用的库位,因为存在互锁的库位,请等待当前任务都执行完成后再试"); return new CreateInstoreTaskResponse("400", "暂没有可以直接使用的库位,因为存在互锁的库位,请等待当前任务都执行完成后再试"); } + Task newInTask = new Task(); newInTask.setTaskId(String.valueOf(Calendar.getInstance().getTimeInMillis())); newInTask.setTaskGroup(UUID.randomUUID().toString());