Files
cai-server/ruoyi-websocket-boot/src/main/java/com/ruoyi/consumer/RoomSettleDelayMqConsumer.java
张良(004796) 4d10fe5611 123
2024-04-12 10:52:00 +08:00

35 lines
1.1 KiB
Java

package com.ruoyi.consumer;
import com.ruoyi.cai.mq.AmqpWsProducer;
import com.ruoyi.cai.mq.constant.ws.RoomSettleDelayWsMqConstant;
import com.ruoyi.cai.ws.service.SettleService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class RoomSettleDelayMqConsumer {
@Autowired
private SettleService settleService;
@Autowired
private AmqpWsProducer amqpWsProducer;
@RabbitListener(queues = RoomSettleDelayWsMqConstant.QUEUE_NAME
,containerFactory = "customContainerFactory")
public void checkTimeOutMq(String message) {
log.info("开始执行预扣费: " + message);
try {
boolean next = settleService.withholdingFee(Long.valueOf(message));
if(next){
// 1分钟后继续执行
amqpWsProducer.sendRoomSettleDelay(message,60);
}
}catch (Exception e){
log.error("每分钟定时扣费失败!",e);
}
}
}