From b6d160cfc645c5a94ec900941f5ee0d76113d762 Mon Sep 17 00:00:00 2001 From: liuy <37787198+LiuyCodes@users.noreply.github.com> Date: Tue, 29 Oct 2024 17:16:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=85=AC=E5=8F=B8=E6=A1=A3?= =?UTF-8?q?=E6=A1=88=E5=AF=B9=E7=85=A7=E7=9A=84=E4=BB=A3=E7=A0=81=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E6=B6=89=E5=8F=8ATOB=E3=80=81TOC=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E7=9A=84=E4=B8=9A=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sales/SoSaleOutPluginInitializerToB.java | 8 ++---- .../sales/SoSaleOutPluginInitializerToC.java | 11 ++++++-- .../SoSaleReturnPluginInitializerToB.java | 3 +- .../SoSaleReturnPluginInitializerToC.java | 16 +++++++---- .../plugin/lets/util/QueryU8CEntityUtil.java | 28 +++++++++++++++++++ .../SoSaleOutPluginInitializerToBTest.java | 4 +-- .../SoSaleOutPluginInitializerToCTest.java | 6 ++-- .../SoSaleReturnPluginInitializerToBTest.java | 5 ++-- .../SoSaleReturnPluginInitializerToCTest.java | 16 +++++------ .../lets/util/QueryU8CEntityUtilTest.java | 8 ++++-- 10 files changed, 71 insertions(+), 34 deletions(-) diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToB.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToB.java index 73f0d561..4816d1c8 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToB.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleOutPluginInitializerToB.java @@ -999,8 +999,6 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity { } // com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header1 = saleOrderMessageDto.getData().get(0).getHeader(); String memberId = header2.getMemberId(); - // 测试 -// memberId = "9387"; Assert.notNull(memberId, "TOB销售订单(OFS)表头会员id不能为空,否则无法匹配U8C客商档案!"); Assert.state(!"".equals(memberId.trim()), "TOB销售订单(OFS)表头会员id不能为空,否则无法匹配U8C客商档案!"); @@ -1013,8 +1011,6 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity { Assert.notNull(bdRdclEntity, "根据收发类别编码:{} 无法匹配到U8C收发类别"); // 销售公司、发货公司 - // 测试 -// header.setCompanyCode("SHLZ"); String companyCode = header.getCompanyCode(); Assert.notNull(companyCode, "O表头公司不能为空"); String replaceCompanyCode = queryU8CEntityUtil.queryBdDefDocByPkDefDocList(companyCode.trim()); @@ -1502,7 +1498,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity { } com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header1 = saleOrderMessageDto.getData().get(0).getHeader(); String memberId = header1.getMemberId(); - // 测试 + //测试 // memberId = "9387"; Assert.notNull(memberId, "TOB销售订单(OFS)表头会员id不能为空,否则无法匹配U8C客商档案!"); Assert.state(!"".equals(memberId.trim()), "TOB销售订单(OFS)表头会员id不能为空,否则无法匹配U8C客商档案!"); @@ -1753,7 +1749,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity { orderOutTobHeaderDto.setHeader(header); orderOutTobHeaderDto.setDetails(details); - + BeanUtil.copyPropertiesV2(header, orderOutTobHeaderDto); orderOutTobHeaderDtoArrayList.add(orderOutTobHeaderDto); //成功,进入下一个环节 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 333723c7..7862949d 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 @@ -1216,6 +1216,8 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { ofsOrderSaleAmountAllocationUtil.batchTocSalesAmountAllocation(headerDetailsDtos); //计算OFS销售订单邮费分摊 ofsOrderSalePostageFeeAllocationUtil.batchTocSalesPostageFeeAllocation(headerDetailsDtos); + //初始化公司档案对照关系 + Map comparisonCompanyArchives = queryU8CEntityUtil.queryBdDefDocByPkDefDocAll(); for (int i = 0; i < headerDetailsDtoList.size(); i++) { HeaderDetailsDto headerDetailsDto = headerDetailsDtoList.get(i); @@ -1240,9 +1242,14 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity { //表头公司:通过名称匹配U8C公司 // String corpName = "上海丽知品牌管理有限公司"; String companyCode = header.getCompanyCode(); - //测试 -// companyCode = "SHLZ"; Assert.notNull(companyCode, "O出库单表头货主不能为空!"); + + //查找是否替换公司 + String targetCorp = comparisonCompanyArchives.get(companyCode); + if (targetCorp != null) { + companyCode = targetCorp; + } + BdCorpEntity bdCorpEntity = cacheTocMapVo.getStringBdCorpEntityMap().get(companyCode.trim()); Assert.notNull(bdCorpEntity, "根据公司编码({})没有匹配到U8C公司档案(公司编码=O货主)", companyCode); diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java index 5c71e4cf..4c75ac54 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java @@ -353,7 +353,6 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { queryOfsSoSaleOutVo.setClientCode("LETS"); queryOfsSoSaleOutVo.setPageNo(1L); queryOfsSoSaleOutVo.setPageSize(50L); - //测试 queryOfsSoSaleOutVo.setStoreCode(tobShop); queryOfsSoSaleOutVo.setCode(code); queryOfsSoSaleOutVo.setInternalInstructionType("RETURN"); @@ -1257,7 +1256,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { } else if (icGeneralHEntityList.size() >= 2) { Assert.state(false, "根据U8C销售订单表头id:{},查询到{}个销售出库单", soSaleEntityList.get(soSaleEntityList.size() - 1).getCsaleid(), icGeneralHEntityList.size()); } - + //查询U8C销售订单对应的销售出库单表体 IcGeneralBEntity icGeneralBEntity = new IcGeneralBEntity(); icGeneralBEntity.setCsourcebillhid(soSaleEntityList.get(soSaleEntityList.size() - 1).getCsaleid()); 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 adc18c67..9deeb654 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 @@ -1111,6 +1111,8 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity { findOfsOrder(headerDetailsDtos, returnGoodHeaderDetailsDataDtoList1); //计算OFS销售订单优惠金额分摊到明细行 ofsOrderAfterSalesAmountAllocationUtil.batchTocSalesAmountAllocation(rerturnGoodsOrderSearchData); + //初始化公司档案对照关系 + Map comparisonCompanyArchives = queryU8CEntityUtil.queryBdDefDocByPkDefDocAll(); for (int i = 0; i < returnGoodHeaderDetailsDataDtoList1.size(); i++) { StockinOrderSearchResponse.StockinOrder stockinOrder = returnGoodHeaderDetailsDataDtoList1.get(i); @@ -1135,12 +1137,14 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity { BdRdclEntity bdRdclEntity = cacheTocMapVoV2.getStringBdRdclEntityMap().get(header1.getSubOrderType().trim()); Assert.notNull(bdRdclEntity, "根据业务类型({})没有匹配到U8C业务类型", header1.getSubOrderType().trim()); - //表头公司:通过名称匹配U8C公司 -// String corpName = "上海丽知品牌管理有限公司"; - //测试SHOF -// header.setCompanyCode("SHOF"); - Assert.notNull(header.getCompanyCode(), "O货主编码不能为空"); - BdCorpEntity bdCorpEntity = cacheTocMapVoV2.getStringBdCorpEntityMap().get(header.getCompanyCode().trim()); + String companyCode = header.getCompanyCode(); + Assert.notNull(companyCode, "O货主编码不能为空"); + //查找是否替换公司 + String targetCorp = comparisonCompanyArchives.get(companyCode); + if (targetCorp != null) { + companyCode = targetCorp; + } + BdCorpEntity bdCorpEntity = cacheTocMapVoV2.getStringBdCorpEntityMap().get(companyCode.trim()); Assert.notNull(bdCorpEntity, "根据O公司编码(货主编码)({})没有匹配到U8C公司档案", header.getCompanyCode()); //发货库存组织 diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtil.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtil.java index 1e81001a..badd545e 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtil.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtil.java @@ -8,7 +8,9 @@ import com.hzya.frame.plugin.lets.entity.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -329,5 +331,31 @@ public class QueryU8CEntityUtil { // } // return corpCode; } + + //key为原公司编码,value为现公司编码 + public Map queryBdDefDocByPkDefDocAll() { + Map stringStringHashMap = new HashMap<>(); + + BdDefdocEntity bdDefdocEntity = new BdDefdocEntity(); + bdDefdocEntity.setPkDefdoclist(OverallConstant.getOverAllValue("u8c自定义项档案-公司对照")); + bdDefdocEntity.setDr(0); + bdDefdocEntity.setDataSourceCode(ProfilesActiveConstant.LETS_DATE_SOURCE); + List bdDefdocEntityList = iBdDefdocDao.query(bdDefdocEntity); + if (bdDefdocEntityList != null && bdDefdocEntityList.size() > 1) { + for (int i = 0; i < bdDefdocEntityList.size(); i++) { + BdDefdocEntity bdDefdocEntity1 = bdDefdocEntityList.get(i); + String doccode = bdDefdocEntity1.getDoccode(); + String memo = bdDefdocEntity1.getMemo(); + + if (doccode != null && doccode.length() > 0 && memo != null && memo.length() > 0) { + String[] split = memo.split(","); + if (split.length > 0) { + stringStringHashMap.put(doccode.trim(), split[0]); + } + } + } + } + return stringStringHashMap; + } ////////////////////////////////////////////////////////////////////////////////////////公司自定义档案查询 } 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 39b63da5..a4fef10e 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 @@ -79,8 +79,8 @@ public class SoSaleOutPluginInitializerToBTest { // soSaleOutPluginInitializerToB.startImplementByCode("LETS-SH2024101700000270"); try { -// soSaleOutPluginInitializerToB.startImplementByCode("LETS-SH2024101800025544", "stock"); - soSaleOutPluginInitializerToB.startImplementByStockTime("2024-10-23 16:09:59", "2024-10-23 16:10:01"); + soSaleOutPluginInitializerToB.startImplementByCode("LETS-SH2024101800025544", "tran"); +// soSaleOutPluginInitializerToB.startImplementByStockTime("2024-10-23 16:09:59", "2024-10-23 16:10:01"); // String aaa = "LETS-SH2024102300043720"; // soSaleOutPluginInitializerToB.startImplementByCode(aaa, "stock"); 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 739eb243..6ec295c5 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 @@ -109,10 +109,10 @@ class SoSaleOutPluginInitializerToCTest { // String aaa = "LETS-SH2024101900022025"; // soSaleOutPluginInitializerToC.startImplementStockByCode(aaa, "tran"); -// String aaa = "LETS-SH2024102200217857"; -// soSaleOutPluginInitializerToC.startImplementStockByCode(aaa, "tran"); + String aaa = "LETS-SH2024102200217857"; + soSaleOutPluginInitializerToC.startImplementStockByCode(aaa, "stock"); - soSaleOutPluginInitializerToC.startImplementTranByTime("2024-10-26 18:20:09","2024-10-26 18:20:09"); +// soSaleOutPluginInitializerToC.startImplementTranByTime("2024-10-26 18:20:09","2024-10-26 18:20:09"); } catch (Exception e) { e.printStackTrace(); } diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToBTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToBTest.java index 29ec740b..5d5962c7 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToBTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToBTest.java @@ -35,10 +35,9 @@ public class SoSaleReturnPluginInitializerToBTest { //测试TOB退货-确认收入 // soSaleReturnPluginInitializerToB.startImplementByTradeTime("2024-08-30 15:54:41", "2024-08-30 15:54:43"); + soSaleReturnPluginInitializerToB.startImplementByCode("LETS-RE2024102500000029", "tran"); -// soSaleReturnPluginInitializerToB.startImplementByCode("LETS-RE2024091400000001", "tran"); - - soSaleReturnPluginInitializerToB.startImplementByStockTime("2024-09-24 16:52:49", "2024-09-24 16:52:52"); +// soSaleReturnPluginInitializerToB.startImplementByStockTime("2024-09-24 16:52:49", "2024-09-24 16:52:52"); } catch (Exception e) { e.printStackTrace(); } 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 1da8c351..c8870d22 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 @@ -29,12 +29,12 @@ public class SoSaleReturnPluginInitializerToCTest { @Test public void startImplement() { // soSaleReturnPluginInitializerToC.startImplement(null, null); -// try { -// String code = "LETS-RE2024091400000001"; -// soSaleReturnPluginInitializerToC.startImplementByCode(code, "stock"); -// } catch (Exception e) { -// e.printStackTrace(); -// } + try { + String code = "LETS-RE2024092400000148"; + soSaleReturnPluginInitializerToC.startImplementByCode(code, "stock"); + } catch (Exception e) { + e.printStackTrace(); + } // List startAndEndVos = soSaleReturnPluginInitializerToC.calculateCalculateEntireDayPeriod(null); // soSaleReturnPluginInitializerToC.startImplementStockByTime(startAndEndVos.get(0).getStart_time(), startAndEndVos.get(0).getEnd_time()); @@ -43,8 +43,8 @@ public class SoSaleReturnPluginInitializerToCTest { try { // soSaleReturnPluginInitializerToC.startImplementStockByTime("2024-10-21 00:00:00", "2024-10-21 23:59:59"); - JSONObject jsonObject = new JSONObject(); - soSaleReturnPluginInitializerToC.executeBusiness(jsonObject); +// JSONObject jsonObject = new JSONObject(); +// soSaleReturnPluginInitializerToC.executeBusiness(jsonObject); } catch (Exception e) { e.printStackTrace(); } diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtilTest.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtilTest.java index 71aae3a6..e5a600e9 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtilTest.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/QueryU8CEntityUtilTest.java @@ -14,6 +14,7 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.util.List; +import java.util.Map; import static org.junit.Assert.*; @@ -58,7 +59,10 @@ public class QueryU8CEntityUtilTest { @Test public void queryBdCostsubj() { - String s = queryU8CEntityUtil.queryBdDefDocByPkDefDocList("KS"); - System.out.println(s); +// String s = queryU8CEntityUtil.queryBdDefDocByPkDefDocList("KS"); +// System.out.println(s); + + Map stringStringMap = queryU8CEntityUtil.queryBdDefDocByPkDefDocAll(); + System.out.println(JSON.toJSONString(stringStringMap)); } } \ No newline at end of file