From d3862d4493613a4b1e3e69a078e3957652f1d5c8 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Sat, 11 May 2024 18:06:15 +0800
Subject: [PATCH] 香港新环境
---
src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java | 107 +++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 103 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java b/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
index 2843548..31025f2 100644
--- a/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
+++ b/src/main/java/cc/mrbird/febs/rabbit/RabbitConfiguration.java
@@ -1,9 +1,6 @@
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.core.*;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
@@ -58,4 +55,106 @@
public Binding distribProfitBind() {
return BindingBuilder.bind(distribProfitQueue()).to(distribProfitExchange()).with(QueueEnum.DISTRIB_PROFIT.getRoute());
}
+
+ // === 用户购买奖励 start ===
+ @Bean
+ public DirectExchange userBuyRewardExchange() {
+ return new DirectExchange(QueueEnum.USER_BUY_REWARD.getExchange());
+ }
+
+ @Bean
+ public Queue userBuyRewardQueue() {
+ return new Queue(QueueEnum.USER_BUY_REWARD.getQueue());
+ }
+
+ @Bean
+ public Binding userBuyRewardBind() {
+ return BindingBuilder.bind(userBuyRewardQueue()).to(userBuyRewardExchange()).with(QueueEnum.USER_BUY_REWARD.getRoute());
+ }
+ // === 用户购买奖励 end ===
+
+
+ // === 延时产出 start ===
+ @Bean
+ public DirectExchange delayExchangeTtl() {
+ return new DirectExchange(QueueEnum.GFA_ZY_TIME_TTL.getExchange());
+ }
+ @Bean
+ public Binding orderDelayBindTtl() {
+ return BindingBuilder.bind(orderDelayQueueTtl()).to(delayExchangeTtl()).with(QueueEnum.GFA_ZY_TIME_TTL.getRoute());
+ }
+ @Bean
+ public Queue orderDelayQueueTtl() {
+ return QueueBuilder.durable(QueueEnum.GFA_ZY_TIME_TTL.getQueue())
+ //到期后转发的交换机
+ .withArgument("x-dead-letter-exchange", QueueEnum.GFA_ZY_TIME.getExchange())
+ //到期后转发的路由键
+ .withArgument("x-dead-letter-routing-key", QueueEnum.GFA_ZY_TIME.getRoute())
+ .build();
+ }
+ @Bean
+ public DirectExchange orderDelayExchange() {
+ return new DirectExchange(QueueEnum.GFA_ZY_TIME.getExchange());
+ }
+ @Bean
+ public Queue orderDelayQueue() {
+ return new Queue(QueueEnum.GFA_ZY_TIME.getQueue());
+ }
+ @Bean
+ public Binding orderDelayBind() {
+ return BindingBuilder.bind(orderDelayQueue()).to(orderDelayExchange()).with(QueueEnum.GFA_ZY_TIME.getRoute());
+ }
+ // === 延时产出 end ===
+
+
+ // === 延时产出 start ===
+ @Bean
+ public DirectExchange delayExchangeTtlFlow() {
+ return new DirectExchange(QueueEnum.GFA_ZY_TIME_TTL_FLOW.getExchange());
+ }
+ @Bean
+ public Binding orderDelayBindTtlFlow() {
+ return BindingBuilder.bind(orderDelayQueueTtlFlow()).to(delayExchangeTtlFlow()).with(QueueEnum.GFA_ZY_TIME_TTL_FLOW.getRoute());
+ }
+ @Bean
+ public Queue orderDelayQueueTtlFlow() {
+ return QueueBuilder.durable(QueueEnum.GFA_ZY_TIME_TTL_FLOW.getQueue())
+ //到期后转发的交换机
+ .withArgument("x-dead-letter-exchange", QueueEnum.GFA_ZY_TIME_FLOW.getExchange())
+ //到期后转发的路由键
+ .withArgument("x-dead-letter-routing-key", QueueEnum.GFA_ZY_TIME_FLOW.getRoute())
+ .build();
+ }
+ @Bean
+ public DirectExchange orderDelayExchangeFlow() {
+ return new DirectExchange(QueueEnum.GFA_ZY_TIME_FLOW.getExchange());
+ }
+ @Bean
+ public Queue orderDelayQueueFlow() {
+ return new Queue(QueueEnum.GFA_ZY_TIME_FLOW.getQueue());
+ }
+ @Bean
+ public Binding orderDelayBindFlow() {
+ return BindingBuilder.bind(orderDelayQueueFlow()).to(orderDelayExchangeFlow()).with(QueueEnum.GFA_ZY_TIME_FLOW.getRoute());
+ }
+ // === 延时产出 end ===
+
+
+
+ //滑点 start
+ @Bean
+ public DirectExchange gfaZhiYaHuaDianExchange() {
+ return new DirectExchange(QueueEnum.GFA_ZY_HUA_DIAN.getExchange());
+ }
+
+ @Bean
+ public Queue gfaZhiYaHuaDianQueue() {
+ return new Queue(QueueEnum.GFA_ZY_HUA_DIAN.getQueue());
+ }
+
+ @Bean
+ public Binding gfaZhiYaHuaDianBind() {
+ return BindingBuilder.bind(gfaZhiYaHuaDianQueue()).to(gfaZhiYaHuaDianExchange()).with(QueueEnum.GFA_ZY_HUA_DIAN.getRoute());
+ }
+ //滑点 end
}
--
Gitblit v1.9.1