diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/nc/SKitem.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/nc/SKitem.java index 12f66bda8..9794a8474 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/nc/SKitem.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/nc/SKitem.java @@ -67,4 +67,7 @@ public class SKitem { @ApiModelProperty( "") private String def65; -} + + @ApiModelProperty( "") + private String def75; +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java index 7a21f6566..ba36cc5ad 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java @@ -474,6 +474,16 @@ public class BillManageImpl extends ServiceImpl im .map(BmsMakeOutInvoiceItem::getFeeType) .filter(java.util.Objects::nonNull) .collect(java.util.stream.Collectors.joining("、")); + + // 按 createTime 倒序排序并获取第一条记录 + BmsMakeOutInvoiceItem firstItem = bmsMakeOutInvoiceItems.stream() + .sorted((a, b) -> { + if (a.getCreateTime() == null) return 1; + if (b.getCreateTime() == null) return -1; + return b.getCreateTime().compareTo(a.getCreateTime()); + }) + .findFirst() + .orElse(null); String salesmanId = reconciliation.getSalesmanId(); String customerUserDept = billManageMapper.getCustomerUserDept(salesmanId); String deptValue = billManageMapper.getDeptValue(customerUserDept); @@ -517,6 +527,14 @@ public class BillManageImpl extends ServiceImpl im item.setScomment("业务部:"+appointShipper+feeTypes); } } + // 费用类别 + String feeType = firstItem.getFeeType(); + String serviceItemsCodeNc = billManageMapper.getServiceItemsCodeNc(feeType); + if (serviceItemsCodeNc != null && !serviceItemsCodeNc.isEmpty()) { + item.setDef75(serviceItemsCodeNc); + } else { + item.setDef75("T10"); + } item.setPk_currtype(settlementCurrencyNcCode); item.setMoney_cr(String.valueOf(totalInvoiceValue)); item.setMoney_bal(String.valueOf(totalInvoiceValue)); diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java index ee37fc9e6..a799767e5 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java @@ -1157,6 +1157,16 @@ public class ReconciliationImpl extends ServiceImpl { + if (a.getCreateTime() == null) return 1; + if (b.getCreateTime() == null) return -1; + return b.getCreateTime().compareTo(a.getCreateTime()); + }) + .findFirst() + .orElse(null); + String salesmanCodeNc=order.getSalesmanCodeNc(); String salesmanId = order.getSalesmanId(); String customerUserDept = reconciliationMapper.getCustomerUserDept(salesmanId); @@ -1200,6 +1210,14 @@ public class ReconciliationImpl extends ServiceImpl materialDetailList; + @ApiModelProperty("是否来自App(PDA):true-累加上架数量,false-直接覆盖") + private Boolean fromApp; + @ApiModelProperty(name = "创建时间查询条件开始日期") private String createTimeStart; 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 346167970..026122a87 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 @@ -544,7 +544,9 @@ public class StockShelfOrderDomainService { BigDecimal currentShelvesQuantity = stockShelfOrderPO.getShelvesQuantity() != null ? stockShelfOrderPO.getShelvesQuantity() : BigDecimal.ZERO; BigDecimal actualQuantity = stockShelfOrderDO.getActualQuantity() != null ? stockShelfOrderDO.getActualQuantity() : BigDecimal.ZERO; BigDecimal reduce = stockShelfOrderDO.getMaterialDetailList().stream().map(ShelfMaterialDetailDO::getShelvesQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add); - stockShelfOrder.setShelvesQuantity(reduce); + // PDA(fromApp=true)累加已有上架数量;PC 直接覆盖 + boolean fromApp = Boolean.TRUE.equals(stockShelfOrderDO.getFromApp()); + stockShelfOrder.setShelvesQuantity(fromApp ? currentShelvesQuantity.add(reduce) : reduce); stockShelfOrder.setShelvesMaterialQuantity(stockShelfOrderPO.getShelvesMaterialQuantity() + stockShelfOrderDO.getActualReceiptMaterialQuantity()); stockShelfOrder.setUpdateBy(loginUser.getUserid()); stockShelfOrder.setUpdateByName(loginUser.getUsername()); diff --git a/mhd_wms/src/main/resources/mapper/pickingOrder/PickingOrderMapper.xml b/mhd_wms/src/main/resources/mapper/pickingOrder/PickingOrderMapper.xml index 4f52d88ce..152f67423 100644 --- a/mhd_wms/src/main/resources/mapper/pickingOrder/PickingOrderMapper.xml +++ b/mhd_wms/src/main/resources/mapper/pickingOrder/PickingOrderMapper.xml @@ -41,6 +41,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.picking_order_id = #{pickingOrderId} + + and a.shipper_id = #{shipperId} + and a.organization_id = #{organizationId}