提交 1180a834 作者: xiaowang

充值订单成功发送消息

上级 fcd5839b
...@@ -20,15 +20,24 @@ public class DirectExchangeConfig { ...@@ -20,15 +20,24 @@ public class DirectExchangeConfig {
} }
@Bean @Bean
public Queue directQueue() { public Queue directQueue1() {
return new Queue(RabbitmqConstant.USER_TOP_UP_DIRECT_QUEUE, true); return new Queue(RabbitmqConstant.USER_TOP_UP_DIRECT_QUEUE, true);
} }
@Bean @Bean
public Binding bindingDirect() { public Binding bindingDirect1() {
Binding binding = BindingBuilder.bind(directQueue()).to(directExchange()).with(RabbitmqConstant.USER_TOP_UP_ROUTING_KEY); Binding binding = BindingBuilder.bind(directQueue1()).to(directExchange()).with(RabbitmqConstant.USER_TOP_UP_ROUTING_KEY);
return binding; return binding;
} }
@Bean
public Queue directQueue2() {
return new Queue(RabbitmqConstant.USER_TOP_UP_SUCCESS_QUEUE, true);
}
@Bean
public Binding bindingDirect2() {
Binding binding = BindingBuilder.bind(directQueue2()).to(directExchange()).with(RabbitmqConstant.USER_TOP_UP_SUCCESS_ROUTING_KEY);
return binding;
}
} }
...@@ -5,9 +5,20 @@ package com.mmc.payment.mq.constant; ...@@ -5,9 +5,20 @@ package com.mmc.payment.mq.constant;
* @Date: 2023/8/23 11:26 * @Date: 2023/8/23 11:26
*/ */
public class RabbitmqConstant { public class RabbitmqConstant {
/**
* 用户充值订单交换机
*/
public final static String USER_TOP_UP_DIRECT_EXCHANGE = "USER_TOP_UP_DIRECT_EXCHANGE"; public final static String USER_TOP_UP_DIRECT_EXCHANGE = "USER_TOP_UP_DIRECT_EXCHANGE";
/**
* 充值订单队列、routing_key
*/
public final static String USER_TOP_UP_DIRECT_QUEUE = "USER_TOP_UP_DIRECT_QUEUE"; public final static String USER_TOP_UP_DIRECT_QUEUE = "USER_TOP_UP_DIRECT_QUEUE";
public final static String USER_TOP_UP_ROUTING_KEY = "USER_TOP_UP_ROUTING_KEY"; public final static String USER_TOP_UP_ROUTING_KEY = "USER_TOP_UP_ROUTING_KEY";
/**
* 充值成功队列、routing_key
*/
public final static String USER_TOP_UP_SUCCESS_QUEUE = "USER_TOP_UP_SUCCESS_QUEUE";
public final static String USER_TOP_UP_SUCCESS_ROUTING_KEY = "USER_TOP_UP_SUCCESS_ROUTING_KEY";
} }
...@@ -199,7 +199,11 @@ public class WechatPayServiceImpl implements WechatPayService { ...@@ -199,7 +199,11 @@ public class WechatPayServiceImpl implements WechatPayService {
result.put("code", "SUCCESS"); result.put("code", "SUCCESS");
if ("TOP_UP".equals(transaction.getAttach())) { if ("TOP_UP".equals(transaction.getAttach())) {
// 充值订单,发送mq消息进行操作 // 充值订单,发送mq消息进行操作
sendTopUpMsg(transaction); sendTopUpMsg(transaction, 0);
}
if ("TOP_UP".equals(transaction.getAttach()) && "SUCCESS".equals(transaction.getTradeState().toString())) {
// 发送充值成功消息
sendTopUpMsg(transaction, 1);
} }
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
...@@ -207,15 +211,20 @@ public class WechatPayServiceImpl implements WechatPayService { ...@@ -207,15 +211,20 @@ public class WechatPayServiceImpl implements WechatPayService {
return result; return result;
} }
private void sendTopUpMsg(Transaction transaction) { private void sendTopUpMsg(Transaction transaction, Integer flag) {
TopUpOrderVO topUpOrderVO = new TopUpOrderVO(); TopUpOrderVO topUpOrderVO = new TopUpOrderVO();
topUpOrderVO.setOpenid(transaction.getPayer().getOpenid()); topUpOrderVO.setOpenid(transaction.getPayer().getOpenid());
topUpOrderVO.setOrderNo(transaction.getOutTradeNo()); topUpOrderVO.setOrderNo(transaction.getOutTradeNo());
topUpOrderVO.setAmount(transaction.getAmount().getTotal()); topUpOrderVO.setAmount(transaction.getAmount().getTotal());
topUpOrderVO.setTradeState(transaction.getTradeState().toString()); topUpOrderVO.setTradeState(transaction.getTradeState().toString());
topUpOrderVO.setTradeStateDesc(transaction.getTradeStateDesc()); topUpOrderVO.setTradeStateDesc(transaction.getTradeStateDesc());
if (flag == 0) {
publishMsg.sendNewTopUpOrder(topUpOrderVO, RabbitmqConstant.USER_TOP_UP_ROUTING_KEY); publishMsg.sendNewTopUpOrder(topUpOrderVO, RabbitmqConstant.USER_TOP_UP_ROUTING_KEY);
} }
if (flag == 1) {
publishMsg.sendNewTopUpOrder(topUpOrderVO, RabbitmqConstant.USER_TOP_UP_SUCCESS_ROUTING_KEY);
}
}
@Override @Override
public ResultBody closeOrder(String orderNo) { public ResultBody closeOrder(String orderNo) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论