package cc.mrbird.febs.rabbit;
|
|
import org.springframework.amqp.core.Binding;
|
import org.springframework.amqp.core.BindingBuilder;
|
import org.springframework.amqp.core.DirectExchange;
|
import org.springframework.amqp.core.Queue;
|
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
|
import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Scope;
|
|
import javax.annotation.Resource;
|
|
/**
|
* @author wzy
|
* @date 2022-05-31
|
**/
|
@Configuration
|
public class RabbitConfiguration {
|
|
@Resource
|
private ConnectionFactory connectionFactory;
|
|
@Bean
|
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
|
public RabbitTemplate rabbitTemplate() {
|
return new RabbitTemplate(connectionFactory);
|
}
|
|
// === speed 支付订单 start ===
|
@Bean
|
public DirectExchange speedPayOrderExchange() {
|
return new DirectExchange(QueueEnum.SPEED_PAY_ORDER.getExchange());
|
}
|
|
@Bean
|
public Queue speedPayOrderQueue() {
|
return new Queue(QueueEnum.SPEED_PAY_ORDER.getQueue());
|
}
|
|
@Bean
|
public Binding speedPayOrderBind() {
|
return BindingBuilder.bind(speedPayOrderQueue()).to(speedPayOrderExchange()).with(QueueEnum.SPEED_PAY_ORDER.getRoute());
|
}
|
// === speed 支付订单 end ===
|
|
// === speed 代理升级 start ===
|
@Bean
|
public DirectExchange speedLevelUpExchange() {
|
return new DirectExchange(QueueEnum.SPEED_LEVEL_UP.getExchange());
|
}
|
|
@Bean
|
public Queue speedLevelUpQueue() {
|
return new Queue(QueueEnum.SPEED_LEVEL_UP.getQueue());
|
}
|
|
@Bean
|
public Binding speedLevelUpBind() {
|
return BindingBuilder.bind(speedLevelUpQueue()).to(speedLevelUpExchange()).with(QueueEnum.SPEED_LEVEL_UP.getRoute());
|
}
|
// === speed 代理升级 end ===
|
|
// === speed 代理升级 start ===
|
@Bean
|
public DirectExchange speedLevelUpTeamExchange() {
|
return new DirectExchange(QueueEnum.SPEED_LEVEL_UP.getExchange());
|
}
|
|
@Bean
|
public Queue speedLevelUpTeamQueue() {
|
return new Queue(QueueEnum.SPEED_LEVEL_UP.getQueue());
|
}
|
|
@Bean
|
public Binding speedLevelUpTeamBind() {
|
return BindingBuilder.bind(speedLevelUpTeamQueue()).to(speedLevelUpTeamExchange()).with(QueueEnum.SPEED_LEVEL_UP_TEAM.getRoute());
|
}
|
// === speed 代理升级 end ===
|
|
// === speed 直推返利 start ===
|
@Bean
|
public DirectExchange speedDirectPerkExchange() {
|
return new DirectExchange(QueueEnum.SPEED_DIRECT_PERK.getExchange());
|
}
|
|
@Bean
|
public Queue speedDirectPerkQueue() {
|
return new Queue(QueueEnum.SPEED_DIRECT_PERK.getQueue());
|
}
|
|
@Bean
|
public Binding speedDirectPerkBind() {
|
return BindingBuilder.bind(speedDirectPerkQueue()).to(speedDirectPerkExchange()).with(QueueEnum.SPEED_DIRECT_PERK.getRoute());
|
}
|
// === speed 代理升级 end ===
|
|
// === speed 卖出资产 start ===
|
@Bean
|
public DirectExchange speedSalePackageExchange() {
|
return new DirectExchange(QueueEnum.SPEED_SALE_PACKAGE.getExchange());
|
}
|
|
@Bean
|
public Queue speedSalePackageQueue() {
|
return new Queue(QueueEnum.SPEED_SALE_PACKAGE.getQueue());
|
}
|
|
@Bean
|
public Binding speedSalePackageBind() {
|
return BindingBuilder.bind(speedSalePackageQueue()).to(speedSalePackageExchange()).with(QueueEnum.SPEED_SALE_PACKAGE.getRoute());
|
}
|
// === speed 卖出资产 end ===
|
}
|