From 74b9e1314b28d6b3edf9d7499b4f745f699c1936 Mon Sep 17 00:00:00 2001 From: liuy <37787198+LiuyCodes@users.noreply.github.com> Date: Sat, 2 Nov 2024 09:46:49 +0800 Subject: [PATCH] =?UTF-8?q?refactor(sales):=20=E4=BC=98=E5=8C=96=E9=94=80?= =?UTF-8?q?=E5=94=AE=E5=87=BA=E5=BA=93=E5=8D=95=E7=94=9F=E6=88=90=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -调整了单据合并和档案查询的执行顺序,提高处理效率 - 禁用了 MyBatis 缓存,避免数据不一致问题 - 更新了应用配置,激活 lets 环境 - 移除了测试代码中的硬编码部分,提高了代码可读性 --- .../sales/SoSaleOutPluginInitializerToC.java | 22 +++++++++++-------- .../src/main/resources/application.yml | 2 +- .../main/resources/mybatis/mybatis-config.xml | 2 +- .../SoSaleOutPluginInitializerToBTest.java | 4 +++- .../SoSaleOutPluginInitializerToCTest.java | 1 + 5 files changed, 19 insertions(+), 12 deletions(-) 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 5e1a9279..ea27d31d 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 @@ -1890,17 +1890,9 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { BdDefdocEntity shopArchives = oldValue.get(0).getShopArchives();//U8C店铺档案 String newState2 = oldValue.get(0).getNewState2();//交易成功-红 是否成功 String newState3 = oldValue.get(0).getNewState3();//交易成功-蓝 是否成功 + BdRdclEntity bdRdclEntity = oldValue.get(0).getBdRdclEntity();//U8C收发类别 //验证是否为指定的店铺,如果为true,则取结存价 Boolean isCheckShopChoose = balanceUnitPriceUtil.checkOfsShop(header.getStoreCode()); - SonDetailsDto sonDetailsDto = groupMergeDetailedRows(oldValue, isCheckShopChoose, mapList);//把汇总好的出库单明细行合并成一行 -// BdInvmandocEntity bdInvmandocEntity = queryInventoryMan(sonDetailsDto, bdCalbodyEntity.getPkCorp()); - BdInvmandocEntity bdInvmandocEntity = sonDetailsDto.getBdInvmandocEntity();//存货管理档案:取发货公司的存货管理档案 -// BdInvbasdocEntity bdInvbasdocEntity = queryStockBasicArchives(bdInvmandocEntity.getPkInvmandoc(), deliverGoodsCorp.getPkCorp()); - BdInvbasdocEntity bdInvbasdocEntity = sonDetailsDto.getBdInvbasdocEntity();//存货基础档案 -// BdTaxitemsEntity bdTaxitemsEntity1 = queryBdTaxitems(bdInvbasdocEntity.getInvcode()); - BdTaxitemsEntity bdTaxitemsEntity1 = sonDetailsDto.getBdTaxitemsEntity();//根据存货基础档案编码,查询当前存货的税率 - BdRdclEntity bdRdclEntity = oldValue.get(0).getBdRdclEntity();//U8C收发类别 - /** * 先要确保红字销售订单生成后再生成蓝字销售订单,否则很有可能出现库存不足的问题,所以才共用了同一个summaryDimensionMap, * 这样导致的问题是不好独立判断newState2、newState3的状态,独立判断这个状态有利于防止单据重新推送 @@ -1910,6 +1902,12 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { try { //如果这个汇总集合,已经全部推送成功,那么就不需要推送红字销售订单,把isOneSuccess标识修改为true即可 if (!"Y".equals(newState2)) { + //合并成一行 + SonDetailsDto sonDetailsDto = groupMergeDetailedRows(oldValue, isCheckShopChoose, mapList);//把汇总好的出库单明细行合并成一行 + BdInvmandocEntity bdInvmandocEntity = sonDetailsDto.getBdInvmandocEntity();//存货管理档案:取发货公司的存货管理档案 + BdInvbasdocEntity bdInvbasdocEntity = sonDetailsDto.getBdInvbasdocEntity();//存货基础档案 + BdTaxitemsEntity bdTaxitemsEntity1 = sonDetailsDto.getBdTaxitemsEntity();//根据存货基础档案编码,查询当前存货的税率 + //验证数据完整性 // checkArchives(oldValue.get(0)); // checkAllFail(oldValue, newState2, "1"); @@ -2125,6 +2123,12 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { //2024年9月4日 14:30:31 第一阶段推送成功,才能执行第二阶段,否则不能执行以下代码 logger.info("开始第二阶段:销售订单 ->(自动生成) 销售出库单 ->(自动生成) 销售发票"); try { + //合并成一行 + SonDetailsDto sonDetailsDto = groupMergeDetailedRows(oldValue, isCheckShopChoose, mapList);//把汇总好的出库单明细行合并成一行 + BdInvmandocEntity bdInvmandocEntity = sonDetailsDto.getBdInvmandocEntity();//存货管理档案:取发货公司的存货管理档案 + BdInvbasdocEntity bdInvbasdocEntity = sonDetailsDto.getBdInvbasdocEntity();//存货基础档案 + BdTaxitemsEntity bdTaxitemsEntity1 = sonDetailsDto.getBdTaxitemsEntity();//根据存货基础档案编码,查询当前存货的税率 + //验证数据完整性 // checkAllFail(oldValue, newState3, "2"); //取交易成功时间,生成业务日期 diff --git a/buildpackage/src/main/resources/application.yml b/buildpackage/src/main/resources/application.yml index cd510979..bab6e286 100644 --- a/buildpackage/src/main/resources/application.yml +++ b/buildpackage/src/main/resources/application.yml @@ -36,7 +36,7 @@ spring: # use-suffix-pattern: true profiles: # active: @profileActive@ - active: letsprod + active: lets # active: @profile.active@ # active: dev servlet: diff --git a/buildpackage/src/main/resources/mybatis/mybatis-config.xml b/buildpackage/src/main/resources/mybatis/mybatis-config.xml index 2993693c..c243543c 100644 --- a/buildpackage/src/main/resources/mybatis/mybatis-config.xml +++ b/buildpackage/src/main/resources/mybatis/mybatis-config.xml @@ -4,7 +4,7 @@ - + diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToBTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToBTest.java index b124b0e0..638fee73 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToBTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToBTest.java @@ -86,7 +86,9 @@ public class SoSaleOutPluginInitializerToBTest { // soSaleOutPluginInitializerToB.startImplementByCode(aaa, "stock"); // soSaleOutPluginInitializerToB.startImplementByTranTime("2024-10-28 00:00:00", "2024-10-28 23:59:59"); - soSaleOutPluginInitializerToB.startImplementByStockTime("2024-10-31 14:48:41", "2024-10-31 14:48:41"); +// soSaleOutPluginInitializerToB.startImplementByStockTime("2024-10-31 14:48:41", "2024-10-31 14:48:41"); + + soSaleOutPluginInitializerToB.startImplementByCode("LETS-SH2024103000021968","stock"); } 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 0caac45d..2480d500 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 @@ -121,6 +121,7 @@ class SoSaleOutPluginInitializerToCTest { try { // soSaleOutPluginInitializerToC.startImplementStockByCode("LETS-SH2024091900002878", "stock"); + soSaleOutPluginInitializerToC.startImplementStockByCode("LETS-SH2024102900028994", "tran"); } catch (Exception e) { e.printStackTrace(); }