提交业务代码,拉取dev分支

This commit is contained in:
liuy 2024-09-10 19:18:34 +08:00
parent 138a9f6c6d
commit 0dc07ea558
13 changed files with 222 additions and 716 deletions

View File

@ -430,7 +430,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
}
}
if (idStr.length() > 0) {
return idStr.substring(0, idStr.length());
return idStr.substring(0, idStr.length() - 1);
}
return null;
}
@ -447,7 +447,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
tocofsSaleoutDetailedEntity.setIds(idStr);
tocofsSaleoutDetailedEntityList = iTocofsSaleoutDetailedDao.query(tocofsSaleoutDetailedEntity);
} else {
logger.error("idStr为空无法查询数据");
logger.info("idStr为空无法查询数据");
}
return tocofsSaleoutDetailedEntityList;
}
@ -659,7 +659,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
// 查询U8C业务流程
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlow();
// 查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
for (int i = 0; i < orderOutTobHeaderDtos.size(); i++) {
OrderOutTobHeaderDto orderOutTobHeaderDto = orderOutTobHeaderDtos.get(i);
@ -689,6 +689,8 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
String generateBusinessDate = createGenerateBusinessDate(orderOutTobHeaderDto);
//店铺
BdDefdocEntity shopArchives = orderOutTobHeaderDto.getShopArchives();
//收发类别
BdRdclEntity bdRdclEntity = orderOutTobHeaderDto.getBdRdclEntity();
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
@ -919,6 +921,17 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
List<DetailsDto> details = headerDetailsDto.getDetails();
try {
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto headerDetailsDto1 = header.getHeaderDetailsDto();
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header2 = headerDetailsDto1.getHeader();
//如果没有O单据名称则默认为销售
if (header2.getSubOrderType() == null || "".equals(header2.getSubOrderType().trim())) {
header2.setSubOrderType("SALES");
}
//查询对应的收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject(header2.getSubOrderType());
Assert.notNull(bdRdclEntity, "根据收发类别编码:{} 无法匹配到U8C收发类别");
//根据OFS销售出库单查询得到OFS销售订单
SaleOrderMessageDto saleOrderMessageDto = null;
try {
@ -1020,9 +1033,11 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
List<BdCubasdocEntity> bdCubasdocEntityList = iBdCubasdocDao.query(bdCubasdocEntity);
if (bdCubasdocEntityList == null || bdCubasdocEntityList.size() == 0) {
Assert.state(false, "根据OFS会员id{}无法查询到U8C客商基本档案", memberId);
} else if (bdCubasdocEntityList.size() >= 2) {
Assert.state(false, "根据OFS会员id{}查询到U8C多个客商基本档案", memberId);
}
//TODO 测试
// else if (bdCubasdocEntityList.size() >= 2) {
// Assert.state(false, "根据OFS会员id{}查询到U8C多个客商基本档案", memberId);
// }
//客商管理档案
BdCumandocEntity bdCumandocEntity1 = new BdCumandocEntity();
@ -1078,6 +1093,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
orderOutTobHeaderDto.setPlatformArchives(bdDefdocEntityList.get(0));
orderOutTobHeaderDto.setShopArchives(bdDefdocEntityList2.get(0));
orderOutTobHeaderDto.setSaleOrderMessageDto(saleOrderMessageDto);
orderOutTobHeaderDto.setBdRdclEntity(bdRdclEntity);
orderOutTobHeaderDto.setHeader(header);
orderOutTobHeaderDto.setDetails(details);
@ -1371,6 +1387,17 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
List<DetailsDto> details = headerDetailsDto.getDetails();
try {
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto headerDetailsDto1 = header.getHeaderDetailsDto();
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header2 = headerDetailsDto1.getHeader();
//如果没有O单据名称则默认为销售
if (header2.getSubOrderType() == null || "".equals(header2.getSubOrderType().trim())) {
header2.setSubOrderType("SALES");
}
//查询对应的收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject(header2.getSubOrderType());
Assert.notNull(bdRdclEntity, "根据收发类别编码:{} 无法匹配到U8C收发类别");
//根据OFS销售出库单查询得到OFS销售订单
SaleOrderMessageDto saleOrderMessageDto = null;
try {
@ -1646,7 +1673,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
//查询U8C业务流程
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlow();
//查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
logger.info("TOB销售业务交易成功同步档案转换成功对应的数量{}行需要进行数据转换", orderOutTobHeaderDtos.size());
logger.info("TOB销售发票业务流程编码{}", bdBusitypeEntity.getBusicode());
@ -1688,6 +1715,8 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
List<IcGeneralBEntity> icGeneralBEntityList = orderOutTobHeaderDto.getIcGeneralBEntityList();
//U8C销售订单执行情况明细表
List<ExtIntegrationTaskLivingDetailsQueryVo> extIntegrationTaskLivingDetailsQueryVos = orderOutTobHeaderDto.getExtIntegrationTaskLivingDetailsQueryVos();
//收发类别
BdRdclEntity bdRdclEntity = orderOutTobHeaderDto.getBdRdclEntity();
//销售发票表头
SalesInvoiceHeadDto salesInvoiceHeadDto = new SalesInvoiceHeadDto();

View File

@ -725,7 +725,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
// 查询U8C业务流程
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlow();
// 查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("202");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("202");
if (bdBusitypeEntity != null && summaryDimensionMap != null) {
Iterator<Map.Entry<String, List<SonDetailsDto>>> iterator = summaryDimensionMap.entrySet().iterator();
@ -746,6 +746,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
BdCubasdocEntity bdCubasdocEntity = oldValue.get(0).getBdCubasdocEntity();//客商基本档案
BdDefdocEntity platformArchives = oldValue.get(0).getPlatformArchives();//U8C平台档案
BdDefdocEntity shopArchives = oldValue.get(0).getShopArchives();//U8C店铺档案
BdRdclEntity bdRdclEntity = oldValue.get(0).getBdRdclEntity();//U8C收发类别
try {
// checkArchives(oldValue.get(0));
@ -982,6 +983,17 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header1 = headerDetailsDto1.getHeader();
List<com.hzya.frame.ttxofs.dto.ofssalesordersearch.DetailsDto> details1 = headerDetailsDto1.getDetails();
//OFS销售订单
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto headerDetailsDto2 = header.getHeaderDetailsDto();
com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDto header2 = headerDetailsDto2.getHeader();
//TOCTOB业务已经和万确认如果没有则默认为SALES销售
if (header2.getSubOrderType() == null || "".equals(header2.getSubOrderType())) {
header2.setSubOrderType("SALES");
}
BdRdclEntity bdRdclEntity = cacheTocMapVo.getStringBdRdclEntityMap().get(header2.getSubOrderType());
Assert.notNull(bdRdclEntity, "根据业务类型({})没有匹配到U8C业务类型", header2.getSubOrderType());
//表头公司通过名称匹配U8C公司
// String corpName = "上海丽知品牌管理有限公司";
String companyCode = header.getCompanyCode();
@ -1037,8 +1049,6 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
BdDefdocEntity bdDefdocEntity1 = cacheTocMapVo.getStringBdDefdocShopEntityMap().get(header.getStoreCode());
Assert.notNull(bdDefdocEntity1, "根据O店铺编码({})无法匹配到U8C店铺自定义档案", header.getStoreCode());
// TODO 查询该单据的收发类别-取销售订单对应的单据类型名称
//字段拷贝
for (int j = 0; j < details.size(); j++) {
DetailsDto detailsDto = details.get(j);
@ -1073,6 +1083,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
sonDetailsDto.setBdInvbasdocEntity(bdInvbasdocEntity);
sonDetailsDto.setBdTaxitemsEntity(bdTaxitemsEntity);
sonDetailsDto.setHeaderDetailsDto(headerDetailsDto1);
sonDetailsDto.setBdRdclEntity(bdRdclEntity);
BeanUtil.copyPropertiesV2(detailsDto, sonDetailsDto);
sonDetailsDtoList.add(sonDetailsDto);
@ -1150,7 +1161,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
}
/**
* 分组汇总公司+店铺+仓库+SKU+出库类型数量合并相加
* 分组汇总公司+店铺+仓库+SKU+收发类别+部门数量合并相加
*
* @param sonDetailsDtoList 整理好的数据
* filterType 0或者其他不过滤1 过滤交易成功红2过滤交易成功蓝
@ -1180,7 +1191,9 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
//SKU
String skuCode = sonDetailsDto.getSkuCode();
//出库类型内购
String refOrderType = header.getRefOrderType();
// String refOrderType = header.getRefOrderType();
//收发类别
BdRdclEntity bdRdclEntity = sonDetailsDto.getBdRdclEntity();
StringBuffer summaryDimensionStr = new StringBuffer();
if (bdCorpEntity != null && bdCorpEntity.getPkCorp() != null) {
@ -1211,11 +1224,17 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
}
summaryDimensionStr.append(ADD);
if (refOrderType != null && !"".equals(refOrderType)) {
summaryDimensionStr.append(refOrderType);
// if (refOrderType != null && !"".equals(refOrderType)) {
// summaryDimensionStr.append(refOrderType);
// } else {
// summaryDimensionStr.append(NOTHING);
// }
if (bdRdclEntity != null && bdRdclEntity.getRdcode() != null) {
summaryDimensionStr.append(bdRdclEntity.getRdcode());
} else {
summaryDimensionStr.append(NOTHING);
}
//TODO 部门O还未开发好待定
sonDetailsDto.setSummaryDimensionStr(summaryDimensionStr.toString());
}
@ -1466,7 +1485,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
//TOC业务流程-TOC确认收入
BdBusitypeEntity bdBusitypeEntity2 = u8cOperationFlowV3();
//查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("202");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("202");
if (bdBusitypeEntity != null && summaryDimensionMap != null) {
Iterator<Map.Entry<String, List<SonDetailsDto>>> iterator = summaryDimensionMap.entrySet().iterator();
@ -1496,6 +1515,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
BdInvbasdocEntity bdInvbasdocEntity = sonDetailsDto.getBdInvbasdocEntity();//存货基础档案
// BdTaxitemsEntity bdTaxitemsEntity1 = queryBdTaxitems(bdInvbasdocEntity.getInvcode());
BdTaxitemsEntity bdTaxitemsEntity1 = sonDetailsDto.getBdTaxitemsEntity();//根据存货基础档案编码查询当前存货的税率
BdRdclEntity bdRdclEntity = oldValue.get(0).getBdRdclEntity();//U8C收发类别
/**
* 先要确保红字销售订单生成后再生成蓝字销售订单,否则很有可能出现库存不足的问题所以才共用了同一个summaryDimensionMap

View File

@ -472,7 +472,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
// 查询U8C业务流程
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlow();
// 查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
try {
for (int i = 0; i < orderToBHeaderDtos.size(); i++) {
@ -508,6 +508,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
SaleOrderMessageDto saleOrderMessageDto = orderOutTobHeaderDto.getSaleOrderMessageDto();
//OFS售后订单
RerturnGoodsOrderSearchData ofsRertunOrder1 = orderOutTobHeaderDto.getOfsRertunOrder();
//OFS收发类别
BdRdclEntity bdRdclEntity = orderOutTobHeaderDto.getBdRdclEntity();
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
@ -713,6 +715,13 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
Assert.notNull(memberId, "TOB销售订单(OFS)表头会员id不能为空否则无法匹配U8C客商档案");
Assert.state(!"".equals(memberId.trim()), "TOB销售订单(OFS)表头会员id不能为空否则无法匹配U8C客商档案");
//查询对应的收发类别
if (header1.getSubOrderType() == null || "".equals(header1.getSubOrderType().trim())) {
header1.setSubOrderType("SALES");
}
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject(header1.getSubOrderType());
Assert.notNull(bdRdclEntity, "根据收发类别编码:{} 无法匹配到U8C收发类别");
// 销售公司发货公司
String companyCode = header.getCompanyCode();
Assert.notNull(companyCode, "O表头公司不能为空");
@ -850,6 +859,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
orderOutTobHeaderDto.setShopArchives(bdDefdocEntityList2.get(0));
orderOutTobHeaderDto.setSaleOrderMessageDto(saleOrderMessageDto);
orderOutTobHeaderDto.setOfsRertunOrder(ofsRertunOrder);
orderOutTobHeaderDto.setBdRdclEntity(bdRdclEntity);
orderOutTobHeaderDto.setHeader(header);
orderOutTobHeaderDto.setDetails(details);
@ -905,6 +915,13 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
Assert.notNull(memberId, "TOB销售订单(OFS)表头会员id不能为空否则无法匹配U8C客商档案");
Assert.state(!"".equals(memberId.trim()), "TOB销售订单(OFS)表头会员id不能为空否则无法匹配U8C客商档案");
//查询对应的收发类别
if (header1.getSubOrderType() == null || "".equals(header1.getSubOrderType().trim())) {
header1.setSubOrderType("SALES");
}
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject(header1.getSubOrderType());
Assert.notNull(bdRdclEntity, "根据收发类别编码:{} 无法匹配到U8C收发类别");
//2024年8月30日 10:57:29 查询对应的U8C销售订单注意要把编码和主键一起查询O主键导入到U8C中对于U8C来说可能会重复
SoSaleEntity soSaleEntity = new SoSaleEntity();
soSaleEntity.setDr(0L);
@ -915,11 +932,9 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
List<SoSaleEntity> soSaleEntityList = iSoSaleDao.query(soSaleEntity);
if (soSaleEntityList == null || soSaleEntityList.size() == 0) {
Assert.state(false, "根据O售后入库单主键{} 单号:{} 无法匹配到U8C红字销售订单(传到U8C可能失败了bretinvflag=Ys)", header.getId(), header.getCode());
} else if (soSaleEntityList.size() >= 2) {
Assert.state(false, "根据O出库单主键{} 单号:{} 匹配到{}个U8C销售订单", header.getId(), header.getCode(), soSaleEntityList.size());
}
//TODO 测试
// else if (soSaleEntityList.size() >= 2) {
// Assert.state(false, "根据O出库单主键{} 单号:{} 匹配到{}个U8C销售订单", header.getId(), header.getCode(), soSaleEntityList.size());
// }
//查询销售订单明细行表体
SoSaleorderBEntity soSaleorderBEntity = new SoSaleorderBEntity();
@ -1117,6 +1132,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
orderOutTobHeaderDto.setSoSaleorderBEntityList(soSaleorderBEntityList);
orderOutTobHeaderDto.setExtIntegrationTaskLivingDetailsQueryVos(extIntegrationTaskLivingDetailsQueryVos);
orderOutTobHeaderDto.setOfsRertunOrder(ofsRertunOrder);
orderOutTobHeaderDto.setBdRdclEntity(bdRdclEntity);
orderOutTobHeaderDto.setHeader(header);
orderOutTobHeaderDto.setDetails(details);
@ -1370,7 +1386,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
//查询U8C业务流程
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlow();
//查询销售收发类别
BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
// BdRdclEntity bdRdclEntity = rdclUtil.queryRdClObject("201");
logger.info("TOB销售业务退货到账成功同步档案转换成功对应的数量{}行需要进行数据转换", orderToBHeaderDtos.size());
logger.info("TOB销售发票业务流程编码{}", bdBusitypeEntity.getBusicode());
@ -1415,6 +1431,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
SaleOrderMessageDto saleOrderMessageDto = orderOutTobHeaderDto.getSaleOrderMessageDto();
//OFS售后订单
RerturnGoodsOrderSearchData ofsRertunOrder = orderOutTobHeaderDto.getOfsRertunOrder();
//OFS收发类别
BdRdclEntity bdRdclEntity = orderOutTobHeaderDto.getBdRdclEntity();
//红字销售发票表头
SalesInvoiceHeadDto salesInvoiceHeadDto = new SalesInvoiceHeadDto();

View File

@ -19,6 +19,8 @@ import com.hzya.frame.plugin.lets.resultvo.CalculateDateVo;
import com.hzya.frame.plugin.lets.u8cdto.*;
import com.hzya.frame.plugin.lets.util.*;
import com.hzya.frame.split.SplitListByCountUtil;
import com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDetailsDto;
import com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto;
import com.hzya.frame.ttxofs.dto.stock.StockinOrderSearchResponse;
import com.hzya.frame.ttxofs.service.OfsUnifiedService;
import com.hzya.frame.web.entity.JsonResultEntity;
@ -942,4 +944,44 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
tocofsReturngoodsDetailedEntity.setBusinessType("TOC_RETURN");//业务类型
}
}
/**
* 通过OFS销售出库单联查OFS销售订单
*
* @param headerDetailsDtoList OFS销售出库单
*/
private List<com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto> queryOfsOrder(List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDetailsDto> headerDetailsDtoList) throws Exception {
List<com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto> allHeaderDetailsDtoArrayList = new ArrayList<>();
try {
if (headerDetailsDtoList != null && headerDetailsDtoList.size() > 0) {
List<List<HeaderDetailsDto>> splitListByCount = SplitListByCountUtil.splitListByCount(headerDetailsDtoList, 100);
for (int i = 0; i < splitListByCount.size(); i++) {
List<HeaderDetailsDto> headerDetailsDtos = splitListByCount.get(i);
StringBuffer stringBuffer = new StringBuffer();
if (headerDetailsDtos != null && headerDetailsDtos.size() > 0) {
for (int j = 0; j < headerDetailsDtos.size(); j++) {
HeaderDetailsDto headerDetailsDto = headerDetailsDtos.get(j);
HeaderDto header = headerDetailsDto.getHeader();
// List<DetailsDto> details = headerDetailsDto.getDetails();
// stringBuffer.append("'");
stringBuffer.append(header.getRefOrderCode());
// stringBuffer.append("'");
stringBuffer.append(",");
}
}
String substring = stringBuffer.substring(0, stringBuffer.length());
List<com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto> headerDetailsDtoArrayList = new ArrayList<>();
QueryOfsSoSaleOutVo queryOfsSoSaleOutVo = new QueryOfsSoSaleOutVo();
queryOfsSoSaleOutVo.setCode(substring);
ofsStandardUtil.getOfsSaleOrder(queryOfsSoSaleOutVo, headerDetailsDtoArrayList, 1L);
allHeaderDetailsDtoArrayList.addAll(headerDetailsDtoArrayList);
}
}
} catch (Exception e) {
logger.error("queryOfsOrder方法抛出异常", e);
}
return allHeaderDetailsDtoArrayList;
}
}

View File

@ -105,6 +105,11 @@ public class OrderOutTobHeaderDto extends HeaderDetailsDto {
*/
private List<SoSaleorderBEntity> soSaleorderBEntityList;
/**
* 收发类别
*/
private BdRdclEntity bdRdclEntity;
/**
* 执行情况自定义项
*/

View File

@ -129,4 +129,9 @@ public class OrderToBHeaderDto extends StockinOrderSearchResponse.StockinOrder.S
* OFS售后订单
*/
private RerturnGoodsOrderSearchData ofsRertunOrder;
/**
* O收发类别
*/
private BdRdclEntity bdRdclEntity;
}

View File

@ -74,6 +74,9 @@ public class SonDetailsDto extends DetailsDto {
//存货税率
private BdTaxitemsEntity bdTaxitemsEntity;
//收发类别
private BdRdclEntity bdRdclEntity;
//对应的OFS销售订单
private com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto headerDetailsDto;
}

View File

@ -0,0 +1,37 @@
#######################本地环境#######################
logging:
#日志级别 指定目录级别
level:
root: info
encodings: UTF-8
file:
# 日志保存路径
path: D:\server\ztlog
spring:
datasource:
dynamic:
datasource:
master:
url: jdbc:mysql://192.168.14.252:3306/businesscenter?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF8&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowLoadLocalInfile=false&autoReconnect=true&failOverReadOnly=false&connectTimeout=3000000000&socketTimeout=3000000000&autoReconnectForPools=true
username: root
password: 62e4295b615a30dbf3b8ee96f41c820b
driver-class-name: com.mysql.jdbc.Driver # 3.2.0开始支持SPI可省略此配置
savefile:
# 文件保存路径
path: D:\server\ztfile
zt:
url: http://127.0.0.1:9999/kangarooDataCenterV3/entranceController/externalCallInterface
cbs8:
appId: 1P4AGrpz
appSecret: 2c2369ae5dc04382844bbe3a5abf39e1bea9cd3a
url: https://cbs8-openapi-reprd.csuat.cmburl.cn
# 测试用这个 这个是银行给的,和下面的公钥不是一对密钥
ya_private_key: 83BA7EC821D35F4CB31FF9A51C1EFA520FC52AF828C2337F88E91CF119B07F44
# 这个私钥到时候上传到cbs和下面到是同一对
#ya_private_key: e1eacfdee9b8d4184437d5a2071e17ce31befc3d93395f9f05709ed562e8dc46
ya_public_key: 044fa399d2223760f17b81b863cb482b009294c4516f8a605dea1475ec09e720eaa98468715e5ad509a592a0b426061551c5a3df236966c23253a7d894eac0dcde
cbs_public_key: 0469146F06BF3B01236E84632441E826
#电子回单下载临时存放位置
elec_path: /Users/xiangerlin/Downloads/
OA:
data_source_code: yc_oa

View File

@ -53,9 +53,9 @@ spring:
initial-size: 10 # 初始化时建立物理连接的个数。初始化发生在显示调用init方法或者第一次getConnection时
min-idle: 50 # 最小连接池数量
maxActive: 500 # 最大连接池数量
maxWait: 60000000 # 获取连接时最大等待时间单位毫秒。配置了maxWait之后缺省启用公平锁并发效率会有所下降如果需要可以通过配置
timeBetweenEvictionRunsMillis: 60000 # 关闭空闲连接的检测时间间隔.Destroy线程会检测连接的间隔时间如果连接空闲时间大于等于minEvictableIdleTimeMillis则关闭物理连接。
minEvictableIdleTimeMillis: 300000 # 连接的最小生存时间.连接保持空闲而不被驱逐的最小时间
maxWait: 600000000 # 获取连接时最大等待时间单位毫秒。配置了maxWait之后缺省启用公平锁并发效率会有所下降如果需要可以通过配置
timeBetweenEvictionRunsMillis: 600000 # 关闭空闲连接的检测时间间隔.Destroy线程会检测连接的间隔时间如果连接空闲时间大于等于minEvictableIdleTimeMillis则关闭物理连接。
minEvictableIdleTimeMillis: 3000000 # 连接的最小生存时间.连接保持空闲而不被驱逐的最小时间
validationQuery: SELECT 1 FROM DUAL # 验证数据库服务可用性的sql.用来检测连接是否有效的sql 因数据库方言而差, 例如 oracle 应该写成 SELECT 1 FROM DUAL
testWhileIdle: true # 申请连接时检测空闲时间,根据空闲时间再检测连接是否有效.建议配置为true不影响性能并且保证安全性。申请连接的时候检测如果空闲时间大于timeBetweenEvictionRun
testOnBorrow: false # 申请连接时直接检测连接是否有效.申请连接时执行validationQuery检测连接是否有效做了这个配置会降低性能。
@ -64,12 +64,13 @@ spring:
maxPoolPreparedStatementPerConnectionSize: 20 #设置PSCache值
connectionErrorRetryAttempts: 3 # 连接出错后再尝试连接三次
breakAfterAcquireFailure: true # 数据库服务宕机自动重连机制
timeBetweenConnectErrorMillis: 300000 # 连接出错后重试时间间隔
timeBetweenConnectErrorMillis: 3000000 # 连接出错后重试时间间隔
asyncInit: true # 异步初始化策略
remove-abandoned: true # 是否自动回收超时连接
remove-abandoned-timeout: 1800 # 超时时间(以秒数为单位)
transaction-query-timeout: 6000 # 事务超时时间
filters: stat,wall,log4j2
remove-abandoned-timeout: 18000 # 超时时间(以秒数为单位)
transaction-query-timeout: 60000 # 事务超时时间
filters: stat,log4j2
# filters: stat,wall,log4j2 去掉wall批次查询druid判断为sql注入所以不需要这个插件
useGlobalDataSourceStat: true #合并多个DruidDataSource的监控数据
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000 #通过connectProperties属性来打开mergeSql功能慢SQL记录
batch:

View File

@ -43,6 +43,8 @@ public class SoSaleOutPluginInitializerToBTest {
// e.printStackTrace();
// }
soSaleOutPluginInitializerToB.startImplementByTranTime("2024-08-28 15:28:06", "2024-08-28 15:28:08");
// soSaleOutPluginInitializerToB.startImplementByTranTime("2024-08-28 15:28:06", "2024-08-28 15:28:08");
soSaleOutPluginInitializerToB.startImplementByCode("LETS-SH2024080100010887");
}
}

View File

@ -0,0 +1,24 @@
package com.hzya.frame.util;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* @Authorliuyang
* @Packagecom.hzya.frame.util
* @ProjectkangarooDataCenterV3
* @nameAESUtilTest
* @Date2024/9/10 18:53
* @FilenameAESUtilTest
*/
public class AESUtilTest {
@Test
public void decrypt() {
// String s = "62e4295b615a30dbf3b8ee96f41c820b";
String s1 = "hzya@1314";
String decrypt = AESUtil.encipher(s1);
System.out.println(decrypt);
}
}

View File

@ -74,6 +74,9 @@ public class HeaderDto {
//出库类型
private String shipmentType;
//O单据名称
// private String subOrderType;
//OFS销售订单
private com.hzya.frame.ttxofs.dto.ofssalesordersearch.HeaderDetailsDto headerDetailsDto;
}

View File

@ -3,14 +3,16 @@
*/
package com.hzya.frame.ttxofs.dto.ofssalesordersearch;
import lombok.Data;
/**
* Auto-generated: 2024-07-30 11:32:10
*
* @author bejson.com (i@bejson.com)
* @website http://www.bejson.com/java2pojo/
*/
@Data
public class HeaderDto {
private String id;
private String clientCode;
private String companyCode;
@ -100,691 +102,6 @@ public class HeaderDto {
//会员id
private String memberId;
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getClientCode() {
return clientCode;
}
public void setClientCode(String clientCode) {
this.clientCode = clientCode;
}
public String getCompanyCode() {
return companyCode;
}
public void setCompanyCode(String companyCode) {
this.companyCode = companyCode;
}
public String getStoreCode() {
return storeCode;
}
public void setStoreCode(String storeCode) {
this.storeCode = storeCode;
}
public String getFacilityCode() {
return facilityCode;
}
public void setFacilityCode(String facilityCode) {
this.facilityCode = facilityCode;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getStringernalOrderType() {
return StringernalOrderType;
}
public void setStringernalOrderType(String stringernalOrderType) {
StringernalOrderType = stringernalOrderType;
}
public String getBizChannel() {
return bizChannel;
}
public void setBizChannel(String bizChannel) {
this.bizChannel = bizChannel;
}
public String getChannelCode() {
return channelCode;
}
public void setChannelCode(String channelCode) {
this.channelCode = channelCode;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getAuditWaveId() {
return auditWaveId;
}
public void setAuditWaveId(String auditWaveId) {
this.auditWaveId = auditWaveId;
}
public String getOrderTags() {
return orderTags;
}
public void setOrderTags(String orderTags) {
this.orderTags = orderTags;
}
public String getProcessType() {
return processType;
}
public void setProcessType(String processType) {
this.processType = processType;
}
public String getFlowStepCode() {
return flowStepCode;
}
public void setFlowStepCode(String flowStepCode) {
this.flowStepCode = flowStepCode;
}
public String getFlowStepName() {
return flowStepName;
}
public void setFlowStepName(String flowStepName) {
this.flowStepName = flowStepName;
}
public String getMasterCode() {
return masterCode;
}
public void setMasterCode(String masterCode) {
this.masterCode = masterCode;
}
public String getHasBom() {
return hasBom;
}
public void setHasBom(String hasBom) {
this.hasBom = hasBom;
}
public String getRefOrderId() {
return refOrderId;
}
public void setRefOrderId(String refOrderId) {
this.refOrderId = refOrderId;
}
public String getSourceOrderCode() {
return sourceOrderCode;
}
public void setSourceOrderCode(String sourceOrderCode) {
this.sourceOrderCode = sourceOrderCode;
}
public String getSourceOrderType() {
return sourceOrderType;
}
public void setSourceOrderType(String sourceOrderType) {
this.sourceOrderType = sourceOrderType;
}
public String getSourcePlatformCode() {
return sourcePlatformCode;
}
public void setSourcePlatformCode(String sourcePlatformCode) {
this.sourcePlatformCode = sourcePlatformCode;
}
public String getSourceUserAccount() {
return sourceUserAccount;
}
public void setSourceUserAccount(String sourceUserAccount) {
this.sourceUserAccount = sourceUserAccount;
}
public String getSourceUserName() {
return sourceUserName;
}
public void setSourceUserName(String sourceUserName) {
this.sourceUserName = sourceUserName;
}
public String getTradeCreatedAt() {
return tradeCreatedAt;
}
public void setTradeCreatedAt(String tradeCreatedAt) {
this.tradeCreatedAt = tradeCreatedAt;
}
public String getPrePaidAmount() {
return prePaidAmount;
}
public void setPrePaidAmount(String prePaidAmount) {
this.prePaidAmount = prePaidAmount;
}
public String getPaidAt() {
return paidAt;
}
public void setPaidAt(String paidAt) {
this.paidAt = paidAt;
}
public String getPaymentStatus() {
return paymentStatus;
}
public void setPaymentStatus(String paymentStatus) {
this.paymentStatus = paymentStatus;
}
public String getShipToAttentionTo() {
return shipToAttentionTo;
}
public void setShipToAttentionTo(String shipToAttentionTo) {
this.shipToAttentionTo = shipToAttentionTo;
}
public String getShipToAddress() {
return shipToAddress;
}
public void setShipToAddress(String shipToAddress) {
this.shipToAddress = shipToAddress;
}
public String getShipToCountry() {
return shipToCountry;
}
public void setShipToCountry(String shipToCountry) {
this.shipToCountry = shipToCountry;
}
public String getShipToCountryName() {
return shipToCountryName;
}
public void setShipToCountryName(String shipToCountryName) {
this.shipToCountryName = shipToCountryName;
}
public String getShipToState() {
return shipToState;
}
public void setShipToState(String shipToState) {
this.shipToState = shipToState;
}
public String getShipToStateName() {
return shipToStateName;
}
public void setShipToStateName(String shipToStateName) {
this.shipToStateName = shipToStateName;
}
public String getShipToCity() {
return shipToCity;
}
public void setShipToCity(String shipToCity) {
this.shipToCity = shipToCity;
}
public String getShipToCityName() {
return shipToCityName;
}
public void setShipToCityName(String shipToCityName) {
this.shipToCityName = shipToCityName;
}
public String getShipToDistrict() {
return shipToDistrict;
}
public void setShipToDistrict(String shipToDistrict) {
this.shipToDistrict = shipToDistrict;
}
public String getShipToDistrictName() {
return shipToDistrictName;
}
public void setShipToDistrictName(String shipToDistrictName) {
this.shipToDistrictName = shipToDistrictName;
}
public String getShipToMobile() {
return shipToMobile;
}
public void setShipToMobile(String shipToMobile) {
this.shipToMobile = shipToMobile;
}
public String getTotalLines() {
return totalLines;
}
public void setTotalLines(String totalLines) {
this.totalLines = totalLines;
}
public String getTotalQty() {
return totalQty;
}
public void setTotalQty(String totalQty) {
this.totalQty = totalQty;
}
public String getTotalWeight() {
return totalWeight;
}
public void setTotalWeight(String totalWeight) {
this.totalWeight = totalWeight;
}
public String getTotalVolume() {
return totalVolume;
}
public void setTotalVolume(String totalVolume) {
this.totalVolume = totalVolume;
}
public String getTotalVolumeWeight() {
return totalVolumeWeight;
}
public void setTotalVolumeWeight(String totalVolumeWeight) {
this.totalVolumeWeight = totalVolumeWeight;
}
public String getWeightUM() {
return weightUM;
}
public void setWeightUM(String weightUM) {
this.weightUM = weightUM;
}
public String getVolumeUM() {
return volumeUM;
}
public void setVolumeUM(String volumeUM) {
this.volumeUM = volumeUM;
}
public String getTotalAmount() {
return totalAmount;
}
public void setTotalAmount(String totalAmount) {
this.totalAmount = totalAmount;
}
public String getTotalPayAmount() {
return totalPayAmount;
}
public void setTotalPayAmount(String totalPayAmount) {
this.totalPayAmount = totalPayAmount;
}
public String getPostageAmount() {
return postageAmount;
}
public void setPostageAmount(String postageAmount) {
this.postageAmount = postageAmount;
}
public String getItemTotalAmount() {
return itemTotalAmount;
}
public void setItemTotalAmount(String itemTotalAmount) {
this.itemTotalAmount = itemTotalAmount;
}
public String getTotalDiscountAmount() {
return totalDiscountAmount;
}
public void setTotalDiscountAmount(String totalDiscountAmount) {
this.totalDiscountAmount = totalDiscountAmount;
}
public String getCurrencyCode() {
return currencyCode;
}
public void setCurrencyCode(String currencyCode) {
this.currencyCode = currencyCode;
}
public String getCodRequired() {
return codRequired;
}
public void setCodRequired(String codRequired) {
this.codRequired = codRequired;
}
public String getInvoiceRequired() {
return invoiceRequired;
}
public void setInvoiceRequired(String invoiceRequired) {
this.invoiceRequired = invoiceRequired;
}
public String getCarrierCode() {
return carrierCode;
}
public void setCarrierCode(String carrierCode) {
this.carrierCode = carrierCode;
}
public String getTempCarrierCode() {
return tempCarrierCode;
}
public void setTempCarrierCode(String tempCarrierCode) {
this.tempCarrierCode = tempCarrierCode;
}
public String getHasNote() {
return hasNote;
}
public void setHasNote(String hasNote) {
this.hasNote = hasNote;
}
public String getSplit() {
return split;
}
public void setSplit(String split) {
this.split = split;
}
public String getMasterOrderId() {
return masterOrderId;
}
public void setMasterOrderId(String masterOrderId) {
this.masterOrderId = masterOrderId;
}
public String getMasterOrderCode() {
return masterOrderCode;
}
public void setMasterOrderCode(String masterOrderCode) {
this.masterOrderCode = masterOrderCode;
}
public String getPayMethod() {
return payMethod;
}
public void setPayMethod(String payMethod) {
this.payMethod = payMethod;
}
public String getTax() {
return tax;
}
public void setTax(String tax) {
this.tax = tax;
}
public String getTaxPaid() {
return taxPaid;
}
public void setTaxPaid(String taxPaid) {
this.taxPaid = taxPaid;
}
public String getCodAmount() {
return codAmount;
}
public void setCodAmount(String codAmount) {
this.codAmount = codAmount;
}
public String getVerificationStatus() {
return verificationStatus;
}
public void setVerificationStatus(String verificationStatus) {
this.verificationStatus = verificationStatus;
}
public String getPrimaryWaybillCode() {
return primaryWaybillCode;
}
public void setPrimaryWaybillCode(String primaryWaybillCode) {
this.primaryWaybillCode = primaryWaybillCode;
}
public String getMemberCode() {
return memberCode;
}
public void setMemberCode(String memberCode) {
this.memberCode = memberCode;
}
public String getAuditBy() {
return auditBy;
}
public void setAuditBy(String auditBy) {
this.auditBy = auditBy;
}
public String getAuditAt() {
return auditAt;
}
public void setAuditAt(String auditAt) {
this.auditAt = auditAt;
}
public String getCreated() {
return created;
}
public void setCreated(String created) {
this.created = created;
}
public String getCreatedBy() {
return createdBy;
}
public void setCreatedBy(String createdBy) {
this.createdBy = createdBy;
}
public String getLastUpStringd() {
return lastUpStringd;
}
public void setLastUpStringd(String lastUpStringd) {
this.lastUpStringd = lastUpStringd;
}
public String getLastUpStringdBy() {
return lastUpStringdBy;
}
public void setLastUpStringdBy(String lastUpStringdBy) {
this.lastUpStringdBy = lastUpStringdBy;
}
public String getPromotion() {
return promotion;
}
public void setPromotion(String promotion) {
this.promotion = promotion;
}
public String getSourceOrderId() {
return sourceOrderId;
}
public void setSourceOrderId(String sourceOrderId) {
this.sourceOrderId = sourceOrderId;
}
public String getShipAt() {
return shipAt;
}
public void setShipAt(String shipAt) {
this.shipAt = shipAt;
}
public String getIsVirtual() {
return isVirtual;
}
public void setIsVirtual(String isVirtual) {
this.isVirtual = isVirtual;
}
public String getIsDeliverySync() {
return isDeliverySync;
}
public void setIsDeliverySync(String isDeliverySync) {
this.isDeliverySync = isDeliverySync;
}
public String getWriteOffStatus() {
return writeOffStatus;
}
public void setWriteOffStatus(String writeOffStatus) {
this.writeOffStatus = writeOffStatus;
}
public String getIsMappingArea() {
return isMappingArea;
}
public void setIsMappingArea(String isMappingArea) {
this.isMappingArea = isMappingArea;
}
public String getIsMappingSku() {
return isMappingSku;
}
public void setIsMappingSku(String isMappingSku) {
this.isMappingSku = isMappingSku;
}
public String getIsGift() {
return isGift;
}
public void setIsGift(String isGift) {
this.isGift = isGift;
}
public String getPreAudit() {
return preAudit;
}
public void setPreAudit(String preAudit) {
this.preAudit = preAudit;
}
public String getShipmentCode() {
return shipmentCode;
}
public void setShipmentCode(String shipmentCode) {
this.shipmentCode = shipmentCode;
}
public String getIsFinanical() {
return isFinanical;
}
public void setIsFinanical(String isFinanical) {
this.isFinanical = isFinanical;
}
public String getFinanicalStatus() {
return finanicalStatus;
}
public void setFinanicalStatus(String finanicalStatus) {
this.finanicalStatus = finanicalStatus;
}
//O单据名称
private String subOrderType;
}