From 7d9f215d4e3f04fc664579d495a8982bf84623d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Fri, 27 Feb 2026 15:21:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E9=85=8D=E5=A2=9E=E5=8A=A0=E6=9C=AC?= =?UTF-8?q?=E6=AC=A1=E5=88=86=E9=85=8D=E6=95=B0=E9=87=8F;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StockOutOrderApplicationService.java | 4 ++++ .../outMaterialDetail/entity/OutMaterialDetail.java | 5 +++++ .../repository/persistence/OutMaterialDetailImpl.java | 11 +++++------ .../repository/po/OutMaterialDetailPO.java | 5 +++++ .../repository/todo/OutMaterialDetailDO.java | 7 +++++++ 5 files changed, 26 insertions(+), 6 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockOutOrder/StockOutOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockOutOrder/StockOutOrderApplicationService.java index 7144d5d33..7b14e15b6 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockOutOrder/StockOutOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockOutOrder/StockOutOrderApplicationService.java @@ -815,6 +815,10 @@ public class StockOutOrderApplicationService { //未进行分配直接跳过 continue; } + BigDecimal alreadyAllocationQuantity = outMaterialDetailDO.getAlreadyAllocationQuantity(); + BigDecimal allocationQuantity = outMaterialDetailDO.getAllocationQuantity(); + BigDecimal nowAllocationQuantity = allocationQuantity.subtract(alreadyAllocationQuantity); + outMaterialDetailDO.setNowAllocationQuantity(nowAllocationQuantity); BigDecimal totalAllocationQuantity = BigDecimal.ZERO;//当前作业分配数量 //判断收否分配 第一次分配 修改分配数量 // if (outMaterialDetailPO.getAllocationQuantity().compareTo(BigDecimal.ZERO) == 0){ diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/entity/OutMaterialDetail.java b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/entity/OutMaterialDetail.java index 2e62c68fa..e3b250160 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/entity/OutMaterialDetail.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/entity/OutMaterialDetail.java @@ -73,6 +73,11 @@ public class OutMaterialDetail extends BaseVOEntity { @Excel(name = "已分配数量") private BigDecimal alreadyAllocationQuantity; + @ApiModelProperty("本次分配数量") + @Excel(name = "本次分配数量") + @TableField(exist = false) + private BigDecimal nowAllocationQuantity; + @ApiModelProperty("分配数量") @Excel(name = "分配数量") private BigDecimal allocationQuantity; diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java index c04941607..705b85016 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/persistence/OutMaterialDetailImpl.java @@ -418,15 +418,14 @@ public class OutMaterialDetailImpl extends ServiceImpl outMaterialDetailList,String outOrderNumber,LoginUser loginUser) { StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper().lambda().eq(StockOutOrder::getOutOrderNumber, outOrderNumber)); for (OutMaterialDetail outMaterialDetail : outMaterialDetailList) { - Long materialDetailId = outMaterialDetail.getMaterialDetailId(); - OutMaterialDetail isAllocatedDetail = outMaterialDetailMapper.selectById(materialDetailId); - String isAllocated = isAllocatedDetail.getIsAllocated(); - // 如果已经分配过,则跳过本次循环(该明细已分配过,不再重复处理) - if (isAllocated != null && "1".equals(isAllocated)) { + BigDecimal nowAllocationQuantity = outMaterialDetail.getNowAllocationQuantity(); + if (nowAllocationQuantity == null && nowAllocationQuantity.compareTo(BigDecimal.ZERO) <= 0) { continue; } Long materialInventoryId = outMaterialDetail.getMaterialInventoryId(); - BigDecimal allocationQuantity = outMaterialDetail.getAllocationQuantity(); + + //分配数量为本次分配数量 + BigDecimal allocationQuantity = outMaterialDetail.getNowAllocationQuantity(); if (ObjectUtils.isEmpty(allocationQuantity)) { allocationQuantity = BigDecimal.ZERO; } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/po/OutMaterialDetailPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/po/OutMaterialDetailPO.java index 932903cf6..dae5b327e 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/po/OutMaterialDetailPO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/po/OutMaterialDetailPO.java @@ -80,6 +80,11 @@ public class OutMaterialDetailPO extends StockOutOrderBaseDO { @Excel(name = "分配数量") private BigDecimal allocationQuantity; + @ApiModelProperty("本次分配数量") + @Excel(name = "本次分配数量") + @TableField(exist = false) + private BigDecimal nowAllocationQuantity; + @ApiModelProperty("拣货数量") @Excel(name = "拣货数量") private BigDecimal pickingQuantity; diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/todo/OutMaterialDetailDO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/todo/OutMaterialDetailDO.java index 2b17ee536..a4d1eaee0 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/todo/OutMaterialDetailDO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/outMaterialDetail/repository/todo/OutMaterialDetailDO.java @@ -1,5 +1,6 @@ package com.mhd.wms.domain.outMaterialDetail.repository.todo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.mhd.common.core.annotation.Excel; @@ -70,6 +71,12 @@ public class OutMaterialDetailDO extends BaseVOEntity { @Excel(name = "已分配数量") private BigDecimal alreadyAllocationQuantity; + + @ApiModelProperty("本次分配数量") + @Excel(name = "本次分配数量") + @TableField(exist = false) + private BigDecimal nowAllocationQuantity; + @ApiModelProperty("分配数量") @Excel(name = "分配数量") private BigDecimal allocationQuantity;