From 0e9b6603d4ae9d11c1fbc90257ce816c5807b8ff Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 28 十月 2022 16:55:02 +0800 Subject: [PATCH] 批量添加结算消息 --- app/src/main/java/com/yeshi/makemoney/app/utils/mq/CMQManager.java | 100 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 92 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/yeshi/makemoney/app/utils/mq/CMQManager.java b/app/src/main/java/com/yeshi/makemoney/app/utils/mq/CMQManager.java index d66368a..7ff1b4d 100644 --- a/app/src/main/java/com/yeshi/makemoney/app/utils/mq/CMQManager.java +++ b/app/src/main/java/com/yeshi/makemoney/app/utils/mq/CMQManager.java @@ -1,14 +1,16 @@ package com.yeshi.makemoney.app.utils.mq; -import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.google.gson.Gson; import com.qcloud.cmq.Message; +import com.yeshi.makemoney.app.dto.mq.AddGoldCornMQMsg; import com.yeshi.makemoney.app.dto.mq.ExtractTransferResultMQMsg; -import com.yeshi.makemoney.app.entity.money.Extract; -import org.yeshi.utils.CMQUtil; +import com.yeshi.makemoney.app.dto.mq.GoldCornSettleMQMsg; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.yeshi.utils.StringUtil; import org.yeshi.utils.mq.TDMQUtil; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -20,17 +22,24 @@ * @date 2022/4/1 17:06 */ public class CMQManager { + Logger logger= LoggerFactory.getLogger(CMQManager.class); private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25"; private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo"; private static CMQManager cmqManager; private static TDMQUtil tdmqUtil; - public static String EXTRACT_RESULT = "makemoney-extract-result"; + public static String QUEUE_EXTRACT_RESULT = "makemoney-extract-result"; + + public static String QUEUE_ADD_GOLDCORN = "makemoney-add-goldcorn"; + + public static String QUEUE_GOLDCORN_SETTLE = "makemoney-goldcorn-settle"; static { TDMQUtil.getInstance().init(secretId, secretKey, true); tdmqUtil = TDMQUtil.getInstance(); - tdmqUtil.createQueue(EXTRACT_RESULT); + tdmqUtil.createQueue(QUEUE_EXTRACT_RESULT); + tdmqUtil.createQueue(QUEUE_ADD_GOLDCORN); + tdmqUtil.createQueue(QUEUE_GOLDCORN_SETTLE); } public static CMQManager getInstance() { @@ -48,7 +57,7 @@ */ public void addExtractResultMsg(ExtractTransferResultMQMsg msg) { String content = new Gson().toJson(msg); - tdmqUtil.sendMsg(EXTRACT_RESULT, content); + tdmqUtil.sendMsg(QUEUE_EXTRACT_RESULT, content); } /** @@ -58,7 +67,7 @@ * @return */ public Map<String, ExtractTransferResultMQMsg> consumeExtractResultMsg(int count) { - List<Message> list = tdmqUtil.recieveMsg(count, EXTRACT_RESULT); + List<Message> list = tdmqUtil.recieveMsg(count, QUEUE_EXTRACT_RESULT); Map<String, ExtractTransferResultMQMsg> map = new HashMap<>(); if (list != null) { for (Message msg : list) { @@ -79,8 +88,83 @@ * @param receiptHandle */ public void deleteExtractResultMsg(String receiptHandle) { - tdmqUtil.deleteMsg(EXTRACT_RESULT, receiptHandle); + tdmqUtil.deleteMsg(QUEUE_EXTRACT_RESULT, receiptHandle); + } + + /** + * 娣诲姞閲戝竵 + **/ + + public void addAddGoldCornMsg(AddGoldCornMQMsg msg) { + String content = new Gson().toJson(msg); + + tdmqUtil.sendMsg(QUEUE_ADD_GOLDCORN, content); + } + + public Map<String, AddGoldCornMQMsg> consumeAddGoldCornMsg(int count) { + List<Message> list = tdmqUtil.recieveMsg(count, QUEUE_ADD_GOLDCORN); + Map<String, AddGoldCornMQMsg> map = new HashMap<>(); + if (list != null) { + for (Message msg : list) { + String result = msg.msgBody; + if (!StringUtil.isNullOrEmpty(result)) { + AddGoldCornMQMsg resultMQMsg = new Gson().fromJson(result, + AddGoldCornMQMsg.class); + map.put(msg.receiptHandle, resultMQMsg); + } + } + } + return map; + } + + public void deleteAddGoldCornMsg(String receiptHandle) { + tdmqUtil.deleteMsg(QUEUE_ADD_GOLDCORN, receiptHandle); + + } + + /** + * 閲戝竵缁撶畻 + **/ + public void addGoldCornSettleMsg(GoldCornSettleMQMsg msg) { + String content = new Gson().toJson(msg); + logger.debug("娣诲姞缁撶畻娑堟伅寮�濮嬶細",content); + TDMQUtil.getInstance().sendMsg(QUEUE_GOLDCORN_SETTLE, content); + //娣诲姞鏃ュ織 + logger.debug("娣诲姞缁撶畻娑堟伅缁撴潫锛歿}",content); + } + /** + * 鎵归噺娣诲姞 + **/ + public void addGoldCornSettleMsg(List<GoldCornSettleMQMsg> msgList) throws Exception { + List<String> contentList=new ArrayList<>(); + for(GoldCornSettleMQMsg msg:msgList) { + contentList.add(new Gson().toJson(msg)); + } + logger.debug("娣诲姞缁撶畻娑堟伅寮�濮嬶細{}",msgList.size()); + TDMQUtil.getInstance().batchSendMsg(QUEUE_GOLDCORN_SETTLE, contentList); + //娣诲姞鏃ュ織 + logger.debug("娣诲姞缁撶畻娑堟伅缁撴潫锛歿}",msgList.size()); + } + + public Map<String, GoldCornSettleMQMsg> consumeGoldCornSettleMsg(int count) { + List<Message> list = TDMQUtil.getInstance().recieveMsg(count, QUEUE_GOLDCORN_SETTLE); + Map<String, GoldCornSettleMQMsg> map = new HashMap<>(); + if (list != null) { + for (Message msg : list) { + String result = msg.msgBody; + if (!StringUtil.isNullOrEmpty(result)) { + GoldCornSettleMQMsg resultMQMsg = new Gson().fromJson(result, + GoldCornSettleMQMsg.class); + map.put(msg.receiptHandle, resultMQMsg); + } + } + } + return map; + } + + public void deleteGoldCornSettleMsg(String receiptHandle) { + TDMQUtil.getInstance().deleteMsg(QUEUE_GOLDCORN_SETTLE, receiptHandle); } -- Gitblit v1.8.0