提交 525e391b authored 作者: 刘海泉's avatar 刘海泉

commit

上级 afa9b909
...@@ -5,12 +5,14 @@ import com.clx.open.sdk.callback.OpenCallBackClient; ...@@ -5,12 +5,14 @@ import com.clx.open.sdk.callback.OpenCallBackClient;
import com.clx.open.sdk.callback.message.OrderChildMessage; import com.clx.open.sdk.callback.message.OrderChildMessage;
import com.clx.open.sdk.enums.ResultStatusEnum; import com.clx.open.sdk.enums.ResultStatusEnum;
import com.clx.order.enums.ResultEnum; import com.clx.order.enums.ResultEnum;
import com.clx.order.enums.SyncPlatformEnum;
import com.clx.order.feign.OrderFeign; import com.clx.order.feign.OrderFeign;
import com.clx.order.vo.feign.FeignOrderVO; import com.clx.order.vo.feign.FeignOrderVO;
import com.clx.performance.config.ThirdAppConfig; import com.clx.performance.config.ThirdAppConfig;
import com.clx.performance.constant.RedisConstants; import com.clx.performance.constant.RedisConstants;
import com.clx.performance.constant.RedissonConstants; import com.clx.performance.constant.RedissonConstants;
import com.clx.performance.dao.OrderChildDao; import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.service.LastTruckService; import com.clx.performance.service.LastTruckService;
import com.clx.performance.struct.OrderChildStruct; import com.clx.performance.struct.OrderChildStruct;
...@@ -57,15 +59,32 @@ public class LastTruckServiceImpl implements LastTruckService { ...@@ -57,15 +59,32 @@ public class LastTruckServiceImpl implements LastTruckService {
public Result<?> syncLastTruckChild(OrderChild child) { public Result<?> syncLastTruckChild(OrderChild child) {
FeignOrderVO orderInfo = orderFeign.getOrderInfoFeign(child.getOrderNo()); FeignOrderVO orderInfo = orderFeign.getOrderInfoFeign(child.getOrderNo());
OrderChildMessage message = orderChildStruct.convertMessage(child); OrderChildMessage message = orderChildStruct.convertMessage(child);
//数媒宝修改卸货之后的运单状态
smbChangeOrderChildStatus(orderInfo,message);
message.setLastFlag(ResultStatusEnum.YES.getCode()); message.setLastFlag(ResultStatusEnum.YES.getCode());
String data = JSON.toJSONString(message); String data = JSON.toJSONString(message);
log.info("开始同步最后一车的运单,运单编号:{},运单信息:{}",child.getChildNo(), data); log.info("开始同步最后一车的运单,运单编号:{},运单信息:{}",child.getChildNo(), data);
OpenCallBackClient openCallBackClient = thirdAppConfig.getOpenCallBackClient(orderInfo.getOrderSource().toString()); OpenCallBackClient openCallBackClient = thirdAppConfig.getOpenCallBackClient(orderInfo.getOrderSource().toString());
Result<?> result = openCallBackClient.encryptPost(data,message.topic()); Result<?> result = openCallBackClient.encryptPost(data,message.topic());
log.info("结束同步最后一车的运单,运单编号:{},响应结果:{}",child.getChildNo(),JSON.toJSONString(result)); log.info("结束同步最后一车的运单,运单编号:{},响应结果:{}",child.getChildNo(),JSON.toJSONString(result));
if(!result.succeed()){
log.error("结束同步最后一车的运单发生异常,运单编号:{},响应结果:{}",child.getChildNo(),JSON.toJSONString(result));
}
return result; return result;
} }
//数媒宝卸车之后和完成之前的状态都作为卸车状态
public void smbChangeOrderChildStatus(FeignOrderVO orderInfo,OrderChildMessage message){
if(!Objects.equals(orderInfo.getOrderSource(), SyncPlatformEnum.Source.TRADE_PLATFORM.getCode())){
return;
}
if(message.getStatus() > OrderChildEnum.Status.UNLOAD.getCode() && message.getStatus() <= OrderChildEnum.Status.COMPLETE.getCode()){
message.setStatus(OrderChildEnum.Status.UNLOAD.getCode());
}
}
//在没有算出最后一车的前提下,订单变成已完结或者已完成状态,但是订单量可能并没有提取完,所以只需要判断订单下是否还有未到达 目的地的运单,没有则进行最后一车运算 //在没有算出最后一车的前提下,订单变成已完结或者已完成状态,但是订单量可能并没有提取完,所以只需要判断订单下是否还有未到达 目的地的运单,没有则进行最后一车运算
@Override @Override
public OrderChild getOrderCompleteLastTruck(String orderNo) { public OrderChild getOrderCompleteLastTruck(String orderNo) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论