From 0a6e3fcaa4850d319c4cfeb60b96c255eb476075 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 31 Jan 2024 11:04:40 +0800 Subject: [PATCH] 会员列表增加波卷功能 --- src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 169 insertions(+), 4 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java b/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java index 96a523b..f956599 100644 --- a/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java +++ b/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java @@ -3,10 +3,8 @@ import cc.mrbird.febs.rabbit.constants.ExchangeConstants; import cc.mrbird.febs.rabbit.constants.QueueConstants; import cc.mrbird.febs.rabbit.constants.RouteKeyConstants; -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 cc.mrbird.febs.rabbit.enumerates.RabbitQueueEnum; +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; @@ -47,4 +45,171 @@ public Binding defaultBind() { return BindingBuilder.bind(defaultQueue()).to(defaultExchange()).with(RouteKeyConstants.ROUTE_KEY_DEFAULT); } + + @Bean + public DirectExchange delayTtlExchange() { + return new DirectExchange(RabbitQueueEnum.ORDER_CANCEL_DELAY_TTL.getExchange()); + } + + @Bean + public DirectExchange orderDelayExchange() { + return new DirectExchange(RabbitQueueEnum.ORDER_CANCEL_DELAY.getExchange()); + } + + @Bean + public Queue orderDelayQueue() { + return new Queue(RabbitQueueEnum.ORDER_CANCEL_DELAY.getQueue()); + } + + @Bean + public Queue orderDelayQueueTtl() { + return QueueBuilder.durable(RabbitQueueEnum.ORDER_CANCEL_DELAY_TTL.getQueue()) + //到期后转发的交换机 + .withArgument("x-dead-letter-exchange", RabbitQueueEnum.ORDER_CANCEL_DELAY.getExchange()) + //到期后转发的路由键 + .withArgument("x-dead-letter-routing-key", RabbitQueueEnum.ORDER_CANCEL_DELAY.getRoute()) + .build(); + } + + @Bean + public Binding orderDelayBind() { + return BindingBuilder.bind(orderDelayQueue()).to(orderDelayExchange()).with(RabbitQueueEnum.ORDER_CANCEL_DELAY.getRoute()); + } + + @Bean + public Binding orderDelayBindTtl() { + return BindingBuilder.bind(orderDelayQueueTtl()).to(delayTtlExchange()).with(RabbitQueueEnum.ORDER_CANCEL_DELAY_TTL.getRoute()); + } + + @Bean + public Queue autoLevelUpAgentQueue() { + return new Queue(QueueConstants.AGENT_AUTO_LEVEL_UP); + } + + @Bean + public Binding autoLevelUpBind() { + return BindingBuilder.bind(autoLevelUpAgentQueue()).to(defaultExchange()).with(RouteKeyConstants.ROUTE_KEY_DEFAULT); + } + + @Bean + public DirectExchange agentReturnMoneyExchange() { + return new DirectExchange(RabbitQueueEnum.AGENT_REUTRN_MONEY.getExchange()); + } + + @Bean + public Queue agentReturnMoneyQueue() { + return new Queue(QueueConstants.AGENT_RETURN_MONEY); + } + + @Bean + public Binding agentReturnMoneyBind() { + return BindingBuilder.bind(agentReturnMoneyQueue()).to(agentReturnMoneyExchange()).with(RabbitQueueEnum.AGENT_REUTRN_MONEY.getRoute()); + } + + + @Bean + public DirectExchange orderReturnMoneyExchange() { + return new DirectExchange(RabbitQueueEnum.ORDER_RETURN_MONEY.getExchange()); + } + + @Bean + public Queue orderReturnMoneyQueue() { + return new Queue(QueueConstants.ORDER_RETURN_MONEY); + } + + @Bean + public Binding orderReturnMoneyBind() { + return BindingBuilder.bind(orderReturnMoneyQueue()).to(orderReturnMoneyExchange()).with(RabbitQueueEnum.ORDER_RETURN_MONEY.getRoute()); + } + + + /** 新用户注册 start**/ + @Bean + public DirectExchange memberSubExchange() { + return new DirectExchange(RabbitQueueEnum.YWG_MEMBER_SUB.getExchange()); + } + + @Bean + public Queue memberSubQueue() { + return new Queue(RabbitQueueEnum.YWG_MEMBER_SUB.getQueue()); + } + + @Bean + public Binding memberSubBind() { + return BindingBuilder.bind(memberSubQueue()).to(memberSubExchange()).with(RabbitQueueEnum.YWG_MEMBER_SUB.getRoute()); + } + /** 新用户注册 end**/ + + + /** 新用户注册 start**/ + @Bean + public DirectExchange memberSubScanExchange() { + return new DirectExchange(RabbitQueueEnum.YWG_MEMBER_SUB_SCAN.getExchange()); + } + + @Bean + public Queue memberSubScanQueue() { + return new Queue(RabbitQueueEnum.YWG_MEMBER_SUB_SCAN.getQueue()); + } + + @Bean + public Binding memberSubScanBind() { + return BindingBuilder.bind(memberSubScanQueue()).to(memberSubScanExchange()).with(RabbitQueueEnum.YWG_MEMBER_SUB_SCAN.getRoute()); + } + /** 新用户注册 end**/ + + + /** 用户信息 start**/ + @Bean + public DirectExchange memberInfoExchange() { + return new DirectExchange(RabbitQueueEnum.YWG_MEMBER_INFO.getExchange()); + } + + @Bean + public Queue memberInfoQueue() { + return new Queue(RabbitQueueEnum.YWG_MEMBER_INFO.getQueue()); + } + + @Bean + public Binding memberInfoBind() { + return BindingBuilder.bind(memberInfoQueue()).to(memberInfoExchange()).with(RabbitQueueEnum.YWG_MEMBER_INFO.getRoute()); + } + /** 新用户注册 end**/ + + + /** 支付后同意验证 start**/ + @Bean + public DirectExchange orderGetExchange() { + return new DirectExchange(RabbitQueueEnum.YWG_ORDER_GET.getExchange()); + } + + @Bean + public Queue orderGetQueue() { + return new Queue(RabbitQueueEnum.YWG_ORDER_GET.getQueue()); + } + + @Bean + public Binding orderGetBind() { + return BindingBuilder.bind(orderGetQueue()).to(orderGetExchange()).with(RabbitQueueEnum.YWG_ORDER_GET.getRoute()); + } + /** 支付后同意验证 end**/ + + + /** 支付后生成我的课程或者我的民宿卷 start**/ + @Bean + public DirectExchange rollSendExchange() { + return new DirectExchange(RabbitQueueEnum.YWG_ROLL_SEND.getExchange()); + } + + @Bean + public Queue rollSendQueue() { + return new Queue(RabbitQueueEnum.YWG_ROLL_SEND.getQueue()); + } + + @Bean + public Binding rollSendBind() { + return BindingBuilder.bind(rollSendQueue()).to(rollSendExchange()).with(RabbitQueueEnum.YWG_ROLL_SEND.getRoute()); + } + /** 支付后生成我的课程或者我的民宿卷 end**/ + } -- Gitblit v1.9.1