refactor(sales): 重构售后订单处理逻辑

- 移除 TOB 和 TOC 售后订单中不必要的退款完成时间判断和设置
- 更新业务日期设置逻辑,使用交易成功时间作为业务日期
- 删除未使用的常量和方法
- 优化代码结构,提高可读性和维护性
This commit is contained in:
liuy 2025-08-08 10:12:44 +08:00
parent 41e5fbbf3a
commit 581f95c4e6
4 changed files with 59 additions and 40 deletions

View File

@ -152,6 +152,18 @@ public class OverallConstant {
prodOverAll.put("u8c自定义项档案-单据红字标识-N主键", "0001A1100000000027LQ");
prodOverAll.put("u8c自定义项档案-单据红字标识-N名称", "N");
prodOverAll.put("售后类型标识-TOC售后-主键", "0001A110000000ADSWMB");
prodOverAll.put("售后类型标识-TOC售后-名称", "TOC售后");
prodOverAll.put("售后类型标识-TOC无源件-主键", "0001A110000000ADSWWJ");
prodOverAll.put("售后类型标识-TOC无源件-名称", "TOC无源件");
prodOverAll.put("售后类型标识-TOB售后-主键", "0001A110000000AFFT7M");
prodOverAll.put("售后类型标识-TOB售后-名称", "TOB售后");
prodOverAll.put("售后类型标识-TOB无源件-主键", "0001A110000000AFFT7R");
prodOverAll.put("售后类型标识-TOB无源件-名称", "TOB无源件");
//内网中台地址
prodOverAll.put("u8c_url", "http://127.0.0.1:8081/kangarooDataCenterV3/entranceController/externalCallInterface");
//外网中台地址

View File

@ -1320,9 +1320,12 @@ public class PassiveWarehouseReceiptToB extends PluginBaseEntity {
Assert.notNull(ofsRertunOrder, "无法查询到OFS售后订单 单据编码:{}", header.getReturnOrderCode());
//2025-03-17 16:41:14 过滤掉不存在交易成功时间的无源入库单
// ofsRertunOrder.getHeader().setRefundedAt("2025-03-15 11:57:06");
if (ofsRertunOrder.getHeader() == null || ofsRertunOrder.getHeader().getRefundedAt() == null || "".equals(ofsRertunOrder.getHeader().getRefundedAt().trim())) {
Assert.state(false, "当前无源入库单对应的售后订单没有退款完成时间!");
}
// if (ofsRertunOrder.getHeader() == null || ofsRertunOrder.getHeader().getRefundedAt() == null || "".equals(ofsRertunOrder.getHeader().getRefundedAt().trim())) {
// Assert.state(false, "当前无源入库单对应的售后订单没有退款完成时间!");
// }
// if (ofsRertunOrder.getHeader() == null) {
// Assert.state(false, "当前无源入库单对应的售后订单没有退款完成时间!");
// }
//查询OFS销售订单
SaleOrderMessageDto saleOrderMessageDto = null;
@ -2432,7 +2435,7 @@ public class PassiveWarehouseReceiptToB extends PluginBaseEntity {
PassiveStorageResponse.Details details = sonDetailsDtoList.get(i);
OfsPassiveorderDetailEntity ofsPassiveorderDetailEntity = new OfsPassiveorderDetailEntity();
ofsPassiveorderDetailEntity.setId(details.getId());
ofsPassiveorderDetailEntity.setTransactionDate(details.getRefundedAt());
// ofsPassiveorderDetailEntity.setTransactionDate(details.getRefundedAt());
ofsPassiveorderDetailEntity.setNewpushdate(getNewDateStr());
ofsPassiveorderDetailEntity.setNewtransmitinfo(finalNewTransmitInfo);
ofsPassiveorderDetailEntity.setNewstate(newstate);
@ -2501,7 +2504,7 @@ public class PassiveWarehouseReceiptToB extends PluginBaseEntity {
OfsPassiveorderDetailEntity ofsPassiveorderDetailEntity = new OfsPassiveorderDetailEntity();
ofsPassiveorderDetailEntity.setId(details.getId());
ofsPassiveorderDetailEntity.setTransactionDate(details.getRefundedAt());
// ofsPassiveorderDetailEntity.setTransactionDate(details.getRefundedAt());
ofsPassiveorderDetailEntity.setNewpushdate2(getNewDateStr());
ofsPassiveorderDetailEntity.setNewtransmitinfo2(finalNewTransmitInfo);
ofsPassiveorderDetailEntity.setNewstate2(newstate);
@ -2575,7 +2578,7 @@ public class PassiveWarehouseReceiptToB extends PluginBaseEntity {
OfsPassiveorderDetailEntity ofsPassiveorderDetailEntity = new OfsPassiveorderDetailEntity();
ofsPassiveorderDetailEntity.setId(details1.getId());
ofsPassiveorderDetailEntity.setTransactionDate(details1.getRefundedAt());
// ofsPassiveorderDetailEntity.setTransactionDate(details1.getRefundedAt());
if (sceneType.equals("stock")) {
ofsPassiveorderDetailEntity.setNewpushdate(newPushDate);
ofsPassiveorderDetailEntity.setNewtransmitinfo(newTransmitInfo);
@ -2863,28 +2866,28 @@ public class PassiveWarehouseReceiptToB extends PluginBaseEntity {
* @param passiveStorageResponseDataList O无源件交易成功状态
* @throws Exception 跑出可能的异常
*/
private List<PassiveStorageResponse.Data> filterAfterSalesOrder(List<PassiveStorageResponse.Data> passiveStorageResponseDataList) throws Exception {
List<PassiveStorageResponse.Data> filteredList = null;
if (passiveStorageResponseDataList != null && passiveStorageResponseDataList.size() > 0) {
filteredList = passiveStorageResponseDataList.stream().filter(stockinOrder -> {
PassiveStorageResponse.Header header = stockinOrder.getHeader();
if (header == null) {
return false;
}
RerturnGoodsOrderSearchData returnData = header.getRerturnGoodsOrderSearchData();
if (returnData == null) {
return false;
}
RerturnGoodsOrderSearchHeader header1 = returnData.getHeader();
if (header1 == null) {
return false;
}
if (header1.getRefundedAt() == null) {
return false;
}
return true;
}).collect(Collectors.toList());
}
return filteredList;
}
// private List<PassiveStorageResponse.Data> filterAfterSalesOrder(List<PassiveStorageResponse.Data> passiveStorageResponseDataList) throws Exception {
// List<PassiveStorageResponse.Data> filteredList = null;
// if (passiveStorageResponseDataList != null && passiveStorageResponseDataList.size() > 0) {
// filteredList = passiveStorageResponseDataList.stream().filter(stockinOrder -> {
// PassiveStorageResponse.Header header = stockinOrder.getHeader();
// if (header == null) {
// return false;
// }
// RerturnGoodsOrderSearchData returnData = header.getRerturnGoodsOrderSearchData();
// if (returnData == null) {
// return false;
// }
// RerturnGoodsOrderSearchHeader header1 = returnData.getHeader();
// if (header1 == null) {
// return false;
// }
// if (header1.getRefundedAt() == null) {
// return false;
// }
// return true;
// }).collect(Collectors.toList());
// }
// return filteredList;
// }
}

View File

@ -1816,9 +1816,9 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
tocofsReturngoodsDetailedEntity.setBusinessdate(returnGoodSearchHeaderDto.getClosedAt());
}
//业务日期-退款完成时间
if (returnGoodSearchHeaderDto.getRefundedAt() != null) {
tocofsReturngoodsDetailedEntity.setRefundedat(returnGoodSearchHeaderDto.getRefundedAt());
}
// if (returnGoodSearchHeaderDto.getRefundedAt() != null) {
// tocofsReturngoodsDetailedEntity.setRefundedat(returnGoodSearchHeaderDto.getRefundedAt());
// }
//业务类型
tocofsReturngoodsDetailedEntity.setBusinesstype("TOB_RETURN");
}
@ -2051,6 +2051,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
/**
* 2024年8月28日 17:17:33
* 生成业务日期以交易成功时间作为业务日期
* 2025年8月7日18:02:07
* TOB退款完成生成发票业务已取消这个方法实际不会被触发
*
* @author liuyang
*/

View File

@ -396,14 +396,14 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
} else if (ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType)) {
TocofsReturngoodsDetailedEntity tocofsReturngoodsDetailedEntity = new TocofsReturngoodsDetailedEntity();
if (startTime.length() == 19) {
tocofsReturngoodsDetailedEntity.setRefundedAtStart(startTime);
tocofsReturngoodsDetailedEntity.setBusinessDateStart(startTime);
} else {
tocofsReturngoodsDetailedEntity.setRefundedAtStart(startTime + " 00:00:00");
tocofsReturngoodsDetailedEntity.setBusinessDateStart(startTime + " 00:00:00");
}
if (endTime.length() == 19) {
tocofsReturngoodsDetailedEntity.setRefundedAtEnd(endTime);
tocofsReturngoodsDetailedEntity.setBusinessDateEnd(endTime);
} else {
tocofsReturngoodsDetailedEntity.setRefundedAtEnd(endTime + " 23:59:59");
tocofsReturngoodsDetailedEntity.setBusinessDateEnd(endTime + " 23:59:59");
}
tocofsReturngoodsDetailedEntity.setBusinesstype("TOC_RETURN");
returnGoodHeaderDetailsDataDtoArrayList = queryTocofsReturngoodsDetailed(tocofsReturngoodsDetailedEntity);
@ -2234,9 +2234,11 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
tocofsReturngoodsDetailedEntity.setBusinessdate(returnGoodSearchHeaderDto.getClosedAt());
}
//业务日期-退款完成时间
if (returnGoodSearchHeaderDto.getRefundedAt() != null) {
tocofsReturngoodsDetailedEntity.setRefundedat(returnGoodSearchHeaderDto.getRefundedAt());
}
//2025年8月7日17:55:30
//这个时间后续不需要了
// if (returnGoodSearchHeaderDto.getRefundedAt() != null) {
// tocofsReturngoodsDetailedEntity.setRefundedat(returnGoodSearchHeaderDto.getRefundedAt());
// }
//业务类型
tocofsReturngoodsDetailedEntity.setBusinesstype("TOC_RETURN");
}