From df4441322e9801c102299451da41d7c40b4502e9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 24 六月 2021 18:53:13 +0800 Subject: [PATCH] zookeeper地址修改,Maven采用私服 --- service-lucky/src/main/java/com/ks/lucky/util/mq/CMQManager.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 113 insertions(+), 0 deletions(-) diff --git a/service-lucky/src/main/java/com/ks/lucky/util/mq/CMQManager.java b/service-lucky/src/main/java/com/ks/lucky/util/mq/CMQManager.java index 05fdd1f..2690eed 100644 --- a/service-lucky/src/main/java/com/ks/lucky/util/mq/CMQManager.java +++ b/service-lucky/src/main/java/com/ks/lucky/util/mq/CMQManager.java @@ -1,27 +1,50 @@ package com.ks.lucky.util.mq; import com.google.gson.Gson; +import com.ks.lucky.pojo.DTO.ActivityDrwanOutDateMsg; import com.ks.lucky.pojo.DTO.ActivityMQMsg; +import com.ks.lucky.pojo.DTO.mq.ActivityAssistMsgDTO; +import com.ks.lucky.pojo.DTO.mq.ActivityDrawnMsgDTO; +import com.ks.lucky.pojo.DTO.mq.ActivityJoinMsgDTO; +import com.ks.lucky.pojo.DTO.mq.ActivityStateChangeMsgDTO; +import com.ks.lucky.utils.LuckyCMQConstant; import com.qcloud.cmq.Message; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.yeshi.utils.CMQUtil; +import org.yeshi.utils.JsonUtil; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class CMQManager { + private final static Logger logger = LoggerFactory.getLogger(CMQManager.class); private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25"; private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo"; private static CMQManager cmqManager; private static CMQUtil cmqUtil; public static String QUEUENAME_LUCKY_ACTIVITY = "lucky-activity"; + /** + * 闇�瑕佹墽琛岄濂栬繃鏈� + */ + public static String QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC = "lucky-activity-drawn-outdate-exec"; + static { cmqUtil = CMQUtil.getInstance(secretId, secretKey); // 鏈�澶ф秷鎭负1M cmqUtil.createQueue(QUEUENAME_LUCKY_ACTIVITY, 1024 * 1024); + cmqUtil.createQueue(QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC, 1024 * 1024); + + //鍒涘缓涓婚 + cmqUtil.createTopic(LuckyCMQConstant.TOPIC_ACTIVITY_STATE_CHANGE); + cmqUtil.createTopic(LuckyCMQConstant.TOPIC_ASSIST); + cmqUtil.createTopic(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN); + cmqUtil.createTopic(LuckyCMQConstant.TOPIC_ACTIVITY_JOIN); } public static CMQManager getInstance() { @@ -51,6 +74,7 @@ public void addActivityMsg(ActivityMQMsg msg) { cmqUtil.sendMsg(QUEUENAME_LUCKY_ACTIVITY, new Gson().toJson(msg)); } + /** * 娲诲姩娑堟伅娑堣垂 @@ -83,4 +107,93 @@ } + /** + * 娣诲姞娲诲姩杩囨湡娑堟伅 + * + * @param msg + */ + public void addActivityDrawnOutDateMsg(ActivityDrwanOutDateMsg msg) { + cmqUtil.sendMsg(QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC, new Gson().toJson(msg)); + } + + /** + * 娑堣垂娲诲姩涓杩囨湡娑堟伅 + * + * @param count + * @return + */ + public Map<String, ActivityDrwanOutDateMsg> consumeActivityDrawnOutDateMsg(int count) { + List<Message> list = cmqUtil.recieveMsg(count, QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC); + if (list == null) { + return null; + } + + Map<String, ActivityDrwanOutDateMsg> map = new HashMap<>(); + Gson gson = new Gson(); + for (Message msg : list) { + String result = msg.msgBody; + map.put(msg.receiptHandle, gson.fromJson(result, ActivityDrwanOutDateMsg.class)); + } + return map; + } + + /** + * 鍒犻櫎娲诲姩涓杩囨湡娑堟伅 + * + * @param receiptHandle + */ + public void deleteActivityDrawnOutDateMsg(String receiptHandle) { + cmqUtil.deleteMsg(QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC, receiptHandle); + } + + + /** + * 鍙戝竷娲诲姩鐘舵�佹敼鍙樼殑璁㈤槄娑堟伅 + * + * @param dto + */ + public void publishActivityStateChangeMsg(ActivityStateChangeMsgDTO dto) { + List<String> tagList = new ArrayList<>(); +// tagList.add(LuckyCMQConstant.TAG_ACTIVITY_STATE_CHANGE); + cmqUtil.publishTopicMessage(LuckyCMQConstant.TOPIC_ACTIVITY_STATE_CHANGE, JsonUtil.getSimpleGson().toJson(dto)); + } + + + /** + * 鍙戝竷娲诲姩鍔╁姏鐨勮闃呮秷鎭� + * + * @param dto + */ + public void publishActivityAssistMsg(ActivityAssistMsgDTO dto) { + List<String> tagList = new ArrayList<>(); +// tagList.add(LuckyCMQConstant.TAG_ASSIST); + String msgId = cmqUtil.publishTopicMessage(LuckyCMQConstant.TOPIC_ASSIST, JsonUtil.getSimpleGson().toJson(dto)); + logger.info("publishActivityJoinMsg:" + msgId); + } + + /** + * 鍙戝竷娲诲姩涓娑堟伅鍒拌闃呮秷鎭� + * + * @param dto + */ + public void publishActivityDrawnMsg(ActivityDrawnMsgDTO dto) { +// List<String> tagList = new ArrayList<>(); +// tagList.add(LuckyCMQConstant.TAG_ACTIVITY_DRAWN); + String msgId = cmqUtil.publishTopicMessage(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN, JsonUtil.getSimpleGson().toJson(dto)); + logger.info("publishActivityDrawnMsg:" + msgId); + } + + + /** + * 娲诲姩鍙備笌淇℃伅 + * + * @param dto + */ + public void publishActivityJoinMsg(ActivityJoinMsgDTO dto) { +// List<String> tagList = new ArrayList<>(); +// tagList.add(LuckyCMQConstant.TAG_ACTIVITY_JOIN); + String msgId = cmqUtil.publishTopicMessage(LuckyCMQConstant.TOPIC_ACTIVITY_JOIN, JsonUtil.getSimpleGson().toJson(dto)); + logger.info("publishActivityJoinMsg:" + msgId); + } + } -- Gitblit v1.8.0