From 12a1acb3f584af328d81c845892cd99f998e0c62 Mon Sep 17 00:00:00 2001 From: liuy <37787198+LiuyCodes@users.noreply.github.com> Date: Wed, 28 May 2025 18:07:17 +0800 Subject: [PATCH] =?UTF-8?q?fix(sales):=20=E4=BF=AE=E5=A4=8D=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E5=8C=B9=E9=85=8D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 PassiveWarehouseReceiptToC、SoSaleOutPluginInitializerToC 和 SoSaleReturnPluginInitializerToC 中 修改了部门匹配逻辑,增加了公司主键作为后缀 - 更新了相关缓存工具类中的部门编码处理方式- 优化了错误信息提示内容 --- .../hzya/frame/plugin/lets/ofsvo/QueryOfsSoSaleOutVo.java | 4 ++++ .../lets/plugin/sales/PassiveWarehouseReceiptToC.java | 5 +++-- .../lets/plugin/sales/SoSaleOutPluginInitializerToC.java | 4 ++-- .../lets/plugin/sales/SoSaleReturnPluginInitializerToC.java | 3 ++- .../lets/util/PassiveComponentsArchivesCacheUtil.java | 2 +- .../lets/util/PassiveComponentsArchivesCacheUtilV2.java | 2 +- .../plugin/lets/util/TocOrderBasicArchivesCacheUtil.java | 3 ++- .../plugin/lets/util/TocReturnBasicArchivesCacheUtil.java | 2 +- .../plugin/purchase/ProxyPurchaseWarehousOrderTest.java | 4 +++- .../plugin/sales/SoSaleOutPluginInitializerToCTest.java | 6 +++++- .../plugin/sales/SoSaleReturnPluginInitializerToCTest.java | 2 +- 11 files changed, 25 insertions(+), 12 deletions(-) diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsSoSaleOutVo.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsSoSaleOutVo.java index de020318..79dbdfd0 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsSoSaleOutVo.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/ofsvo/QueryOfsSoSaleOutVo.java @@ -66,4 +66,8 @@ public class QueryOfsSoSaleOutVo { private String relatedAt_end; //无源入库单号 private String receiptCode; + //更新开始时间 + private String lastUpdated_start; + //更新结束时间 + private String lastUpdated_end; } \ No newline at end of file diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/PassiveWarehouseReceiptToC.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/PassiveWarehouseReceiptToC.java index 81f2c608..658f650a 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/PassiveWarehouseReceiptToC.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/PassiveWarehouseReceiptToC.java @@ -1399,7 +1399,7 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity { } else { logger.info("OFS销售订单号:{} 存在部门字段:{}!", header1.getCode(), header1.getDepartmentType()); String deptCode = header1.getDepartmentType().trim(); - bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode); + bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode + bdCorpEntity.getPkCorp()); } //客商基本档案 @@ -1654,7 +1654,8 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity { } else { logger.info("OFS销售订单号:{} 存在部门字段:{}!", header1.getCode(), header1.getDepartmentType()); String deptCode = header1.getDepartmentType().trim(); - bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode); + bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode + bdCorpEntity.getPkCorp()); + Assert.notNull(bdDeptdocEntity, "无法匹配到指定部门 部门编码:{} 对应公司主键:{}", deptCode, bdCorpEntity.getPkCorp()); } //客商基本档案 diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToC.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToC.java index b975c5c9..33aa762d 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToC.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToC.java @@ -1574,8 +1574,8 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { //使用O选定的部门字段,logger太影响性能 // logger.info("OFS销售订单号:{} 存在部门字段:{}!", header2.getCode(), header2.getDepartmentType()); String deptCode = header2.getDepartmentType().trim(); - bdDeptdocEntity = cacheTocMapVo.getStringBdDeptdocEntityMapByDeptCode().get(deptCode); - Assert.notNull(bdDeptdocEntity, "无法匹配到U8C部门档案 OFS销售订单-部门编码:{}", deptCode); + bdDeptdocEntity = cacheTocMapVo.getStringBdDeptdocEntityMapByDeptCode().get(deptCode + bdCorpEntity.getPkCorp()); + Assert.notNull(bdDeptdocEntity, "无法匹配到U8C部门档案 OFS销售订单-部门编码:{}", deptCode + "_" + bdCorpEntity.getPkCorp()); } //存货基本档案 diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToC.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToC.java index cafb332c..047b1ecb 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToC.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToC.java @@ -1544,7 +1544,8 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity { } else { logger.info("OFS销售订单号:{} 存在部门字段:{}!", header1.getCode(), header1.getDepartmentType()); String deptCode = header1.getDepartmentType().trim(); - bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode); + bdDeptdocEntity = cacheTocMapVoV2.getStringBdDeptdocEntityMapByDeptCode().get(deptCode + bdCorpEntity.getPkCorp()); + Assert.notNull(bdDeptdocEntity, "无法匹配到指定部门 部门编码:{} 对应公司主键:{}", deptCode, bdCorpEntity.getPkCorp()); } //客商基本档案 diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtil.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtil.java index 3117e53f..91e3fc3a 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtil.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtil.java @@ -178,7 +178,7 @@ public class PassiveComponentsArchivesCacheUtil { if (bdDeptdocEntityList2 != null && bdDeptdocEntityList2.size() > 0) { for (int i = 0; i < bdDeptdocEntityList2.size(); i++) { BdDeptdocEntity bdDeptdocEntity1 = bdDeptdocEntityList2.get(i); - stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode(), bdDeptdocEntity1); + stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode() + bdDeptdocEntity1.getPkCorp(), bdDeptdocEntity1); } } return bddeptdocEntityList; diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtilV2.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtilV2.java index 46c6d9d7..af23cf03 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtilV2.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/PassiveComponentsArchivesCacheUtilV2.java @@ -180,7 +180,7 @@ public class PassiveComponentsArchivesCacheUtilV2 { if (bdDeptdocEntityList2 != null && bdDeptdocEntityList2.size() > 0) { for (int i = 0; i < bdDeptdocEntityList2.size(); i++) { BdDeptdocEntity bdDeptdocEntity1 = bdDeptdocEntityList2.get(i); - stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode(), bdDeptdocEntity1); + stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode() + bdDeptdocEntity1.getPkCorp(), bdDeptdocEntity1); } } return bddeptdocEntityList; diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocOrderBasicArchivesCacheUtil.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocOrderBasicArchivesCacheUtil.java index 2e0de2e6..82c5e27e 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocOrderBasicArchivesCacheUtil.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocOrderBasicArchivesCacheUtil.java @@ -179,6 +179,7 @@ public class TocOrderBasicArchivesCacheUtil { } } + //部门编码+主键 BdDeptdocEntity bdDeptdocEntity2 = new BdDeptdocEntity(); bdDeptdocEntity2.setDataSourceCode("lets_u8c"); bdDeptdocEntity2.setDr(0); @@ -186,7 +187,7 @@ public class TocOrderBasicArchivesCacheUtil { if (bdDeptdocEntityList2 != null && bdDeptdocEntityList2.size() > 0) { for (int i = 0; i < bdDeptdocEntityList2.size(); i++) { BdDeptdocEntity bdDeptdocEntity1 = bdDeptdocEntityList2.get(i); - stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode(), bdDeptdocEntity1); + stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode() + bdDeptdocEntity1.getPkCorp(), bdDeptdocEntity1); } } return bddeptdocEntityList; diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocReturnBasicArchivesCacheUtil.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocReturnBasicArchivesCacheUtil.java index 211cc448..c4d2f800 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocReturnBasicArchivesCacheUtil.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/TocReturnBasicArchivesCacheUtil.java @@ -179,7 +179,7 @@ public class TocReturnBasicArchivesCacheUtil { if (bdDeptdocEntityList2 != null && bdDeptdocEntityList2.size() > 0) { for (int i = 0; i < bdDeptdocEntityList2.size(); i++) { BdDeptdocEntity bdDeptdocEntity1 = bdDeptdocEntityList2.get(i); - stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode(), bdDeptdocEntity1); + stringBdDeptdocEntityMap2.put(bdDeptdocEntity1.getDeptcode() + bdDeptdocEntity1.getPkCorp(), bdDeptdocEntity1); } } return bddeptdocEntityList; diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrderTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrderTest.java index 9f5e8b26..953a223e 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrderTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrderTest.java @@ -27,8 +27,10 @@ public class ProxyPurchaseWarehousOrderTest { @Test public void startImplementByCode() { try { - proxyPurchaseWarehousOrder.startImplementByCode("LETS-RE2025040300001802-confirm"); +// proxyPurchaseWarehousOrder.startImplementByCode("LETS-RE2025040300001802-confirm"); // proxyPurchaseWarehousOrder.startImplementByTime("2025-01-21 17:38:26", "2025-01-21 17:38:26"); +// proxyPurchaseWarehousOrder.startImplementByCode(""); + proxyPurchaseWarehousOrder.startImplementByTime("2025-05-13 19:22:04", "2025-05-13 19:22:04"); } catch (Exception e) { e.printStackTrace(); } diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToCTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToCTest.java index a9136b85..71375380 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToCTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToCTest.java @@ -72,6 +72,10 @@ class SoSaleOutPluginInitializerToCTest { // errorHeaderDetailsDtoDto.setHeader(header); // errorHeaderDetailsDtoDto.setDetails(details); // errorHeaderDetailsDtoDto. + + + String aaa = "LETS-SH2025032600025120"; + soSaleOutPluginInitializerToC.startImplementStockByCode(aaa, "tran"); } catch (Exception e) { e.printStackTrace(); } @@ -99,7 +103,7 @@ class SoSaleOutPluginInitializerToCTest { // String s = "LETS-SH2025032200027982"; // soSaleOutPluginInitializerToC.startImplementStockByCode(s, "stock"); - soSaleOutPluginInitializerToC.startImplementTranByTime("2025-05-08 00:00:00", "2025-05-08 23:59:59", "2"); +// soSaleOutPluginInitializerToC.startImplementTranByTime("2025-05-08 00:00:00", "2025-05-08 23:59:59", "2"); // List headerDetailsDtoArrayList = new ArrayList<>(); // QueryOfsSoSaleOutVo queryOfsSoSaleOutVo = new QueryOfsSoSaleOutVo(); diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToCTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToCTest.java index 08c071d3..87beba65 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToCTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToCTest.java @@ -65,7 +65,7 @@ public class SoSaleReturnPluginInitializerToCTest { // soSaleReturnPluginInitializerToC.startImplementStockByTime(startAndEndVos.get(0).getStart_time(), startAndEndVos.get(0).getEnd_time()); try { - soSaleReturnPluginInitializerToC.startImplementByTradeTime("2025-04-28 00:00:00", "2025-04-28 23:59:59", "2"); +// soSaleReturnPluginInitializerToC.startImplementByTradeTime("2025-04-28 00:00:00", "2025-04-28 23:59:59", "2"); // soSaleReturnPluginInitializerToC.startImplementByCode("LETS-RE2025010900002384", "tran");