From 9dbd591bb63a838799900389f010bc99d4f7aa1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Tue, 17 Mar 2026 17:08:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=A3=E8=B4=A7=E5=8D=95=E5=87=80=E9=87=8D?= =?UTF-8?q?=E6=AF=9B=E9=87=8D=E4=BD=93=E7=A7=AF=E9=9D=A2=E7=A7=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/StockShelfOrderDomainService.java | 6 ++++- .../PickingMaterialDetailMapper.xml | 24 +++++++++---------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java index 3badbb476..df7a003d1 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java @@ -307,6 +307,9 @@ public class StockShelfOrderDomainService { throw new ServiceException("上架单【" + stockShelfOrderPO.getShelfOrderNumber() + "】数据已被更新,请刷新后重新进行上架"); } //上架保存容器使用记录 + if (CollectionUtils.isEmpty(stockShelfOrderDO.getMaterialDetailList())) { + throw new ServiceException("上架数量不能为空,请填写上架数量后再提交"); + } genContainerUsageRecord(stockShelfOrderDO); //修改物料明细信息 shelfMaterialDetailService.batchShelfUpdate(stockShelfOrderDO); @@ -1233,7 +1236,8 @@ public class StockShelfOrderDomainService { public void genContainerUsageRecord(StockShelfOrderDO stockShelfOrderDO) { List shelfMaterialDetailDOList = stockShelfOrderDO.getMaterialDetailList(); if (CollectionUtils.isEmpty(shelfMaterialDetailDOList)) { - throw new ServiceException("物料明细不能为空"); + // 无需处理的明细(上架数量全为0时跳过),直接返回 + return; } //所有明细 List listShelfMaterialDetail = shelfMaterialDetailService.list(new QueryWrapper().lambda().eq(ShelfMaterialDetail::getShelfOrderNumber, stockShelfOrderDO.getShelfOrderNumber())); diff --git a/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml b/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml index ad2e8b8e4..06f861845 100644 --- a/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml +++ b/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml @@ -191,11 +191,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -240,22 +240,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalNetWeight}, total_net_weight) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalNetWeight}, total_net_weight) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalGrossWeight}, total_gross_weight) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalGrossWeight}, total_gross_weight) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalVolume}, total_volume) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalVolume}, total_volume) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalArea}, total_area) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalArea}, total_area) update_by = #{updateBy},