diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationOutMaterialDetail/repository/persistence/ReservationOutMaterialDetailImpl.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationOutMaterialDetail/repository/persistence/ReservationOutMaterialDetailImpl.java index dd6e64445..b8fdcd80d 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationOutMaterialDetail/repository/persistence/ReservationOutMaterialDetailImpl.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationOutMaterialDetail/repository/persistence/ReservationOutMaterialDetailImpl.java @@ -157,7 +157,12 @@ public class ReservationOutMaterialDetailImpl extends ServiceImpl materialBaseInfos = reservationStockInOrderMapper.getMaterialBaseInfoList(materialNo); //List materialBaseInfos = materialBaseInfoMapper.selectList(new QueryWrapper().lambda().eq(MaterialBaseInfo::getMaterialCode, materialNo)); diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderDomainService.java b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderDomainService.java index c1fac00e3..35dccb28c 100644 --- a/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderDomainService.java +++ b/mhd_oms/src/main/java/com/mhd/oms/domain/reservationStockOutOrder/service/ReservationStockOutOrderDomainService.java @@ -118,9 +118,15 @@ public class ReservationStockOutOrderDomainService { if (stockOutOrderDO.getOutOrderNumber() == null) { stockOutOrderDO.setOutOrderNumber(OrderSequence.getOrderCode("CK")); } - //统计总数量 - BigDecimal quantity = stockOutOrderDO.getMaterialDetailList().stream().map(ReservationOutMaterialDetailDO::getOutboundQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); + // 与 update / batchInsert 一致:前端传计划数量为 quantity,非 outboundQuantity + setMaterialDetailInfo(stockOutOrderDO); + stockOutOrderDO.setMaterialQuantity(stockOutOrderDO.getMaterialDetailList().size()); + BigDecimal quantity = stockOutOrderDO.getMaterialDetailList().stream().map(ReservationOutMaterialDetailDO::getQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); stockOutOrderDO.setQuantity(quantity); + BigDecimal weightLimit = stockOutOrderDO.getMaterialDetailList().stream().map(ReservationOutMaterialDetailDO::getWeightLimit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); + stockOutOrderDO.setWeightLimit(weightLimit); + BigDecimal volumeLimit = stockOutOrderDO.getMaterialDetailList().stream().map(ReservationOutMaterialDetailDO::getVolumeLimit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); + stockOutOrderDO.setVolumeLimit(volumeLimit); // 复核下发状态默认为否(2) if (stockOutOrderDO.getCheckTaskDistribution() == null) { stockOutOrderDO.setCheckTaskDistribution(2);