package com.ruoyi.integration.rocket.listener;
|
|
import com.ruoyi.integration.mongodb.service.ErrorMessageMessageService;
|
import com.ruoyi.integration.rocket.model.ErrorMessageMessage;
|
import com.ruoyi.integration.rocket.util.EnhanceMessageHandler;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.rocketmq.spring.annotation.MessageModel;
|
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
|
import org.apache.rocketmq.spring.core.RocketMQListener;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
@Slf4j
|
@Component
|
@RocketMQMessageListener(
|
messageModel = MessageModel.CLUSTERING,
|
consumerGroup = "charge_error_message",
|
topic = "charge_error_message",
|
selectorExpression = "error_message"
|
)
|
public class ErrorMessageMessageListener implements RocketMQListener<ErrorMessageMessage> {
|
|
@Autowired
|
private ErrorMessageMessageService errorMessageMessageService;
|
|
|
|
/**
|
* 监听消费消息,不需要执行业务处理,委派给父类做基础操作,父类做完基础操作后会调用子类的实际处理类型
|
*/
|
@Override
|
public void onMessage(ErrorMessageMessage message) {
|
log.info("错误报文-业务消息处理:{}",message);
|
// 持久化消息
|
ErrorMessageMessage errorMessageMessage = new ErrorMessageMessage();
|
BeanUtils.copyProperties(message,errorMessageMessage);
|
errorMessageMessageService.create(errorMessageMessage);
|
}
|
}
|