From 3c735166e80bcb9b236035fd3cab906f5a066e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B8=B8=E7=86=9F=E5=90=B4=E5=BD=A6=E7=A5=96?= Date: Mon, 24 Nov 2025 17:15:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E7=A9=BA=E6=89=98=E5=85=A5=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WmsMessageServiceImpl.java | 18 ++++++++++-------- .../service/impl/WcsTaskServiceImpl.java | 6 +++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/gaotao/modules/api/service/impl/WmsMessageServiceImpl.java b/src/main/java/com/gaotao/modules/api/service/impl/WmsMessageServiceImpl.java index 1672c1a..0d88a2c 100644 --- a/src/main/java/com/gaotao/modules/api/service/impl/WmsMessageServiceImpl.java +++ b/src/main/java/com/gaotao/modules/api/service/impl/WmsMessageServiceImpl.java @@ -597,6 +597,15 @@ public class WmsMessageServiceImpl implements WmsMessageService { if (pallet == null) { throw new RuntimeException("托盘不存在:" + request.getPalletId()); } + // 4. 查询托盘上的条码信息 + //堆叠分离出库的时候 被堆叠的空栈板是没有站点信息的 这里提前判断可以避雷 + // 需要通过其他方式查询PalletDetail,可能需要创建对应的Service + List palletDetails = getPalletDetails(request.getSite(), request.getPalletId()); + + if (palletDetails.isEmpty()) { + return "托盘无条码信息,无需执行移库操作:" ; + } + // 3. 根据当前位置查询原仓库和库位 String currentLocationCode = pallet.getLocationCode(); @@ -636,14 +645,7 @@ public class WmsMessageServiceImpl implements WmsMessageService { if(fromWarehouseId.equals(request.getToWarehouseId())&&fromLocationId.equals(request.getToLocationId())){ return "托盘无需执行移库操作:" + request.getPalletId(); } - - // 4. 查询托盘上的条码信息 - // 需要通过其他方式查询PalletDetail,可能需要创建对应的Service - List palletDetails = getPalletDetails(request.getSite(), request.getPalletId()); - - if (palletDetails.isEmpty()) { - return "托盘无条码信息,无需执行移库操作:" ; - } + // 5. 获取条码对应的HandlingUnit信息 List serialNos = palletDetails.stream() diff --git a/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/WcsTaskServiceImpl.java b/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/WcsTaskServiceImpl.java index 9038b9d..20b1fd9 100644 --- a/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/WcsTaskServiceImpl.java +++ b/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/WcsTaskServiceImpl.java @@ -107,12 +107,12 @@ public class WcsTaskServiceImpl implements WcsTaskService { // 3. 根据不同的TransTypeDesc执行不同的处理逻辑 - rqrq String result = ""; if ("入库".equals(callbackTask.getTransTypeDesc()) || "出库".equals(callbackTask.getTransTypeDesc())) { - // 入库和出库需要执行移库操作 - rqrq WareHouseTransferRequest request = buildWareHouseTransferRequest(callbackTask); - request.setUsername("sys_wms"); - result = wmsMessageService.doWareHouseForPallet(request); // 更新托盘状态 - rqrq if ("入库".equals(callbackTask.getTransTypeDesc())) { + // 入库和出库需要执行移库操作 - rqrq + request.setUsername("sys_wms"); + result = wmsMessageService.doWareHouseForPallet(request); updateOrderTaskStatusForInbound(callbackTask); palletMapper.updateLocationWithPalletId(request.getSite(), request.getPalletId(), request.getToStation(), request.getToStation());