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

Merge remote-tracking branch 'origin/v19.4_order_performance_progress_20240712' into dev

package com.clx.performance.listener;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.clx.open.sdk.callback.message.OrderInfoMessage;
import com.clx.performance.common.MqWrapper;
import com.clx.performance.constant.RabbitKeyConstants;
import com.clx.performance.service.PerformanceProgressService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
......@@ -21,12 +24,12 @@ public class SyncPerformanceProgress4OrderInfoListener {
@RabbitListener(queues = RabbitKeyConstants.SYNC_PERFORMANCE_PROGRESS_FOR_ORDER_INFO_QUEUE)
public void onMessage(String message) {
public void onMessage(Message message) {
log.info("监听到同步履约进度表---订单信息部分,消息内容{}", message);
OrderInfoMessage data = JSONUtil.toBean(message, OrderInfoMessage.class);
log.info("1");
OrderInfoMessage data = JSON.parseObject(new String(message.getBody()),
new TypeReference<MqWrapper<OrderInfoMessage>>() {
}).getData();
log.info("OrderInfoMessage===={}",data);
performanceProgressService.dealPerformanceProgress4OrderInfo(data);
log.info("2");
}
}
......@@ -270,13 +270,11 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
@Transactional(rollbackFor = Exception.class)
@Override
public void dealPerformanceProgress4OrderInfo(OrderInfoMessage data) {
log.info("2.1");
//如果取消,删除履约进度表这条记录
if(Objects.equals(data.getOrderStatus(),OrderEnum.Status.CANCELED.getCode())){
performanceProgressDao.deleteByField(PerformanceProgress::getOrderNo,data.getOrderNo());
}
log.info("2.1.1");
Optional<PerformanceProgress> optional = performanceProgressDao.getOneByField(PerformanceProgress::getOrderNo,
data.getOrderNo());
......@@ -301,7 +299,6 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
}
log.info("2.2");
if(optional.isPresent()){
item.setId(optional.get().getId());
if(Objects.nonNull(data.getSendSystemAddressId()) &&
......@@ -311,7 +308,6 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
}
performanceProgressDao.updateEntityByKey(item);
}else{
log.info("2.3");
//查询最大的seq
long seq = performanceProgressDao.getMaxSeq();
item.setSeq(seq + 1);
......@@ -339,7 +335,6 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
log.warn("订单计算重车运距失败,订单号:{},失败原因:{}",data.getOrderNo(), ExceptionUtils.getStackTrace(e));
}
log.info("2.4");
item.setOrderDistance(distance);
......@@ -353,7 +348,6 @@ public class PerformanceProgressServiceImpl implements PerformanceProgressServi
+ sendAddress.getAddress());
item.setSeq(seq);
performanceProgressDao.saveEntity(item);
log.info("2.5");
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论