From d6ed2678974b2750fd3b552cd607f487fbac0927 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 20 Feb 2024 16:51:23 +0800 Subject: [PATCH] 抽奖 --- src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java | 196 +++++++++++++++++++------------------------------ 1 files changed, 76 insertions(+), 120 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 7079411..a2c82db 100644 --- a/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java +++ b/src/main/java/cc/mrbird/febs/common/configure/RabbitConfigure.java @@ -31,137 +31,93 @@ return new RabbitTemplate(connectionFactory); } - @Bean - public DirectExchange defaultExchange() { - return new DirectExchange(ExchangeConstants.EXCHANGE_DEFAULT); - } + // === 延时 start === @Bean - public Queue defaultQueue() { - return new Queue(QueueConstants.QUEUE_DEFAULT); + public DirectExchange delayExchangeTtl() { + return new DirectExchange(RabbitQueueEnum.CHOU_JIANG_TIME_TTL.getExchange()); } - - @Bean - 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()); + return BindingBuilder.bind(orderDelayQueueTtl()).to(delayExchangeTtl()).with(RabbitQueueEnum.CHOU_JIANG_TIME_TTL.getRoute()); + } + @Bean + public Queue orderDelayQueueTtl() { + return QueueBuilder.durable(RabbitQueueEnum.CHOU_JIANG_TIME_TTL.getQueue()) + //到期后转发的交换机 + .withArgument("x-dead-letter-exchange", RabbitQueueEnum.CHOU_JIANG_TIME.getExchange()) + //到期后转发的路由键 + .withArgument("x-dead-letter-routing-key", RabbitQueueEnum.CHOU_JIANG_TIME.getRoute()) + .build(); + } + @Bean + public DirectExchange orderDelayExchange() { + return new DirectExchange(RabbitQueueEnum.CHOU_JIANG_TIME.getExchange()); + } + @Bean + public Queue orderDelayQueue() { + return new Queue(RabbitQueueEnum.CHOU_JIANG_TIME.getQueue()); + } + @Bean + public Binding orderDelayBind() { + return BindingBuilder.bind(orderDelayQueue()).to(orderDelayExchange()).with(RabbitQueueEnum.CHOU_JIANG_TIME.getRoute()); + } + // === 延时 end === + + + // === 延时 start === + @Bean + public DirectExchange delayExchangeTtlNoTime() { + return new DirectExchange(RabbitQueueEnum.NO_TIME_TTL.getExchange()); + } + @Bean + public Binding orderDelayBindTtlNoTime() { + return BindingBuilder.bind(orderDelayQueueTtlNoTime()) + .to(delayExchangeTtlNoTime()) + .with(RabbitQueueEnum.NO_TIME_TTL.getRoute()); + } + @Bean + public Queue orderDelayQueueTtlNoTime() { + return QueueBuilder.durable(RabbitQueueEnum.NO_TIME_TTL.getQueue()) + //到期后转发的交换机 + .withArgument("x-dead-letter-exchange", RabbitQueueEnum.NO_TIME.getExchange()) + //到期后转发的路由键 + .withArgument("x-dead-letter-routing-key", RabbitQueueEnum.NO_TIME.getRoute()) + .build(); + } + @Bean + public DirectExchange orderDelayExchangeNoTime() { + return new DirectExchange(RabbitQueueEnum.NO_TIME.getExchange()); + } + @Bean + public Queue orderDelayQueueNoTime() { + return new Queue(RabbitQueueEnum.NO_TIME.getQueue()); + } + @Bean + public Binding orderDelayBindNoTime() { + return BindingBuilder.bind(orderDelayQueueNoTime()) + .to(orderDelayExchangeNoTime()) + .with(RabbitQueueEnum.NO_TIME.getRoute()); + } + // === 延时 end === + + + + // === 处理中奖 start === + @Bean + public DirectExchange openPriceExchange() { + return new DirectExchange(RabbitQueueEnum.OPEN_PRICE.getExchange()); } @Bean - public Queue autoLevelUpAgentQueue() { - return new Queue(QueueConstants.AGENT_AUTO_LEVEL_UP); + public Queue openPriceQueue() { + return new Queue(RabbitQueueEnum.OPEN_PRICE.getQueue()); } @Bean - public Binding autoLevelUpBind() { - return BindingBuilder.bind(autoLevelUpAgentQueue()).to(defaultExchange()).with(RouteKeyConstants.ROUTE_KEY_DEFAULT); + public Binding openPriceBind() { + return BindingBuilder.bind(openPriceQueue()).to(openPriceExchange()).with(RabbitQueueEnum.OPEN_PRICE.getRoute()); } - - @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()); - } - - /** - * 补贴金额 - * @return - */ - //补贴金额 start - @Bean - public DirectExchange perkMoneyExchange() { - return new DirectExchange(RabbitQueueEnum.PERK_MONEY.getExchange()); - } - - @Bean - public Queue perkMoneyQueue() { - return new Queue(QueueConstants.PERK_MONEY); - } - - @Bean - public Binding perkMoneyBind() { - return BindingBuilder.bind(perkMoneyQueue()).to(perkMoneyExchange()).with(RabbitQueueEnum.PERK_MONEY.getRoute()); - } - //补贴金额 end - - /** - * 强制卖出 - * @return - */ - //强制卖出 start - @Bean - public DirectExchange forceVoucherSaleExchange() { - return new DirectExchange(RabbitQueueEnum.FORCE_VOUCHER_SALE.getExchange()); - } - - @Bean - public Queue forceVoucherSaleQueue() { - return new Queue(QueueConstants.FORCE_VOUCHER_SALE); - } - - @Bean - public Binding forceVoucherSaleBind() { - return BindingBuilder.bind(forceVoucherSaleQueue()).to(forceVoucherSaleExchange()).with(RabbitQueueEnum.FORCE_VOUCHER_SALE.getRoute()); - } - //强制卖出 end + // === 处理中奖 end === } -- Gitblit v1.9.1