Просмотр исходного кода

[修改][结算单][优化消息回调]

release_toaliyun_real
luozukai 6 лет назад
Родитель
Сommit
171bc62edf
1 измененных файлов: 13 добавлений и 9 удалений
  1. +13
    -9
      mallinkService/src/main/java/com/iformall/mq/impl/RabbitMqMessageProducer.java

+ 13
- 9
mallinkService/src/main/java/com/iformall/mq/impl/RabbitMqMessageProducer.java Просмотреть файл

@@ -47,11 +47,15 @@ public class RabbitMqMessageProducer implements MqBaseProducer , RabbitTemplate.
public void confirm(CorrelationData correlationData, boolean ack, String cause) { public void confirm(CorrelationData correlationData, boolean ack, String cause) {
log.info("confirm:: correlationData {},ack {}, cause {}", correlationData,ack,cause); log.info("confirm:: correlationData {},ack {}, cause {}", correlationData,ack,cause);
if(!ack){ if(!ack){
BaseMsg data = new BaseMsg();
data.setUuid(correlationData.getId());
data.setMsgStatus(EnumMsgRecordStatus.SEND_FAIL.getCode());
data.setStatusMessage(cause);
wxMsgRecordMapper.update(data);
try {
BaseMsg data = new BaseMsg();
data.setUuid(correlationData.getId());
data.setMsgStatus(EnumMsgRecordStatus.SEND_FAIL.getCode());
data.setStatusMessage(cause);
wxMsgRecordMapper.update(data);
} catch (Exception e) {
log.error(" RabbitMqMessageProducer.confirm.updateDb Error", e);
}
} }
} }


@@ -62,18 +66,18 @@ public class RabbitMqMessageProducer implements MqBaseProducer , RabbitTemplate.


@Override @Override
public void sendMessage(BaseMsg data, String topic, String tags, String keys) { public void sendMessage(BaseMsg data, String topic, String tags, String keys) {
String tag = UUID.randomUUID().toString();
String uuid = UUID.randomUUID().toString();
try { try {
data.setUuid(tag);
data.setUuid(uuid);
wxMsgRecordService.save(data); wxMsgRecordService.save(data);


CorrelationData correlationData = new CorrelationData(tag);
CorrelationData correlationData = new CorrelationData(uuid);
rabbitTemplate.convertAndSend(topic, (Object) JsonUtil.obj2Json(data),correlationData); rabbitTemplate.convertAndSend(topic, (Object) JsonUtil.obj2Json(data),correlationData);
// data.setMsgStatus(EnumMsgRecordStatus.SEND_SUCC.getCode()); // data.setMsgStatus(EnumMsgRecordStatus.SEND_SUCC.getCode());
// wxMsgRecordMapper.update(data); // wxMsgRecordMapper.update(data);
log.info(data.getUuid()+"发送mq成功。"); log.info(data.getUuid()+"发送mq成功。");
} catch (Exception e) { } catch (Exception e) {
log.error(tag + " RabbitMqMessageProducer: Send Message Error", e);
log.error(uuid + " RabbitMqMessageProducer: Send Message Error", e);
} }
} }
} }

Загрузка…
Отмена
Сохранить