From eb013733838107035e06ebe1d6501a4cae4ebd6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Mon, 9 Mar 2026 23:35:06 +0800 Subject: [PATCH 01/19] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mhd-system/src/main/resources/bootstrap.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index fa495b9aa..2afad33b3 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -13,25 +13,25 @@ spring: cloud: nacos: discovery: - server-addr: 127.0.0.1:8848 -# server-addr: 10.33.0.129:6010 +# server-addr: 127.0.0.1:8848 + server-addr: 10.33.0.129:6010 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 - username: nacos - password: manhuoda@2023 +# username: nacos +# password: manhuoda@2023 #线上正式环境 # server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 # 线上测试环境配置 容器名+端口号 # server-addr: 10.102.192.5:6848 - username: nacos - password: manhuoda@2023 +# username: nacos +# password: manhuoda@2023 #线上正式环境 # server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 共享配置 shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} \ No newline at end of file From f6e294d5ca8a62506e1f119cf5001d66e263850f 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, 10 Mar 2026 08:43:59 +0800 Subject: [PATCH 02/19] =?UTF-8?q?WMS3.9=E5=8F=B7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ContractManageApplicationService.java | 6 +- .../service/ContractManageDomainService.java | 6 +- .../CostCalculationApplicationService.java | 9 +- .../facadeApi/BusinessDocumentApi.java | 7 +- .../StockReceiptOrderApplicationService.java | 121 ++++++++++++------ .../ReceiptMaterialDetailImpl.java | 79 ++++++++++++ .../StockReceiptOrderDomainService.java | 10 +- 7 files changed, 184 insertions(+), 54 deletions(-) diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java index b084ef4b0..1d49d32d8 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java @@ -437,14 +437,14 @@ public class ContractManageApplicationService { List contractManageDetailPOList = contractManageDetailDomainService.queryListByManageId(resultContract.getContractManageId()); List contractManageDetailSaveList = new ArrayList<>(); if(contractManageDetailPOList != null && contractManageDetailPOList.size()>0){ - //将临时合同中没有,但是通用合同中有的数据过滤出 - contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().noneMatch(item1 -> item1.getFirstSubjectCode().equals(item.getFirstSubjectCode()) && item1.getSecondSubjectCode().equals(item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList()); + //将临时合同中没有,但是通用合同中有的数据过滤出(使用 ObjectUtil.equal 避免 firstSubjectCode/secondSubjectCode 为 null 时 NPE) + contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().noneMatch(item1 -> ObjectUtil.equal(item1.getFirstSubjectCode(), item.getFirstSubjectCode()) && ObjectUtil.equal(item1.getSecondSubjectCode(), item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList()); //首先根据结算科目类型将临时合同过滤出 List tempContractManageDetailPOList = contractManageDetailPOList.stream().filter(item -> item.getSubjectType()==2).collect(Collectors.toList()); //遍历两个集合,将相同费用科目code的数据,进行比较,如果结算科目类型是临时且合同有效期有效,则使用该条数据,将另一条移除 for (ContractManageDetailPO manageDetailPO : tempContractManageDetailPOList) { for (ContractManageDetailPO contractManageDetailPO : contractManageDetailPOList) { - if(contractManageDetailPO.getFirstSubjectCode().equals(manageDetailPO.getFirstSubjectCode()) && contractManageDetailPO.getSecondSubjectCode().equals(manageDetailPO.getSecondSubjectCode())){ + if(ObjectUtil.equal(contractManageDetailPO.getFirstSubjectCode(), manageDetailPO.getFirstSubjectCode()) && ObjectUtil.equal(contractManageDetailPO.getSecondSubjectCode(), manageDetailPO.getSecondSubjectCode())){ //判断如果是临时合同在有效期内,则将该条数据保存到集合contractManageDetailSaveList DateTime start = DateUtil.parseDate(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); DateTime end = DateUtil.parseDateTime(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java index 8f3060afa..cd98766cb 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java @@ -119,14 +119,14 @@ public class ContractManageDomainService { List contractManageDetailPOList = contractManageDetailDomainService.queryListByManageId(contractManagePO.getContractManageId()); List contractManageDetailSaveList = new ArrayList<>(); if(contractManageDetailPOList != null && contractManageDetailPOList.size()>0){ - //将临时合同中没有,但是通用合同中有的数据过滤出 - contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().anyMatch(item1 -> item1.getFirstSubjectCode().equals(item.getFirstSubjectCode()) && item1.getSecondSubjectCode().equals(item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList()); + //将临时合同中没有,但是通用合同中有的数据过滤出(使用 ObjectUtil.equal 避免 firstSubjectCode/secondSubjectCode 为 null 时 NPE) + contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().anyMatch(item1 -> ObjectUtil.equal(item1.getFirstSubjectCode(), item.getFirstSubjectCode()) && ObjectUtil.equal(item1.getSecondSubjectCode(), item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList()); //首先根据结算科目类型将临时合同过滤出 List tempContractManageDetailPOList = contractManageDetailPOList.stream().filter(item -> item.getSubjectType()==2).collect(Collectors.toList()); //遍历两个集合,将相同费用科目code的数据,进行比较,如果结算科目类型是临时且合同有效期有效,则使用该条数据,将另一条移除 for (ContractManageDetailPO manageDetailPO : tempContractManageDetailPOList) { for (ContractManageDetailPO contractManageDetailPO : contractManageDetailPOList) { - if(contractManageDetailPO.getFirstSubjectCode().equals(manageDetailPO.getFirstSubjectCode()) && contractManageDetailPO.getSecondSubjectCode().equals(manageDetailPO.getSecondSubjectCode())){ + if(ObjectUtil.equal(contractManageDetailPO.getFirstSubjectCode(), manageDetailPO.getFirstSubjectCode()) && ObjectUtil.equal(contractManageDetailPO.getSecondSubjectCode(), manageDetailPO.getSecondSubjectCode())){ //判断如果是临时合同在有效期内,则将该条数据保存到集合contractManageDetailSaveList DateTime start = DateUtil.parseDate(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); DateTime end = DateUtil.parseDateTime(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); diff --git a/mhd_bms/src/main/java/com/mhd/bms/application/server/billingRules/CostCalculationApplicationService.java b/mhd_bms/src/main/java/com/mhd/bms/application/server/billingRules/CostCalculationApplicationService.java index fb1bee82f..c3b488789 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/application/server/billingRules/CostCalculationApplicationService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/application/server/billingRules/CostCalculationApplicationService.java @@ -144,8 +144,11 @@ public class CostCalculationApplicationService { throw new ServiceException("单据类型未找到"); } //遍历费用科目取出对应配置的费用科目项 - AjaxResult expenseAccountAjax = systemServiceFeign.getSubInfoByCode2(costCalculationDTO.getSubjectCode(),costCalculationDTO.getTopOrganizationId()); - if(!"200".equals(String.valueOf(ajaxResult.get("code")))) { + if (costCalculationDTO.getTopOrganizationId() == null) { + throw new ServiceException("组织信息不能为空,无法查询费用科目"); + } + AjaxResult expenseAccountAjax = systemServiceFeign.getSubInfoByCode2(costCalculationDTO.getSubjectCode(), costCalculationDTO.getTopOrganizationId()); + if (!"200".equals(String.valueOf(expenseAccountAjax.get("code")))) { throw new ServiceException("费用科目不存在或已被删除"); } ExpenseAccountPO expenseAccountPO = JSON.parseObject(JSONObject.toJSONString(expenseAccountAjax.get("data")), ExpenseAccountPO.class); @@ -166,7 +169,7 @@ public class CostCalculationApplicationService { taskFlowRecordsDO.setSecondSubjectName(expenseAccountPO.getSubjectName()); } if(null == contractManageDetailPO){ - throw new ServiceException("合同中不包含该费用科目的计费策略,请查正后重试"); + throw new ServiceException("合同中不包含该费用科目的计费策略,请查证后重试"); } //根据计费策略查询计费规则信息 BillingRulesPO billingRulesPO = billingRulesDomainService.getInfo(contractManageDetailPO.getAccountingStrategyId()); diff --git a/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BusinessDocumentApi.java b/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BusinessDocumentApi.java index 5d59d8919..c34b2aa0f 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BusinessDocumentApi.java +++ b/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BusinessDocumentApi.java @@ -24,6 +24,7 @@ import javax.annotation.Resource; import com.mhd.common.core.web.controller.BaseController; import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.common.core.web.page.TableDataInfo; +import com.mhd.common.core.exception.ServiceException; /** * 业务单据Api @@ -70,8 +71,10 @@ public class BusinessDocumentApi extends BaseController{ }else { return toAjax(businessDocumentApplicationService.insert(businessDocumentDO)); } - }catch (Exception e){ - return AjaxResult.error("保存业务单据失败" +e.getMessage()); + } catch (ServiceException e) { + return AjaxResult.error(e.getMessage()); + } catch (Exception e){ + return AjaxResult.error("保存业务单据失败:" + e.getMessage()); } } diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java index 4736360c5..e58a5a29b 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java @@ -252,28 +252,18 @@ public class StockReceiptOrderApplicationService { // 5. 清空质检相关字段(如果是否质检为否) clearQualityInspectionFieldsRecursively(receiptMaterialDetailPOList); - // 6. 汇总第一层明细的净重、毛重、体积、面积 + // 6. 汇总明细的净重、毛重、体积、面积(递归包含主项+子项) BigDecimal totalNetWeight = BigDecimal.ZERO; BigDecimal totalGrossWeight = BigDecimal.ZERO; BigDecimal totalVolume = BigDecimal.ZERO; BigDecimal totalArea = BigDecimal.ZERO; if (!CollectionUtils.isEmpty(receiptMaterialDetailPOList)) { - // receiptMaterialDetailPOList 已经是树形结构,第一层明细的 level 应该是 1 或 null for (ReceiptMaterialDetailPO detail : receiptMaterialDetailPOList) { - // 只汇总第一层明细(level=1或没有level字段) if (detail.getLevel() == null || detail.getLevel() == 1) { - if (detail.getTotalNetWeight() != null) { - totalNetWeight = totalNetWeight.add(detail.getTotalNetWeight()); - } - if (detail.getTotalGrossWeight() != null) { - totalGrossWeight = totalGrossWeight.add(detail.getTotalGrossWeight()); - } - if (detail.getTotalVolume() != null) { - totalVolume = totalVolume.add(detail.getTotalVolume()); - } - if (detail.getTotalArea() != null) { - totalArea = totalArea.add(detail.getTotalArea()); - } + totalNetWeight = totalNetWeight.add(sumDetailRecursively(detail, ReceiptMaterialDetailPO::getTotalNetWeight)); + totalGrossWeight = totalGrossWeight.add(sumDetailRecursively(detail, ReceiptMaterialDetailPO::getTotalGrossWeight)); + totalVolume = totalVolume.add(sumDetailRecursively(detail, ReceiptMaterialDetailPO::getTotalVolume)); + totalArea = totalArea.add(sumDetailRecursively(detail, ReceiptMaterialDetailPO::getTotalArea)); } } } @@ -360,6 +350,80 @@ public class StockReceiptOrderApplicationService { return materialMoreDetailPOList; } + /** + * 递归汇总明细及其子项的某字段值(用于汇总净重、毛重、体积、面积) + */ + private BigDecimal sumDetailRecursively(ReceiptMaterialDetailPO detail, Function getter) { + BigDecimal sum = BigDecimal.ZERO; + if (detail == null) { + return sum; + } + BigDecimal v = getter.apply(detail); + if (v != null) { + sum = sum.add(v); + } + List children = detail.getChildren(); + if (!CollectionUtils.isEmpty(children)) { + for (ReceiptMaterialDetailPO child : children) { + sum = sum.add(sumDetailRecursively(child, getter)); + } + } + return sum; + } + + /** + * 扁平化明细:将子项收货数据合并到父级并清空 children,使每条明细只显示一行(PDA 与 PC 端收货一致) + * @param receiptMaterialDetailPOList 物料明细列表(树形,level 1 父级含 children) + */ + private void flattenMaterialDetailList(List receiptMaterialDetailPOList) { + if (CollectionUtils.isEmpty(receiptMaterialDetailPOList)) { + return; + } + for (ReceiptMaterialDetailPO parent : receiptMaterialDetailPOList) { + List children = parent.getChildren(); + if (CollectionUtils.isEmpty(children)) { + continue; + } + // 将子项收货数据合并到父级 + BigDecimal receiptQuantitySum = parent.getReceiptQuantity() != null ? parent.getReceiptQuantity() : BigDecimal.ZERO; + BigDecimal totalNetWeightSum = parent.getTotalNetWeight() != null ? parent.getTotalNetWeight() : BigDecimal.ZERO; + BigDecimal totalGrossWeightSum = parent.getTotalGrossWeight() != null ? parent.getTotalGrossWeight() : BigDecimal.ZERO; + BigDecimal totalVolumeSum = parent.getTotalVolume() != null ? parent.getTotalVolume() : BigDecimal.ZERO; + BigDecimal totalAreaSum = parent.getTotalArea() != null ? parent.getTotalArea() : BigDecimal.ZERO; + Integer maxReceiptStatus = parent.getReceiptStatus(); + for (ReceiptMaterialDetailPO child : children) { + if (child.getReceiptQuantity() != null) { + receiptQuantitySum = receiptQuantitySum.add(child.getReceiptQuantity()); + } + if (child.getTotalNetWeight() != null) { + totalNetWeightSum = totalNetWeightSum.add(child.getTotalNetWeight()); + } + if (child.getTotalGrossWeight() != null) { + totalGrossWeightSum = totalGrossWeightSum.add(child.getTotalGrossWeight()); + } + if (child.getTotalVolume() != null) { + totalVolumeSum = totalVolumeSum.add(child.getTotalVolume()); + } + if (child.getTotalArea() != null) { + totalAreaSum = totalAreaSum.add(child.getTotalArea()); + } + if (child.getReceiptStatus() != null && (maxReceiptStatus == null || child.getReceiptStatus() > maxReceiptStatus)) { + maxReceiptStatus = child.getReceiptStatus(); + } + } + parent.setReceiptQuantity(receiptQuantitySum); + parent.setTotalNetWeight(totalNetWeightSum); + parent.setTotalGrossWeight(totalGrossWeightSum); + parent.setTotalVolume(totalVolumeSum); + parent.setTotalArea(totalAreaSum); + if (maxReceiptStatus != null) { + parent.setReceiptStatus(maxReceiptStatus); + } + // 清空子项,使前端只显示父级一行 + parent.setChildren(new ArrayList<>()); + } + } + /** * 递归为物料明细设置更多属性 * @param receiptMaterialDetailPOList 物料明细列表 @@ -810,32 +874,7 @@ public class StockReceiptOrderApplicationService { * @return Boolean */ public Boolean receivingGoodsByApp(StockReceiptOrderDO stockReceiptOrderDO){ - List receiptMaterialDetailDOList = stockReceiptOrderDO.getMaterialDetailList(); - receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> { - List receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren(); - if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) { - //ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); - ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = - receiptMaterialDetailDOChildrenList1.stream() - .filter(p -> 1 == p.getLevel()) - .findFirst() // 返回 Optional - .orElse(null); // 没有符合条件的元素时返回null(也可以自定义默认值) - if (receiptMaterialDetailDOChildren != null) { - receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); - receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); - receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); - receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); - receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); - receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); - receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); - receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); - } - //只留二级 - List receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList()); - receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); - } - }); - //收货装配参数 + // PDA 收货与 PC 一致,保留主项子项结构 StockReceiptOrderDO assembleStockReceiptOrderDO = assembleParamByReceipt(stockReceiptOrderDO); return stockReceiptOrderDomainService.receivingGoods(assembleStockReceiptOrderDO); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java index 8c9d92940..faa6a5175 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/receiptMaterialDetail/repository/persistence/ReceiptMaterialDetailImpl.java @@ -245,6 +245,9 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl materialDetailSerialNumberList = new ArrayList<>(); for (ReceiptMaterialDetailDO receiptMaterialDetailDO : receiptMaterialDetailDOList){ List materialMoreDetailList1 = receiptMaterialDetailDO.getMaterialMoreDetailList(); + if (CollectionUtils.isEmpty(materialMoreDetailList1)) { + materialMoreDetailList1 = new ArrayList<>(); + } for (MaterialMoreDetailDO materialMoreDetailDO : materialMoreDetailList1) { String batchLabels = materialMoreDetailDO.getBatchLabels(); String attributeValue = materialMoreDetailDO.getAttributeValue(); @@ -310,6 +313,10 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl buildMaterialMoreDetailFromReceiptFields(ReceiptMaterialDetailDO receiptMaterialDetailDO) { + List result = new ArrayList<>(); + Long materialBaseInfoId = receiptMaterialDetailDO.getMaterialBaseInfoId(); + if (materialBaseInfoId == null) { + return result; + } + try { + AjaxResult ajaxResult = systemServiceFeign.getBatchDetailListByMaterialBaseInfoId(materialBaseInfoId); + if (ajaxResult == null || !"200".equals(String.valueOf(ajaxResult.get("code")))) { + return result; + } + List list = JSON.parseArray(JSON.toJSONString(ajaxResult.get("data")), BatchDetailFeignPO.class); + if (CollectionUtils.isEmpty(list)) { + return result; + } + Map labelToField = new HashMap<>(); + labelToField.put("Batch Ref NO's", "batchRefNo"); + labelToField.put("Batch Ref NO", "batchRefNo"); + labelToField.put("批次参考号", "batchRefNo"); + labelToField.put("Sheet Ref NO's", "sheetRefNo"); + labelToField.put("Sheet Ref NO", "sheetRefNo"); + labelToField.put("单据参考号", "sheetRefNo"); + labelToField.put("箱号/卡板号", "boxPalletNo"); + labelToField.put("批次号", "batchNumber"); + labelToField.put("物料状态", "materialStatusCode"); + + for (BatchDetailFeignPO po : list) { + if (po.getIsDisplay() == null || po.getIsDisplay() != 1) { + continue; + } + String fieldName = po.getFieldName(); + if (StringUtils.isBlank(fieldName) && StringUtils.isNotBlank(po.getBatchLabels())) { + fieldName = labelToField.get(po.getBatchLabels().trim()); + } + if (StringUtils.isBlank(fieldName)) { + continue; + } + String value = getReceiptFieldValue(receiptMaterialDetailDO, fieldName); + if (StringUtils.isBlank(value)) { + continue; + } + MaterialMoreDetailDO dto = new MaterialMoreDetailDO(); + dto.setBatchId(po.getBatchId()); + dto.setBatchDetailId(po.getBatchDetailId()); + dto.setBatchLabels(po.getBatchLabels()); + dto.setAttributeValue(value); + result.add(dto); + } + } catch (Exception e) { + log.warn("从收货明细构建更多属性失败,materialBaseInfoId:{},错误:{}", materialBaseInfoId, e.getMessage()); + } + return result; + } + + private String getReceiptFieldValue(ReceiptMaterialDetailDO dto, String fieldName) { + if (dto == null || StringUtils.isBlank(fieldName)) { + return null; + } + try { + java.lang.reflect.Field field = ReceiptMaterialDetailDO.class.getDeclaredField(fieldName); + field.setAccessible(true); + Object v = field.get(dto); + return v != null ? v.toString().trim() : null; + } catch (Exception e) { + return null; + } + } + /** * @description 生成物料明细 * @author ZhouGY diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java index 61a4019cc..ba2e6d4df 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java @@ -216,6 +216,14 @@ public class StockReceiptOrderDomainService { .collect(Collectors.groupingBy(MaterialMoreDetailPO::getMaterialDetailUniqueId)); receiptMaterialDetailPOList.forEach(receiptMaterialDetailPO -> { List receiptMaterialDetailPOChildrenNowList = new ArrayList<>(); + //子集(level 2 的真实子项) + List receiptMaterialDetailPOChildrenList = receiptMaterialDetailPO.getChildren(); + if (CollectionUtils.isEmpty(receiptMaterialDetailPOChildrenList)) { + //无 level 2 子项时,不添加父级拷贝,避免 PC 端显示重复 + receiptMaterialDetailPO.setChildren(receiptMaterialDetailPOChildrenNowList); + return; + } + //有 level 2 子项时,添加父级拷贝(level 1)供 PDA 收货使用 ReceiptMaterialDetailPO receiptMaterialDetailPOChildrenNow = new ReceiptMaterialDetailPO(); BeanUtils.copyProperties(receiptMaterialDetailPO, receiptMaterialDetailPOChildrenNow, "children"); List materialDetailSerialNumberList = inMaterialDetailSerialNumberMap.get(receiptMaterialDetailPO.getUniqueId()); @@ -231,8 +239,6 @@ public class StockReceiptOrderDomainService { receiptMaterialDetailPOChildrenNow.setMaterialMoreDetailList(getMaterialMoreDetail(receiptMaterialDetailPO)); } receiptMaterialDetailPOChildrenNowList.add(receiptMaterialDetailPOChildrenNow); - //子集 - List receiptMaterialDetailPOChildrenList = receiptMaterialDetailPO.getChildren(); receiptMaterialDetailPOChildrenList.forEach(receiptMaterialDetailPOChildren -> { List materialDetailSerialNumberChildrenList = inMaterialDetailSerialNumberMap.get(receiptMaterialDetailPOChildren.getUniqueId()); if (!CollectionUtils.isEmpty(materialDetailSerialNumberChildrenList)) { From 0924e1466bf5a00e662eb78228f2f345fe9695fb Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Tue, 10 Mar 2026 09:58:51 +0800 Subject: [PATCH 03/19] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=97=A0=E8=81=8A?= =?UTF-8?q?=E6=9D=A1=E7=A0=81=E4=BF=9D=E5=AD=98=E4=B8=8D=E4=B8=8Abug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../materialBarCode/service/MaterialBarCodeDomainService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/materialBarCode/service/MaterialBarCodeDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/materialBarCode/service/MaterialBarCodeDomainService.java index 760264672..fd96deb90 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/materialBarCode/service/MaterialBarCodeDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/materialBarCode/service/MaterialBarCodeDomainService.java @@ -70,6 +70,9 @@ public class MaterialBarCodeDomainService { if (CollectionUtil.isEmpty(materialBaseInfoDO.getMaterialBarCodeList())){ return true; } + materialBaseInfoDO.getMaterialBarCodeList().forEach(item -> { + item.setMaterialBaseInfoId(materialBaseInfoDO.getMaterialBaseInfoId()); + }); return materialBarCodeService.batchInsertOrUpdate(materialBaseInfoDO.getMaterialBarCodeList()); } } From 906c65c1642fd29db27fd1ac690a77eef6ac863f Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Tue, 10 Mar 2026 10:35:40 +0800 Subject: [PATCH 04/19] =?UTF-8?q?=E4=B8=8A=E6=9E=B6=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=85=A8=E9=83=A8=E4=B8=8A=E6=9E=B6=E7=94=9F=E6=88=90=E5=BA=93?= =?UTF-8?q?=E5=AD=98=E8=B0=83=E6=95=B4=E8=AE=B0=E5=BD=95=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/StockShelfOrderDomainService.java | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 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 69c3610a4..d112aba43 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 @@ -746,6 +746,14 @@ public class StockShelfOrderDomainService { inventoryAdjustmentRecord.setFreezeAfterQuantity(BigDecimal.ZERO); inventoryAdjustmentRecord.setInventoryBeforeQuantity(BigDecimal.ZERO); inventoryAdjustmentRecord.setInventoryAfterQuantity(materialInventory.getInventoryQuantity()); + inventoryAdjustmentRecord.setNetWeight(BigDecimal.ZERO ); + inventoryAdjustmentRecord.setGrossWeight(BigDecimal.ZERO); + inventoryAdjustmentRecord.setVolume(BigDecimal.ZERO); + inventoryAdjustmentRecord.setArea(BigDecimal.ZERO); + inventoryAdjustmentRecord.setAdjustedNetWeight(materialInventory.getNetWeight() == null ? BigDecimal.ZERO : materialInventory.getNetWeight()); + inventoryAdjustmentRecord.setAdjustedGrossWeight(materialInventory.getGrossWeight() == null ? BigDecimal.ZERO : materialInventory.getGrossWeight()); + inventoryAdjustmentRecord.setAdjustedVolume(materialInventory.getVolume() == null ? BigDecimal.ZERO : materialInventory.getVolume()); + inventoryAdjustmentRecord.setAdjustedArea(materialInventory.getArea() == null ? BigDecimal.ZERO : materialInventory.getArea()); inventoryAdjustmentRecordMapper.insert(inventoryAdjustmentRecord); } else if (materialInventoryPOS.size() == 1) { MaterialInventory materialInventory = new MaterialInventory(); @@ -835,6 +843,14 @@ public class StockShelfOrderDomainService { inventoryAdjustmentRecord.setCreateBy(loginUser.getUserid()); inventoryAdjustmentRecord.setCreateByName(loginUser.getUsername()); inventoryAdjustmentRecord.setCreateTime(new Date()); + inventoryAdjustmentRecord.setNetWeight(BigDecimal.ZERO ); + inventoryAdjustmentRecord.setGrossWeight(BigDecimal.ZERO); + inventoryAdjustmentRecord.setVolume(BigDecimal.ZERO); + inventoryAdjustmentRecord.setArea(BigDecimal.ZERO); + inventoryAdjustmentRecord.setAdjustedNetWeight(materialInventory.getNetWeight() == null ? BigDecimal.ZERO : materialInventory.getNetWeight()); + inventoryAdjustmentRecord.setAdjustedGrossWeight(materialInventory.getGrossWeight() == null ? BigDecimal.ZERO : materialInventory.getGrossWeight()); + inventoryAdjustmentRecord.setAdjustedVolume(materialInventory.getVolume() == null ? BigDecimal.ZERO : materialInventory.getVolume()); + inventoryAdjustmentRecord.setAdjustedArea(materialInventory.getArea() == null ? BigDecimal.ZERO : materialInventory.getArea()); inventoryAdjustmentRecordMapper.insert(inventoryAdjustmentRecord); } } @@ -1072,15 +1088,6 @@ public class StockShelfOrderDomainService { inventoryStandingDetailDO.setCreateBy(loginUser.getUserid()); inventoryStandingDetailDO.setCreateByName(loginUser.getUsername()); inventoryStandingDetailDO.setCreateTime(new Date()); - InventoryAdjustmentRecord inventoryAdjustmentRecord = new InventoryAdjustmentRecord(); - inventoryAdjustmentRecord.setNetWeight(BigDecimal.ZERO ); - inventoryAdjustmentRecord.setGrossWeight(BigDecimal.ZERO); - inventoryAdjustmentRecord.setVolume(BigDecimal.ZERO); - inventoryAdjustmentRecord.setArea(BigDecimal.ZERO); - inventoryAdjustmentRecord.setAdjustedNetWeight(shelfMaterialDetailPO.getTotalNetWeight() == null ? BigDecimal.ZERO : shelfMaterialDetailPO.getTotalNetWeight()); - inventoryAdjustmentRecord.setAdjustedGrossWeight(shelfMaterialDetailPO.getTotalGrossWeight() == null ? BigDecimal.ZERO : shelfMaterialDetailPO.getTotalGrossWeight()); - inventoryAdjustmentRecord.setAdjustedVolume(shelfMaterialDetailPO.getTotalVolume() == null ? BigDecimal.ZERO : shelfMaterialDetailPO.getTotalVolume()); - inventoryAdjustmentRecord.setAdjustedArea(shelfMaterialDetailPO.getTotalArea() == null ? BigDecimal.ZERO : shelfMaterialDetailPO.getTotalArea()); inventoryStandingDetailDOList.add(inventoryStandingDetailDO); } inventoryStandingDetailService.batchInsert(inventoryStandingDetailDOList); From 27fdb5cd3bae40f47debe589db70dcc7d1ad423a 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, 10 Mar 2026 13:51:18 +0800 Subject: [PATCH 05/19] =?UTF-8?q?WMS=E5=87=BA=E5=BA=93=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E5=A4=84=E7=90=86=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StockReceiptOrderApplicationService.java | 59 ++++++++++++++++++- .../listener/ExcelParseService.java | 9 +++ 2 files changed, 66 insertions(+), 2 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java index e58a5a29b..5c82038b0 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java @@ -533,7 +533,7 @@ public class StockReceiptOrderApplicationService { } /** - * 递归填充明细行的物料单位信息(如果单位信息为空) + * 递归填充明细行的物料单位信息、包装规格(如果为空) * @param receiptMaterialDetailPOList 收货物料明细列表 * @param materialBaseInfoMap 物料基础信息Map(key: materialBaseInfoId, value: MaterialBaseInfoPO) * @param packDetailMap 包装规格明细Map(key: materialBaseInfoId, value: PackDetailFeignPO,单位代码为EA) @@ -549,6 +549,19 @@ public class StockReceiptOrderApplicationService { Long materialBaseInfoId = receiptMaterialDetailPO.getMaterialBaseInfoId(); if (materialBaseInfoId != null) { + MaterialBaseInfoPO materialBaseInfoPO = materialBaseInfoMap.get(materialBaseInfoId); + // 填充包装规格(packCode、packName、packId)为空时从物料基础信息获取 + if (materialBaseInfoPO != null) { + if (receiptMaterialDetailPO.getPackId() == null && materialBaseInfoPO.getPackId() != null) { + receiptMaterialDetailPO.setPackId(materialBaseInfoPO.getPackId()); + } + if (StringUtils.isBlank(receiptMaterialDetailPO.getPackCode()) && StringUtils.isNotBlank(materialBaseInfoPO.getPackCode())) { + receiptMaterialDetailPO.setPackCode(materialBaseInfoPO.getPackCode()); + } + if (StringUtils.isBlank(receiptMaterialDetailPO.getPackName()) && StringUtils.isNotBlank(materialBaseInfoPO.getPackName())) { + receiptMaterialDetailPO.setPackName(materialBaseInfoPO.getPackName()); + } + } // 只有当单位信息为空时才填充 if (StringUtils.isBlank(receiptMaterialDetailPO.getUnitCode()) || StringUtils.isBlank(receiptMaterialDetailPO.getUnitName())) { @@ -874,11 +887,53 @@ public class StockReceiptOrderApplicationService { * @return Boolean */ public Boolean receivingGoodsByApp(StockReceiptOrderDO stockReceiptOrderDO){ - // PDA 收货与 PC 一致,保留主项子项结构 + // PDA 收货回传时,将第一项作为主项,其余作为其子项 + ensureFirstItemAsParent(stockReceiptOrderDO); StockReceiptOrderDO assembleStockReceiptOrderDO = assembleParamByReceipt(stockReceiptOrderDO); return stockReceiptOrderDomainService.receivingGoods(assembleStockReceiptOrderDO); } + /** + * PDA 收货回传时,将 materialDetailList 的第一项作为主项(level 1),其余项作为其子项(level 2) + */ + private void ensureFirstItemAsParent(StockReceiptOrderDO stockReceiptOrderDO) { + List list = stockReceiptOrderDO.getMaterialDetailList(); + if (CollectionUtils.isEmpty(list) || list.size() <= 1) { + return; + } + // 若第一项已有子项,说明已是主项子项结构,不处理 + if (!CollectionUtils.isEmpty(list.get(0).getChildren())) { + return; + } + StockReceiptOrderPO stockReceiptOrderPO = stockReceiptOrderDomainService.getInfo(stockReceiptOrderDO.getReceiptOrderId()); + if (stockReceiptOrderPO == null) { + return; + } + ReceiptMaterialDetailDO receiptMaterialDetailDOByQuery = new ReceiptMaterialDetailDO(); + receiptMaterialDetailDOByQuery.setReceiptOrderNumber(stockReceiptOrderPO.getReceiptOrderNumber()); + List receiptMaterialDetailPODbList = receiptMaterialDetailDomainService.queryList(receiptMaterialDetailDOByQuery); + Map dbMap = receiptMaterialDetailPODbList.stream() + .collect(Collectors.toMap(ReceiptMaterialDetailPO::getMaterialDetailId, Function.identity())); + ReceiptMaterialDetailDO first = list.get(0); + ReceiptMaterialDetailPO firstPO = dbMap.get(first.getMaterialDetailId()); + if (firstPO == null || firstPO.getUniqueId() == null) { + return; + } + Long parentUniqueId = firstPO.getUniqueId(); + List children = new ArrayList<>(); + for (int i = 1; i < list.size(); i++) { + ReceiptMaterialDetailDO child = list.get(i); + child.setLevel(2); + child.setParentUniqueId(parentUniqueId); + children.add(child); + } + first.setLevel(1); + first.setChildren(children); + List newList = new ArrayList<>(); + newList.add(first); + stockReceiptOrderDO.setMaterialDetailList(newList); + } + /** * @description 完成收货 * @author ZhouGY diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java index 7ab56d211..2a6da40da 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java @@ -386,6 +386,15 @@ public class ExcelParseService { outMaterialDetailDO.setSkucode(materialBaseInfoPO.getBarCode()); } } + // 单位:优先使用Excel中的"单位"字段,如果为空则使用"申报单位",如果还为空则从物料主数据获取(与入库单导入处理一致) + String unit = StringUtils.isNotBlank(outMaterialDetailDO.getUnit()) ? outMaterialDetailDO.getUnit() : null; + if (StringUtils.isBlank(unit) && StringUtils.isNotBlank(outMaterialDetailDO.getDeclareUnit())) { + unit = outMaterialDetailDO.getDeclareUnit(); + } + if (StringUtils.isBlank(unit) && materialBaseInfoPO != null && StringUtils.isNotBlank(materialBaseInfoPO.getUnitName())) { + unit = materialBaseInfoPO.getUnitName(); + } + outMaterialDetailDO.setUnit(unit); } } From 80353a969978e53c7a568ac3f3a65b1be4de6a88 Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Tue, 10 Mar 2026 14:29:20 +0800 Subject: [PATCH 06/19] =?UTF-8?q?=E5=87=BA=E5=BA=93=E5=8D=95=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=AE=A1=E5=88=92=E5=87=BA=E5=BA=93=E5=88=86=E9=85=8D?= =?UTF-8?q?=E6=8B=A3=E8=B4=A7=E5=A4=8D=E5=90=88=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StockOutOrderApplicationService.java | 12 +++++++++++- .../stockOutOrder/repository/po/StockOutOrderPO.java | 3 +++ 2 files changed, 14 insertions(+), 1 deletion(-) 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 c2613747e..6aa98028f 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 @@ -144,7 +144,17 @@ public class StockOutOrderApplicationService { } } } - return stockOutOrderDomainService.queryList(stockOutOrderDO); + List stockOutOrderPOS = stockOutOrderDomainService.queryList(stockOutOrderDO); + for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOS) { + StockOutOrderPO stockOutOrderPO1 = stockOutOrderDomainService.getInfoChildren(stockOutOrderPO.getOutOrderId()); + List materialDetailList = stockOutOrderPO1.getMaterialDetailList(); + BigDecimal reduce = materialDetailList.stream().map(OutMaterialDetailPO::getOutboundQuantity).reduce(BigDecimal.ZERO, BigDecimal::add); + stockOutOrderPO.setTotalOutboundQuantity(reduce); + stockOutOrderPO.setAllocationQuantity(stockOutOrderPO1.getAllocationQuantity()); + stockOutOrderPO.setPickingQuantity(stockOutOrderPO1.getPickingQuantity()); + stockOutOrderPO.setCheckQuantity(stockOutOrderPO1.getCheckQuantity()); + } + return stockOutOrderPOS; } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/po/StockOutOrderPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/po/StockOutOrderPO.java index 61c9ab403..9b2491ab7 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/po/StockOutOrderPO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/po/StockOutOrderPO.java @@ -377,4 +377,7 @@ public class StockOutOrderPO extends BaseVOEntity { @ApiModelProperty("app上传的图片") private String pictureApp; + @ApiModelProperty("出库总数量") + private BigDecimal totalOutboundQuantity; + } \ No newline at end of file From df320e9bc4ad8d2a21807fdb7c35432567c958c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Tue, 10 Mar 2026 15:03:30 +0800 Subject: [PATCH 07/19] =?UTF-8?q?nc=E6=8E=A8=E9=80=81=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E5=B8=81=E7=A7=8D=E5=8F=96=E5=80=BC=E4=BF=AE=E6=94=B9;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ReconciliationImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 20df7591f..e2eca32af 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 @@ -691,7 +691,7 @@ public class ReconciliationImpl extends ServiceImpl> itemR = wlhyServiceFeign.selectMakeOutInvoiceItemList(make); if (itemR.getCode()==200) { @@ -1074,7 +1074,7 @@ public class ReconciliationImpl extends ServiceImpl Date: Tue, 10 Mar 2026 15:29:41 +0800 Subject: [PATCH 08/19] =?UTF-8?q?=E8=B4=B9=E7=94=A8=E7=A7=91=E7=9B=AE?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E6=98=BE=E7=A4=BA=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/expenseAccount/repository/po/ExpenseAccountPO.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/expenseAccount/repository/po/ExpenseAccountPO.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/expenseAccount/repository/po/ExpenseAccountPO.java index fe1dfc782..79dff992c 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/expenseAccount/repository/po/ExpenseAccountPO.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/expenseAccount/repository/po/ExpenseAccountPO.java @@ -49,7 +49,7 @@ public class ExpenseAccountPO extends BaseVOEntity{ @ApiModelProperty("显示顺序") @Excel(name = "显示顺序") - private String showSeq; + private Integer showSeq; @ApiModelProperty("计费属性编码") @Excel(name = "计费属性编码") From 62672a60f723cc9cf7d0e056e8ac4782a1ed81d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Tue, 10 Mar 2026 16:17:25 +0800 Subject: [PATCH 09/19] =?UTF-8?q?=E5=8F=91=E5=8C=85=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E9=85=8D=E7=BD=AE;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd_bms/src/main/resources/bootstrap.yml | 26 +++++++++----- mhd_wms/src/main/resources/bootstrap.yml | 46 +++++++++--------------- 2 files changed, 34 insertions(+), 38 deletions(-) diff --git a/mhd_bms/src/main/resources/bootstrap.yml b/mhd_bms/src/main/resources/bootstrap.yml index 7803d21bb..a77f8fe02 100644 --- a/mhd_bms/src/main/resources/bootstrap.yml +++ b/mhd_bms/src/main/resources/bootstrap.yml @@ -16,18 +16,26 @@ spring: cloud: nacos: discovery: - server-addr: 127.0.0.1:8848 + # server-addr: 127.0.0.1:8848 + server-addr: 10.33.0.129:6010 + # 线上测试环境配置 容器名+端口号 + # server-addr: 10.102.192.5:6848 + # username: nacos + # password: manhuoda@2023 + #线上正式环境 + # server-addr: 10.102.192.105:6848 config: - # 配置中心地址 - server-addr: 127.0.0.1:8848 - # 锁定server端的配置文件(读取它的配置项) - namespace: # 命名空间id + # server-addr: 127.0.0.1:8848 + server-addr: 10.33.0.129:6010 + # 线上测试环境配置 容器名+端口号 + # server-addr: 10.102.192.5:6848 + # username: nacos + # password: manhuoda@2023 + #线上正式环境 + # server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 file-extension: yml #默认properties # 开启nacos自动刷新,如果这个配置没有或者为false会导致配置不能自动刷新 # 允许nacos服务端向本地同步配置 enable-remote-sync-config: true - refresh-enabled: true - - - + refresh-enabled: true \ No newline at end of file diff --git a/mhd_wms/src/main/resources/bootstrap.yml b/mhd_wms/src/main/resources/bootstrap.yml index daa9ac6db..26f5fddc5 100644 --- a/mhd_wms/src/main/resources/bootstrap.yml +++ b/mhd_wms/src/main/resources/bootstrap.yml @@ -13,37 +13,25 @@ spring: cloud: nacos: discovery: - # 服务注册地址 - server-addr: 127.0.0.1:8848 - username: nacos - password: manhuoda@2023 - # 演示环境 -# server-addr: 47.92.229.169:8848 - # 测试开发环境 -# server-addr: 192.168.10.18:8848 - # Saas环境 -# server-addr: 8.130.64.92:8848 - # 大运通泰生产环境 -# server-addr: 39.107.137.158:8848 - # 线上测试环境 -# server-addr: 116.204.23.92:8848 + # server-addr: 127.0.0.1:8848 + server-addr: 10.33.0.129:6010 + # 线上测试环境配置 容器名+端口号 + # server-addr: 10.102.192.5:6848 + # username: nacos + # password: manhuoda@2023 + #线上正式环境 + # server-addr: 10.102.192.105:6848 config: - # 配置中心地址 - server-addr: 127.0.0.1:8848 - username: nacos - password: manhuoda@2023 - # 演示环境 -# server-addr: 47.92.229.169:8848 - # 测试开发环境 -# server-addr: 192.168.10.18:8848 - # Saas环境 -# server-addr: 8.130.64.92:8848 - # 大运通泰生产环境 -# server-addr: 39.107.137.158:8848 - # 线上测试环境 -# server-addr: 116.204.23.92:8848 + # server-addr: 127.0.0.1:8848 + server-addr: 10.33.0.129:6010 + # 线上测试环境配置 容器名+端口号 + # server-addr: 10.102.192.5:6848 + # username: nacos + # password: manhuoda@2023 + #线上正式环境 + # server-addr: 10.102.192.105:6848 # 配置文件格式 file-extension: yml # 共享配置 shared-configs: - - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} \ No newline at end of file From 6ad6a1a5a0923a9a3eb5dd447ba30a1eeb8cc2ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Tue, 10 Mar 2026 16:21:19 +0800 Subject: [PATCH 10/19] =?UTF-8?q?=E6=89=93=E5=8C=85=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd_bms/Dockerfile | 4 ++-- mhd_wms/Dockerfile | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mhd_bms/Dockerfile b/mhd_bms/Dockerfile index 04fc6ed22..40e037546 100644 --- a/mhd_bms/Dockerfile +++ b/mhd_bms/Dockerfile @@ -10,8 +10,8 @@ ENV JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8" # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp VOLUME /tmp #将当前jar 复制到容器根目录下 -ADD mhd_bms.jar mhd_bms.jar +ADD target/mhd_bms.jar mhd_bms.jar #暴露容器端口 Docker镜像告知Docker宿主机应用监听了端口 EXPOSE 8019 # 运行jar包 -ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1000m", "-Xmx1500m","-jar","/mhd_bms.jar"] +ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1000m", "-Xmx1500m","-jar","/mhd_bms.jar"] \ No newline at end of file diff --git a/mhd_wms/Dockerfile b/mhd_wms/Dockerfile index 05b4b637a..86659fd11 100644 --- a/mhd_wms/Dockerfile +++ b/mhd_wms/Dockerfile @@ -10,8 +10,8 @@ ENV JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8" # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp VOLUME /tmp #将当前mhd_special_logistics.jar 复制到容器根目录下 -ADD mhd_wms.jar mhd_wms.jar +ADD target/mhd_wms.jar mhd_wms.jar #暴露容器端口 Docker镜像告知Docker宿主机应用监听了端口 EXPOSE 8017 # 运行jar包 -ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1000m", "-Xmx1500m","-jar","/mhd_wms.jar"] +ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1000m", "-Xmx1500m","-jar","/mhd_wms.jar"] \ No newline at end of file From feb13e3ececb1dee6e0183441973673fef81192a Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Tue, 10 Mar 2026 16:32:18 +0800 Subject: [PATCH 11/19] =?UTF-8?q?=E5=87=BA=E5=BA=93=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=89=8D=E5=90=8E=E5=87=80=E9=87=8D...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HandoverTaskOrderDomainService.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java index 7486ec643..4add65325 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java @@ -277,7 +277,7 @@ public class HandoverTaskOrderDomainService { inventoryAdjustmentRecord.setAdjustAfterStatusCode("he_ge"); inventoryAdjustmentRecord.setAdjustBeforeStatusCode("he_ge"); inventoryAdjustmentRecord.setAdjustAfterStatusName("合格"); - inventoryAdjustmentRecord.setAdjustBeforeStatusName("合格"); +// inventoryAdjustmentRecord.setAdjustBeforeStatusName("合格"); inventoryAdjustmentRecord.setMaterialBaseInfoId(materialInventoryPO.getMaterialBaseInfoId()); inventoryAdjustmentRecord.setMaterialCode(outMaterialDetail.getMaterialNo()); inventoryAdjustmentRecord.setMaterialName(outMaterialDetail.getCommodityName()); @@ -311,15 +311,15 @@ public class HandoverTaskOrderDomainService { inventoryAdjustmentRecord.setFreezeAfterQuantity(newFreezeQuantity); inventoryAdjustmentRecord.setInventoryBeforeQuantity(oldInventoryQuantity); inventoryAdjustmentRecord.setInventoryAfterQuantity(newInventoryQuantity); - inventoryAdjustmentRecord.setNetWeight(materialInventoryPO.getNetWeight() == null ? BigDecimal.ZERO : materialInventoryPO.getNetWeight()); - inventoryAdjustmentRecord.setGrossWeight(materialInventoryPO.getGrossWeight() == null ? BigDecimal.ZERO : materialInventoryPO.getGrossWeight()); - inventoryAdjustmentRecord.setVolume(materialInventoryPO.getVolume() == null ? BigDecimal.ZERO : materialInventoryPO.getVolume()); - inventoryAdjustmentRecord.setArea(materialInventoryPO.getArea() == null ? BigDecimal.ZERO : materialInventoryPO.getArea()); + inventoryAdjustmentRecord.setNetWeight(outMaterialDetail.getTotalNetWeight() == null ? BigDecimal.ZERO : outMaterialDetail.getTotalNetWeight()); + inventoryAdjustmentRecord.setGrossWeight(outMaterialDetail.getTotalGrossWeight() == null ? BigDecimal.ZERO : outMaterialDetail.getTotalGrossWeight()); + inventoryAdjustmentRecord.setVolume(outMaterialDetail.getTotalVolume() == null ? BigDecimal.ZERO : outMaterialDetail.getTotalVolume()); + inventoryAdjustmentRecord.setArea(outMaterialDetail.getTotalArea() == null ? BigDecimal.ZERO : outMaterialDetail.getTotalArea()); - inventoryAdjustmentRecord.setAdjustedNetWeight(materialInventoryPO.getNetWeight().subtract(outMaterialDetail.getTotalNetWeight())); - inventoryAdjustmentRecord.setAdjustedGrossWeight(materialInventoryPO.getGrossWeight().subtract(outMaterialDetail.getTotalGrossWeight())); - inventoryAdjustmentRecord.setAdjustedVolume(materialInventoryPO.getVolume().subtract(outMaterialDetail.getTotalVolume()) ); - inventoryAdjustmentRecord.setAdjustedArea(materialInventoryPO.getArea().subtract(outMaterialDetail.getTotalArea()) ); + inventoryAdjustmentRecord.setAdjustedNetWeight(materialInventoryPO.getNetWeight()); + inventoryAdjustmentRecord.setAdjustedGrossWeight(materialInventoryPO.getGrossWeight()); + inventoryAdjustmentRecord.setAdjustedVolume(materialInventoryPO.getVolume() ); + inventoryAdjustmentRecord.setAdjustedArea(materialInventoryPO.getArea() ); inventoryAdjustmentRecordMapper.insert(inventoryAdjustmentRecord); } From 8c32d347c60169736a55f41eb1f7035515ab660d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Tue, 10 Mar 2026 16:53:15 +0800 Subject: [PATCH 12/19] =?UTF-8?q?=E6=89=93=E5=8C=85=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mhd_bms/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mhd_bms/Dockerfile b/mhd_bms/Dockerfile index 40e037546..c1a4e9693 100644 --- a/mhd_bms/Dockerfile +++ b/mhd_bms/Dockerfile @@ -1,5 +1,5 @@ # 基础镜像 -FROM kdvolder/jdk8 +FROM arm64v8/openjdk:8 # author MAINTAINER manhuoda #指定东八区时区 From af7f980735d59234723dddc8702527d2c0433199 Mon Sep 17 00:00:00 2001 From: zhou-hongcheng <1064771933@qq.com> Date: Tue, 10 Mar 2026 17:26:28 +0800 Subject: [PATCH 13/19] =?UTF-8?q?=E7=A7=BB=E4=BD=8D=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=89=8D=E5=90=8E=E5=87=80=E9=87=8D...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../persistence/ShiftMaterialDetailImpl.java | 68 ++++++++++++++++--- 1 file changed, 59 insertions(+), 9 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java index fcb229436..254d4be70 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java @@ -396,10 +396,38 @@ public class ShiftMaterialDetailImpl extends ServiceImpl Date: Tue, 10 Mar 2026 17:43:40 +0800 Subject: [PATCH 14/19] =?UTF-8?q?nc=E6=8E=A8=E9=80=81=E7=A8=8E=E9=A2=9D?= =?UTF-8?q?=E8=B5=8B=E5=80=BC=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ReconciliationImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 e2eca32af..73b75473a 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 @@ -728,7 +728,7 @@ public class ReconciliationImpl extends ServiceImpl Date: Tue, 10 Mar 2026 17:44:44 +0800 Subject: [PATCH 15/19] =?UTF-8?q?=E7=A7=BB=E4=BD=8D=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=89=8D=E5=90=8E=E5=87=80=E9=87=8D...?= =?UTF-8?q?=E9=87=8D=E7=BD=AEid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ShiftMaterialDetailImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java index 254d4be70..1c9628629 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/shiftMaterialDetail/repository/persistence/ShiftMaterialDetailImpl.java @@ -474,6 +474,7 @@ public class ShiftMaterialDetailImpl extends ServiceImpl Date: Tue, 10 Mar 2026 17:57:50 +0800 Subject: [PATCH 16/19] =?UTF-8?q?=E5=B7=AE=E5=BC=82=E8=BF=87=E8=B4=A6?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=89=8D=E5=90=8E=E5=87=80=E9=87=8D...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../persistence/DifferentManageImpl.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/differentManage/repository/persistence/DifferentManageImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/differentManage/repository/persistence/DifferentManageImpl.java index af865a359..725142249 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/differentManage/repository/persistence/DifferentManageImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/differentManage/repository/persistence/DifferentManageImpl.java @@ -209,6 +209,10 @@ public class DifferentManageImpl extends ServiceImpl Date: Tue, 10 Mar 2026 18:24:49 +0800 Subject: [PATCH 17/19] =?UTF-8?q?=E6=8C=89=E5=88=9B=E5=BB=BA=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E6=9F=A5=E8=AF=A2=E6=8A=A5=E9=94=99=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mhd/common/core/domain/dto/ReconciliationDTO.java | 4 ++-- .../reconciliation/repository/todo/ReconciliationDO.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java index ae6b3e839..7ce6b67a7 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java @@ -212,11 +212,11 @@ public class ReconciliationDTO extends BaseVOEntity{ @ApiModelProperty("创建时间开始") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "创建时间开始", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTimeStart; + private String createTimeStart; @ApiModelProperty("创建时间结束") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "创建时间结束", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTimeEnd; + private String createTimeEnd; @ApiModelProperty("审核时间开始") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "审核时间开始", width = 30, dateFormat = "yyyy-MM-dd") diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java index f32007dc3..28e9bb95e 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java @@ -225,11 +225,11 @@ public class ReconciliationDO extends BaseVOEntity{ @ApiModelProperty("创建时间开始") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "创建时间开始", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTimeStart; + private String createTimeStart; @ApiModelProperty("创建时间结束") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "创建时间结束", width = 30, dateFormat = "yyyy-MM-dd") - private Date createTimeEnd; + private String createTimeEnd; @ApiModelProperty("审核时间开始") @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "审核时间开始", width = 30, dateFormat = "yyyy-MM-dd") From 9e3b087c9c223c1f8f9c3233f2306bf2031e2230 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Tue, 10 Mar 2026 18:42:14 +0800 Subject: [PATCH 18/19] =?UTF-8?q?nc=E6=8E=A8=E9=80=81billid=E5=8A=A0?= =?UTF-8?q?=E5=90=8E=E7=BC=80=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ReconciliationImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) 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 73b75473a..42c4b243d 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 @@ -657,7 +657,9 @@ public class ReconciliationImpl extends ServiceImpl> makeList=wlhyServiceFeign.selectMakeOutInvoiceListByReconciliation(makeQuery); if (makeList.getCode()==200){ + int count = 0; for (TmsMakeOutInvoice make : makeList.getData()) { + count++; List ysitemList=new ArrayList(); ReconciliationDTO reconciliationDTO=new ReconciliationDTO(); reconciliationDTO.setInnerNumber(reconciliation.getInnerNumber()); @@ -768,7 +770,7 @@ public class ReconciliationImpl extends ServiceImpl> makeList=wlhyServiceFeign.selectMakeOutInvoiceListByReconciliation(makeQuery); if (makeList.getCode()==200){ + int count= 0; for (TmsMakeOutInvoice make : makeList.getData()) { + count++; List ysitemList=new ArrayList(); ReconciliationDTO reconciliationDTO=new ReconciliationDTO(); reconciliationDTO.setInnerNumber(reconciliation.getInnerNumber()); @@ -1173,7 +1177,7 @@ public class ReconciliationImpl extends ServiceImpl Date: Tue, 10 Mar 2026 21:59:33 +0800 Subject: [PATCH 19/19] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/persistence/ReconciliationImpl.java | 2 +- .../resources/mapper/reconciliation/ReconciliationMapper.xml | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) 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 42c4b243d..e92bd3970 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 @@ -502,7 +502,7 @@ public class ReconciliationImpl extends ServiceImpl and a.create_by_name like concat('%', #{createByName}, '%') + + and a.APPLY_NUMBER like concat('%', #{applyNumber}, '%') + and a.update_by_name like concat('%', #{updateByName}, '%') @@ -166,7 +169,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND (date_format(a.collection_time,'%Y-%m-%d') >= date_format(#{collectionTimeStart},'%Y-%m-%d') and date_format(a.collection_time,'%Y-%m-%d') date_format(#{collectionTimeEnd},'%Y-%m-%d')) - + AND (date_format(a.create_time,'%Y-%m-%d') >= date_format(#{createTimeStart},'%Y-%m-%d') and date_format(a.create_time,'%Y-%m-%d') date_format(#{createTimeEnd},'%Y-%m-%d'))