From d9afe8912d7f5d832eec7fc7b010f9cf9ed026e5 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 17 Mar 2021 14:35:38 +0800
Subject: [PATCH] 分销订单0317

---
 zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
index 2effc80..ce1ff16 100644
--- a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
+++ b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
@@ -4,6 +4,7 @@
 import com.matrix.component.rabbitmq.MqTask;
 import com.matrix.component.rabbitmq.RabiitMqTemplate;
 import com.matrix.component.rabbitmq.RabiitMqTemplateFactory;
+import com.matrix.core.tools.LogUtil;
 import com.matrix.system.shopXcx.mqTask.*;
 import com.matrix.system.wechart.templateMsg.Task.UniformMsgSentTask;
 import org.springframework.beans.factory.annotation.Value;
@@ -34,6 +35,9 @@
 
     public static final String MQ_EXCHANGE_A = "hive_exchange_A";
 
+    //订阅模式
+    public static final String MQ_EXCHANGE_TOPIC = "hive_exchange_fanout";
+
     @Bean
     VipCreateTask VipCreateTask() {
         return new VipCreateTask();
@@ -42,6 +46,10 @@
     @Bean
     OrderTask OrderrCreateTask() {
         return new OrderTask();
+    }
+    @Bean
+    SalesOrderTask SalesOrderTask() {
+        return new SalesOrderTask();
     }
 
     @Bean
@@ -62,22 +70,29 @@
 
     @Bean
     public RabiitMqTemplate rabiitMqTemplate() throws IOException {
-
+        LogUtil.info("rabbitmq: {}, {}, {}, {}", host, port, username, password);
         RabiitMqTemplate rabiitMqTemplate = RabiitMqTemplateFactory.buildTemplate(host, port, username, password);
 
         //声明一个交换机
         rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_A+evn, "direct");
-        rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_A+"cf", "direct");
+        rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_TOPIC +evn, "topic");
 
         List<MqTask> taskList = new ArrayList<>();
 
         //注册RabbitMq任务
         taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.CREATE_VIP + evn, MQTaskRouting.CREATE_VIP + evn, VipCreateTask()));
-        taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,OrderrCreateTask()));
+        //订阅模式
+
+
         taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_TEMPLATE_MSG + evn,MQTaskRouting.SEND_TEMPLATE_MSG + evn, TemplateMsgTask()));
         taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.ORDER_OUT_SOTORE + evn,MQTaskRouting.ORDER_OUT_SOTORE + evn, OrderOutSotoreTask()));
         taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn,MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn, UniformMsgSentTask()));
 
+        //不同任务在不同的队列,但是routingKey一样则可以收到生产者消息
+        taskList.add(new MqTask(MQ_EXCHANGE_TOPIC + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,SalesOrderTask()));
+        taskList.add(new MqTask(MQ_EXCHANGE_TOPIC + evn, MQTaskRouting.SALES_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,OrderrCreateTask()));
+
+
         rabiitMqTemplate.binding(taskList);
 
         return rabiitMqTemplate;

--
Gitblit v1.9.1