refactor(sales): 重构业务日期生成逻辑
- 修改 createGenerateBusinessDateTran 方法,增加 SonDetailsDto 参数 - 从明细行获取交易成功时间,而非头部 - 更新错误日志,增加明细行主键信息 - 在 implementTran 方法中调用更新后的 createGenerateBusinessDateTran
This commit is contained in:
parent
f5ea373be2
commit
ad24a5e99e
|
@ -1353,28 +1353,32 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
||||||
*
|
*
|
||||||
* @author liuyang
|
* @author liuyang
|
||||||
*/
|
*/
|
||||||
private String createGenerateBusinessDateTran(com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto header) {
|
private String createGenerateBusinessDateTran(com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto header, SonDetailsDto sonDetailsDto) {
|
||||||
|
//O出库单单号
|
||||||
String code = null;
|
String code = null;
|
||||||
if (header != null && header.getCode() != null) {
|
if (header != null && header.getCode() != null) {
|
||||||
code = header.getCode();
|
code = header.getCode();
|
||||||
}
|
}
|
||||||
//测试
|
//O出库单明细行主键
|
||||||
// header.setTradeSuccessAt("2024-10-24 14:46:28");
|
String detailedId = null;
|
||||||
if (header != null && header.getTradeSuccessAt() != null) {
|
if (sonDetailsDto != null && sonDetailsDto.getId() != null) {
|
||||||
|
detailedId = sonDetailsDto.getId();
|
||||||
|
}
|
||||||
|
if (sonDetailsDto != null && sonDetailsDto.getTradeSuccessAt() != null) {
|
||||||
//TOC以出库日期作为业务日期
|
//TOC以出库日期作为业务日期
|
||||||
String tradeSuccessAt = header.getTradeSuccessAt();
|
String tradeSuccessAt = sonDetailsDto.getTradeSuccessAt();
|
||||||
String businessFormat = null;
|
String businessFormat = null;
|
||||||
try {
|
try {
|
||||||
Date dbill = DateUtil.parse(tradeSuccessAt);
|
Date dbill = DateUtil.parse(tradeSuccessAt);
|
||||||
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
|
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("业务日期生成失败tradeSuccessAt(O交易成功时间)解析异常:{} O销售出库单编码:{}", e.getMessage(), code);
|
logger.error("业务日期生成失败tradeSuccessAt(O交易成功时间)解析异常:{} O销售出库单编码:{} 明细主键:{}", e.getMessage(), code, detailedId);
|
||||||
Assert.state(false, "业务日期生成失败tradeSuccessAt(O交易成功时间)解析异常:{} O销售出库单编码:{}", e.getMessage(), code);
|
Assert.state(false, "业务日期生成失败tradeSuccessAt(O交易成功时间)解析异常:{} O销售出库单编码:{} 明细主键:{}", e.getMessage(), code, detailedId);
|
||||||
}
|
}
|
||||||
return businessFormat;
|
return businessFormat;
|
||||||
} else {
|
} else {
|
||||||
logger.error("业务日期生成失败tradeSuccessAt(O交易成功时间)不能为空! O销售出库单编码:{}", code);
|
logger.error("业务日期生成失败tradeSuccessAt(O交易成功时间,取明细行)不能为空! O销售出库单编码:{} 明细主键:{}", code, detailedId);
|
||||||
Assert.state(false, "业务日期生成失败tradeSuccessAt(O交易成功时间)不能为空! O销售出库单编码:{}", code);
|
Assert.state(false, "业务日期生成失败tradeSuccessAt(O交易成功时间,取明细行)不能为空! O销售出库单编码:{} 明细主键:{}", code, detailedId);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2137,6 +2141,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
||||||
* 库存同步,代码同步逻辑
|
* 库存同步,代码同步逻辑
|
||||||
*
|
*
|
||||||
* @param headerDetailsDtos 查询得到的O出库单对象
|
* @param headerDetailsDtos 查询得到的O出库单对象
|
||||||
|
* @param pushScenarioType 阶段纬度标识
|
||||||
* @author liuyang
|
* @author liuyang
|
||||||
*/
|
*/
|
||||||
private void implementTran(List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDetailsDto> headerDetailsDtos, String pushScenarioType) throws Exception {
|
private void implementTran(List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDetailsDto> headerDetailsDtos, String pushScenarioType) throws Exception {
|
||||||
|
@ -2215,7 +2220,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
||||||
// checkArchives(oldValue.get(0));
|
// checkArchives(oldValue.get(0));
|
||||||
// checkAllFail(oldValue, newState2, "1");
|
// checkAllFail(oldValue, newState2, "1");
|
||||||
//取交易成功时间,生成业务日期
|
//取交易成功时间,生成业务日期
|
||||||
String generateBusinessDate = createGenerateBusinessDateTran(header);
|
String generateBusinessDate = createGenerateBusinessDateTran(header, oldValue.get(0));
|
||||||
|
|
||||||
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
|
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
|
||||||
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
|
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
|
||||||
|
@ -2504,7 +2509,7 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
||||||
//验证数据完整性
|
//验证数据完整性
|
||||||
// checkAllFail(oldValue, newState3, "2");
|
// checkAllFail(oldValue, newState3, "2");
|
||||||
//取交易成功时间,生成业务日期
|
//取交易成功时间,生成业务日期
|
||||||
String generateBusinessDate = createGenerateBusinessDateTran(header);
|
String generateBusinessDate = createGenerateBusinessDateTran(header, oldValue.get(0));
|
||||||
|
|
||||||
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
|
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
|
||||||
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
|
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
|
||||||
|
|
Loading…
Reference in New Issue