src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java
@@ -126,6 +126,7 @@ public static final String ROUTING_KEY_DELAY = "route.delay"; public static final String QUEUE_DELAY = "queue.delay"; public static final String EXCHANGE_DELAY = "exchange.delay"; @Resource private ConnectionFactory connectionFactory; @@ -150,11 +151,15 @@ return new DirectExchange(EXCHANGE_ONE); } public DirectExchange delayExchange() { return new DirectExchange(EXCHANGE_DELAY); } @Bean public Queue delayQueue() { Map<String, Object> params = new HashMap<>(); // x-dead-letter-exchange 声明了队列里的死信转发到的DLX名称, params.put("x-dead-letter-exchange", EXCHANGE_ONE); params.put("x-dead-letter-exchange", EXCHANGE_DELAY); // x-dead-letter-routing-key 声明了这些死信在转发时携带的 routing-key 名称。 params.put("x-dead-letter-routing-key", ROUTING_KEY_DELAY); return new Queue(QUEUE_DELAY, true, false, false, params); @@ -162,7 +167,7 @@ @Bean public Binding delayBinding() { return BindingBuilder.bind(delayQueue()).to(defaultExchange()).with(ROUTING_KEY_DELAY); return BindingBuilder.bind(delayQueue()).to(delayExchange()).with(ROUTING_KEY_DELAY); } @Bean src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java
@@ -334,6 +334,8 @@ if (saleOrder == null) { return Result.fail("参数错误"); } MemberEntity buyMember = memberDao.selectById(saleOrder.getOppositeMemberId()); SaleOrderDetailVo saleDetail = new SaleOrderDetailVo(); saleDetail.setOrderNo(saleOrder.getOrderNo()); @@ -344,6 +346,7 @@ saleDetail.setCreateTime(saleOrder.getCreateTime()); saleDetail.setIsMb(member.getIsTrader()); saleDetail.setPayName(saleOrder.getPayName()); saleDetail.setSaleName(buyMember.getName()); if (!saleOrder.getMemberId().equals(saleOrder.getEntrustMemberId())) { OtcMarketBussiness otcMb = otcMarketBussinessDao.selectMarketBussinessByMemberId(saleOrder.getEntrustMemberId()); src/main/java/com/xcong/excoin/rabbit/producer/OtcProducter.java
@@ -32,7 +32,7 @@ public void sendDelayOrderMsg(String content) { log.info("-----{}", new Date()); rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE_ONE, RabbitMqConfig.ROUTING_KEY_DELAY, message -> { rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE_DELAY, RabbitMqConfig.ROUTING_KEY_DELAY, content, message -> { message.getMessageProperties().setExpiration(60 + ""); return message; });