From 33575a102ccfe33f67f6cf6c4417be006372c4b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Thu, 26 Feb 2026 14:39:59 +0800 Subject: [PATCH] =?UTF-8?q?WMS=E6=8B=A3=E8=B4=A7=E5=8D=95=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=8B=A3=E8=B4=A7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/basic/ContractManageMapper.xml | 2 +- .../mapper/basic/ExpenseAccountMapper.xml | 9 +++- .../PickingOrderApplicationService.java | 47 +++++++++++++++++-- 3 files changed, 52 insertions(+), 6 deletions(-) diff --git a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml index e30db65c0..14d09a526 100644 --- a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml +++ b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml @@ -11,7 +11,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from contract_manage where del_flag = 1 - order by create_time desc @@ -116,6 +115,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" resultType="com.mhd.basic.domain.contractManage.repository.po.ContractManagePO"> + order by create_time desc diff --git a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml index c1cfa8aee..88cf0987e 100644 --- a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml +++ b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml @@ -145,7 +145,14 @@ - + + + + + and organization_id = #{expenseAccountDO.organizationId} + + + and top_organization_id = #{expenseAccountDO.topOrganizationId} diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java index eec9a2bd5..e803c68e9 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java @@ -24,6 +24,10 @@ import com.mhd.wms.domain.pickingMaterialDetail.service.PickingMaterialDetailDom import com.mhd.wms.domain.pickingOrder.repository.po.PickingOrderPO; import com.mhd.wms.domain.pickingOrder.repository.todo.PickingOrderDO; import com.mhd.wms.domain.pickingOrder.service.PickingOrderDomainService; +import com.mhd.wms.domain.outMaterialDetail.repository.facade.IOutMaterialDetailService; +import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail; +import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -53,6 +57,8 @@ public class PickingOrderApplicationService { private UserServiceFeign userServiceFeign; @Autowired private SystemServiceFeign systemServiceFeign; + @Autowired + private IOutMaterialDetailService outMaterialDetailService; /** @@ -611,10 +617,43 @@ public class PickingOrderApplicationService { PickingMaterialDetailDO returnPickingMaterialDetailDO = new PickingMaterialDetailDO(); BeanUtils.copyProperties(pickingMaterialDetailPO, returnPickingMaterialDetailDO); returnPickingMaterialDetailDO.setActualQuantity(pickingMaterialDetailDO.getActualQuantity()); - returnPickingMaterialDetailDO.setTotalArea(pickingMaterialDetailDO.getTotalArea()); - returnPickingMaterialDetailDO.setTotalVolume(pickingMaterialDetailDO.getTotalVolume()); - returnPickingMaterialDetailDO.setTotalGrossWeight(pickingMaterialDetailDO.getTotalGrossWeight()); - returnPickingMaterialDetailDO.setTotalNetWeight(pickingMaterialDetailDO.getTotalNetWeight()); + + // 毛重、净重、面积、体积:如果前端传递了值,使用前端传递的值(允许修改);否则从出库单明细中自动带出 + Long outUniqueId = pickingMaterialDetailPO.getOutUniqueId(); + OutMaterialDetail outMaterialDetail = null; + if (outUniqueId != null) { + outMaterialDetail = outMaterialDetailService.getOne(new QueryWrapper().lambda() + .eq(OutMaterialDetail::getUniqueId, outUniqueId) + .eq(OutMaterialDetail::getDelFlag, 1)); + } + + // 总面积:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalArea() != null) { + returnPickingMaterialDetailDO.setTotalArea(pickingMaterialDetailDO.getTotalArea()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalArea() != null) { + returnPickingMaterialDetailDO.setTotalArea(outMaterialDetail.getTotalArea()); + } + + // 总体积:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalVolume() != null) { + returnPickingMaterialDetailDO.setTotalVolume(pickingMaterialDetailDO.getTotalVolume()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalVolume() != null) { + returnPickingMaterialDetailDO.setTotalVolume(outMaterialDetail.getTotalVolume()); + } + + // 总毛重:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalGrossWeight() != null) { + returnPickingMaterialDetailDO.setTotalGrossWeight(pickingMaterialDetailDO.getTotalGrossWeight()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalGrossWeight() != null) { + returnPickingMaterialDetailDO.setTotalGrossWeight(outMaterialDetail.getTotalGrossWeight()); + } + + // 总净重:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalNetWeight() != null) { + returnPickingMaterialDetailDO.setTotalNetWeight(pickingMaterialDetailDO.getTotalNetWeight()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalNetWeight() != null) { + returnPickingMaterialDetailDO.setTotalNetWeight(outMaterialDetail.getTotalNetWeight()); + } //是否开启了序列号管理 if (pickingMaterialDetailPO.getSerialNumberManage() == 1){ if (CollectionUtils.isEmpty(pickingMaterialDetailDO.getMaterialDetailSerialNumberList())){