提交日志业务流程优化

This commit is contained in:
liuy 2024-09-03 17:07:17 +08:00
parent 9c110e5b8c
commit d0a0a10568
4 changed files with 388 additions and 212 deletions

View File

@ -466,12 +466,16 @@ public class ConsignmachiningIn extends PluginBaseEntity {
List<ConsignmachiningInSonDto> consignmachiningInSonDtoArrayList = new ArrayList<>();
if (returnGoodHeaderDetailsDataDtoList != null && returnGoodHeaderDetailsDataDtoList.size() > 0) {
try {
for (int i = 0; i < returnGoodHeaderDetailsDataDtoList.size(); i++) {
StockinOrderSearchResponse.StockinOrder stockinOrder = returnGoodHeaderDetailsDataDtoList.get(i);
StockinOrderSearchResponse.StockinOrder.StockinH header = stockinOrder.getHeader();
List<StockinOrderSearchResponse.StockinOrder.StockinB> details = stockinOrder.getDetails();
String generateBusinessDate = null;
try {
//生成业务日期
generateBusinessDate = createGenerateBusinessDateV2(header);
//2024年8月25日 09:54:31 查询OFS采购订单
OfsPoOrderData ofsPoOrderData = ofsStandardUtil.queryOfsPoOrder(header.getRefOrderCode());
Assert.notNull(ofsPoOrderData, "无法查询到委外订单(OFS采购入库单->OSF采购订单->OFS采购订单主键->U8C委外订单自定义项20)");
@ -605,11 +609,26 @@ public class ConsignmachiningIn extends PluginBaseEntity {
BeanUtil.copyPropertiesV2(header, consignmachiningInSonDto);
consignmachiningInSonDtoArrayList.add(consignmachiningInSonDto);
}
//成功
//成功交给下一个业务流程处理环节
} catch (Exception e) {
logger.error("委外入库单OFS档案转换错误", e);
logger.error("采购入库单OFS档案转换错误", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
//失败
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
integrationTaskLivingDetailsEntity.setNewState(ProfilesActiveConstant.LOG_STATUS_N);
integrationTaskLivingDetailsEntity.setRootAppNewData(JSON.toJSONString(stockinOrder));//原始数据json
integrationTaskLivingDetailsEntity.setNewTransmitInfo(JSON.toJSONString(message));//返回结果
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
integrationTaskLivingDetailsEntity.setBusinessDate(generateBusinessDate);
integrationTaskLivingDetailsEntity.setRootAppPk(header.getId());
integrationTaskLivingDetailsEntity.setRootAppBill(header.getCode());
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
}
}
} else {
logger.info("queryBasicArchives对应returnGoodHeaderDetailsDataDtoList.size为0");
@ -684,10 +703,33 @@ public class ConsignmachiningIn extends PluginBaseEntity {
* @author liuyang
*/
private String createGenerateBusinessDate(ConsignmachiningInSonDto consignmachiningInSonDto) {
//TODO 测试
consignmachiningInSonDto.setShipAt("2024-08-19");
if (consignmachiningInSonDto != null && consignmachiningInSonDto.getShipAt() != null) {
String shipAt = consignmachiningInSonDto.getShipAt();
if (consignmachiningInSonDto != null && consignmachiningInSonDto.getCheckInFrom() != null) {
String checkInFrom = consignmachiningInSonDto.getCheckInFrom();
String businessFormat = null;
try {
Date dbill = DateUtil.parse(checkInFrom);
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
} catch (Exception e) {
logger.error("业务日期生成失败", e);
}
return businessFormat;
} else {
logger.error("生成采购订单入库日期失败或者checkInFrom为空! json{}", JSON.toJSON(consignmachiningInSonDto));
Assert.state(false, "生成采购订单入库日期失败或者checkInFrom为空! json{}", JSON.toJSON(consignmachiningInSonDto));
return null;
}
}
/**
* 2024年8月20日 15:46:10
* 生成业务日期以发货时间作为业务日期
*
* @author liuyang
*/
private String createGenerateBusinessDateV2(StockinOrderSearchResponse.StockinOrder.StockinH header) {
if (header != null) {
String shipAt = header.getShipAt();
String businessFormat = null;
try {
Date dbill = DateUtil.parse(shipAt);
@ -697,8 +739,8 @@ public class ConsignmachiningIn extends PluginBaseEntity {
}
return businessFormat;
} else {
logger.error("生成采购订单入库日期失败或者shipAt为空! json{}", JSON.toJSON(consignmachiningInSonDto));
Assert.state(false, "生成采购订单入库日期失败或者shipAt为空! json{}", JSON.toJSON(consignmachiningInSonDto));
logger.error("生成业务日期失败或者shipAt为空! json{}", JSON.toJSON(header));
Assert.state(false, "生成业务日期失败或者shipAt为空! json{}", JSON.toJSON(header));
return null;
}
}

View File

@ -454,6 +454,10 @@ public class ConsignmachiningInReturn extends PluginBaseEntity {
HeaderDto header = headerDetailsDto.getHeader();
List<DetailsDto> details = headerDetailsDto.getDetails();
String generateBusinessDate = null;
try {
generateBusinessDate = createGenerateBusinessDatev2(header);
//2024年8月27日 17:14:47 查询OFS采退订单
PurchaseReturnOrder purchaseReturnOrder = queryPurchaseReturnOrder(header.getRefOrderCode());
Assert.notNull(purchaseReturnOrder, "无法查询到采退订单 refOrderCode:{}", header.getRefOrderCode());
@ -532,6 +536,25 @@ public class ConsignmachiningInReturn extends PluginBaseEntity {
BeanUtil.copyPropertiesV2(header, returnOrderHeaderDto);
consignmachiningInSonDtoArrayList.add(returnOrderHeaderDto);
} catch (Exception e) {
logger.error("采购入库单OFS档案转换错误", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
//失败
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
integrationTaskLivingDetailsEntity.setNewState(ProfilesActiveConstant.LOG_STATUS_N);
integrationTaskLivingDetailsEntity.setRootAppNewData(JSON.toJSONString(headerDetailsDto));//原始数据json
integrationTaskLivingDetailsEntity.setNewTransmitInfo(JSON.toJSONString(message));//返回结果
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
integrationTaskLivingDetailsEntity.setBusinessDate(generateBusinessDate);
integrationTaskLivingDetailsEntity.setRootAppPk(header.getId());
integrationTaskLivingDetailsEntity.setRootAppBill(header.getCode());
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
}
}
//成功
} catch (Exception e) {
@ -784,6 +807,30 @@ public class ConsignmachiningInReturn extends PluginBaseEntity {
}
}
/**
* 2024年8月20日 15:46:10
* 生成业务日期以发货时间作为业务日期
*
* @author liuyang
*/
private String createGenerateBusinessDatev2(HeaderDto header) throws Exception {
if (header != null) {
String shipAt = header.getShipAt();
String businessFormat = null;
try {
Date dbill = DateUtil.parse(shipAt);
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
} catch (Exception e) {
logger.error("业务日期生成失败!", e);
}
return businessFormat;
} else {
logger.error("生成采退出库日期失败或者shipAt为空! json{}", JSON.toJSON(header));
Assert.state(false, "生成采退出库日期失败或者shipAt为空! json{}", JSON.toJSON(header));
return null;
}
}
/**
* 2024年8月7日 14:58:34
* 查询税目档案

View File

@ -503,12 +503,15 @@ public class ProxyPurchaseReturn extends PluginBaseEntity {
List<PoOrderRerturnSonDto> poOrderSonDtoArrayList = new ArrayList<>();
if (returnGoodHeaderDetailsDataDtoList != null && returnGoodHeaderDetailsDataDtoList.size() > 0) {
try {
for (int i = 0; i < returnGoodHeaderDetailsDataDtoList.size(); i++) {
HeaderDetailsDto headerDetailsDto = returnGoodHeaderDetailsDataDtoList.get(i);
HeaderDto header = headerDetailsDto.getHeader();
List<DetailsDto> details = headerDetailsDto.getDetails();
String generateBusinessDate = null;
try {
generateBusinessDate = createGenerateBusinessDate(header);
//2024年8月22日 15:30:09 如果purchaseReturnOrder为null那么在queryPurchaseReturnOrder会抛出异常此处不需要验证purchaseReturnOrder是否为null
PurchaseReturnOrder purchaseReturnOrder = queryPurchaseReturnOrder(header.getRefOrderCode());
PurchaseReturnOrderHeader header1 = purchaseReturnOrder.getHeader();
@ -629,11 +632,25 @@ public class ProxyPurchaseReturn extends PluginBaseEntity {
BeanUtil.copyPropertiesV2(header, poOrderRerturnSonDto);
poOrderSonDtoArrayList.add(poOrderRerturnSonDto);
}
//成功
} catch (Exception e) {
logger.error("代理品牌采购入库单档案转换失败", e);
logger.error("档案转换失败", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
//失败
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
integrationTaskLivingDetailsEntity.setNewState(ProfilesActiveConstant.LOG_STATUS_N);
integrationTaskLivingDetailsEntity.setRootAppNewData(JSON.toJSONString(headerDetailsDto));//原始数据json
integrationTaskLivingDetailsEntity.setNewTransmitInfo(JSON.toJSONString(message));//返回结果
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
integrationTaskLivingDetailsEntity.setBusinessDate(generateBusinessDate);
integrationTaskLivingDetailsEntity.setRootAppPk(header.getId());
integrationTaskLivingDetailsEntity.setRootAppBill(header.getCode());
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
}
}
} else {
logger.info("queryBasicArchives对应returnGoodHeaderDetailsDataDtoList.size为0");
@ -662,8 +679,6 @@ public class ProxyPurchaseReturn extends PluginBaseEntity {
* @author liuyang
*/
private String createGenerateBusinessDate(PoOrderRerturnSonDto poOrderSonDto) {
//TODO 测试
poOrderSonDto.setShipAt("2024-08-19");
if (poOrderSonDto != null && poOrderSonDto.getShipAt() != null) {
String shipAt = poOrderSonDto.getShipAt();
String businessFormat = null;
@ -681,6 +696,30 @@ public class ProxyPurchaseReturn extends PluginBaseEntity {
}
}
/**
* 2024年8月20日 15:46:10
* 生成业务日期以发货时间作为业务日期
*
* @author liuyang
*/
private String createGenerateBusinessDate(HeaderDto header) {
if (header != null) {
String shipAt = header.getShipAt();
String businessFormat = null;
try {
Date dbill = DateUtil.parse(shipAt);
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
} catch (Exception e) {
logger.error("业务日期生成失败", e);
}
return businessFormat;
} else {
logger.error("生成采退出库日期失败或者shipAt为空! json{}", JSON.toJSON(header));
Assert.state(false, "生成采退出库日期失败或者shipAt为空! json{}", JSON.toJSON(header));
return null;
}
}
/**
* 查询存货管理档案
*

View File

@ -499,6 +499,10 @@ public class ProxyPurchaseWarehous extends PluginBaseEntity {
StockinOrderSearchResponse.StockinOrder.StockinH header = stockinOrder.getHeader();
List<StockinOrderSearchResponse.StockinOrder.StockinB> details = stockinOrder.getDetails();
String generateBusinessDate = null;
try {
generateBusinessDate = createGenerateBusinessDate(stockinOrder);
//查询OFS采购订单
OfsPoOrderData ofsPoOrderData = ofsStandardUtil.queryOfsPoOrder(header.getRefOrderCode());
Assert.notNull(ofsPoOrderData, "根据O表头编码{}无法匹配到OFS采购订单", header.getRefOrderCode());
@ -618,6 +622,25 @@ public class ProxyPurchaseWarehous extends PluginBaseEntity {
BeanUtil.copyPropertiesV2(header, poOrderSonDto);
poOrderSonDtoArrayList.add(poOrderSonDto);
} catch (Exception e) {
logger.error("档案转换失败", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
//失败
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
integrationTaskLivingDetailsEntity.setNewState(ProfilesActiveConstant.LOG_STATUS_N);
integrationTaskLivingDetailsEntity.setRootAppNewData(JSON.toJSONString(stockinOrder));//原始数据json
integrationTaskLivingDetailsEntity.setNewTransmitInfo(JSON.toJSONString(message));//返回结果
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
integrationTaskLivingDetailsEntity.setBusinessDate(generateBusinessDate);
integrationTaskLivingDetailsEntity.setRootAppPk(header.getId());
integrationTaskLivingDetailsEntity.setRootAppBill(header.getCode());
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
}
}
//成功
} catch (Exception e) {
@ -668,6 +691,31 @@ public class ProxyPurchaseWarehous extends PluginBaseEntity {
}
}
/**
* 2024年8月20日 15:46:10
* 生成业务日期以发货时间作为业务日期
*
* @author liuyang
*/
private String createGenerateBusinessDate(StockinOrderSearchResponse.StockinOrder stockinOrder) {
if (stockinOrder != null) {
StockinOrderSearchResponse.StockinOrder.StockinH header = stockinOrder.getHeader();
String checkInFrom = header.getCheckInFrom();
String businessFormat = null;
try {
Date dbill = DateUtil.parse(checkInFrom);
businessFormat = DateUtil.format(dbill, "yyyy-MM-dd");
} catch (Exception e) {
logger.error("业务日期生成失败", e);
}
return businessFormat;
} else {
logger.error("生成采购订单入库日期失败或者shipAt为空! json{}", JSON.toJSON(stockinOrder));
Assert.state(false, "生成采购订单入库日期失败或者shipAt为空! json{}", JSON.toJSON(stockinOrder));
return null;
}
}
/**
* 查询存货管理档案
*