Pu Zhibing
2025-04-30 1adec9fead03f0f788a73f9349ccba86569e31f3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package com.ruoyi.integration.rocket.listener;
 
import com.ruoyi.integration.api.model.SecurityDetection;
import com.ruoyi.integration.mongodb.service.SecurityDetectionService;
import com.ruoyi.integration.rocket.model.AcquisitionBillingModeMessage;
import com.ruoyi.integration.rocket.model.SecurityDetectionMessage;
import com.ruoyi.order.api.feignClient.ChargingOrderClient;
import com.ruoyi.order.api.vo.SecurityDetectionVO;
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;
 
import javax.annotation.Resource;
 
/**
 * @author zhibing.pu
 * @Date 2025/4/28 14:59
 */
@Slf4j
@Component
@RocketMQMessageListener(
        messageModel = MessageModel.CLUSTERING,
        consumerGroup = "charge_security_detection",
        topic = "charge_security_detection",
        selectorExpression = "security_detection"
)
public class SecurityDetectionMessageListener implements RocketMQListener<SecurityDetectionMessage> {
    @Resource
    private ChargingOrderClient chargingOrderClient;
    @Autowired
    private SecurityDetectionService securityDetectionService;
    
    
    
    @Override
    public void onMessage(SecurityDetectionMessage message) {
        log.info("安全监测-业务消息处理:{}",message);
        SecurityDetection securityDetection = new SecurityDetection();
        BeanUtils.copyProperties(message,securityDetection);
        securityDetectionService.create(securityDetection);
        
        SecurityDetectionVO securityDetection1 = new SecurityDetectionVO();
        BeanUtils.copyProperties(securityDetection, securityDetection1);
        chargingOrderClient.securityDetection(securityDetection1);
    }
}