From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 18 一月 2020 12:06:27 +0800 Subject: [PATCH] 用户注册信息 --- fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java | 127 +++++++++++++++++++++++++++++++++-------- 1 files changed, 101 insertions(+), 26 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java b/fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java index 600238f..8d082d1 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java @@ -1,8 +1,7 @@ package com.yeshi.fanli.util; -import java.lang.reflect.Type; +import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -11,18 +10,14 @@ import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import com.google.gson.reflect.TypeToken; import com.qcloud.cmq.Message; +import com.yeshi.fanli.dto.HongBao; import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo; import com.yeshi.fanli.entity.bus.user.Extract; -import com.yeshi.fanli.entity.bus.user.HongBao; import com.yeshi.fanli.entity.bus.user.HongBaoV2; import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.entity.push.PushQueueRecord; -import com.yeshi.fanli.entity.taobao.TaoBaoOrder; import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder; - -import net.sf.json.JSONObject; public class CMQManager { private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25"; @@ -31,6 +26,10 @@ private static CMQUtil cmqUtil; // TODO 璁㈠崟澶勭悊闃熷垪 public static String QUEUENAME_ORDER = "fanli-orders"; + + // 鍒氬垰浜х敓鐨勮鍗曞鐞嗛槦鍒� + public static String QUEUENAME_NEW_ORDER = "fanli-new-orders"; + // 鎻愮幇缁撴灉澶勭悊闃熷垪 public static String EXTRACT_RESULT = "extract-result"; // TODO IOS鎺ㄩ�侀槦鍒� @@ -48,30 +47,37 @@ public static String ORDER_WEIQUAN = "weiquan-order"; public static String GOODS_UPDATE = "goods_update_queue"; + // 閲嶈鏁版嵁鏇存柊 + public static String IMPORTANT_GOODS_UPDATE = "imp_goods_update_queue"; static { if (Constant.IS_TEST) { QUEUENAME_ORDER = "test-" + QUEUENAME_ORDER; + QUEUENAME_NEW_ORDER = "test-" + QUEUENAME_NEW_ORDER; EXTRACT_RESULT = "test-" + EXTRACT_RESULT; PUSH_IOS = "test-" + PUSH_IOS; FANLI_ORDER = "test-" + FANLI_ORDER; FANLI_ORDER_NEW = "test-" + FANLI_ORDER_NEW; FANLI_TICHENG_ORDER = "test-" + FANLI_TICHENG_ORDER; ORDER_WEIQUAN = "test-" + ORDER_WEIQUAN; + IMPORTANT_GOODS_UPDATE = "test-" + IMPORTANT_GOODS_UPDATE; } QUEUENAME_ORDER += "-" + Constant.systemCommonConfig.getProjectName(); + QUEUENAME_NEW_ORDER += "-" + Constant.systemCommonConfig.getProjectName(); EXTRACT_RESULT += "-" + Constant.systemCommonConfig.getProjectName(); PUSH_IOS += "-" + Constant.systemCommonConfig.getProjectName(); FANLI_ORDER += "-" + Constant.systemCommonConfig.getProjectName(); FANLI_ORDER_NEW += "-" + Constant.systemCommonConfig.getProjectName(); FANLI_TICHENG_ORDER += "-" + Constant.systemCommonConfig.getProjectName(); ORDER_WEIQUAN += "-" + Constant.systemCommonConfig.getProjectName(); + IMPORTANT_GOODS_UPDATE += "-" + Constant.systemCommonConfig.getProjectName(); cmqUtil = CMQUtil.getInstance(secretId, secretKey); // 鏈�澶ф秷鎭负1M cmqUtil.createQueue(QUEUENAME_ORDER, 1024 * 1024); + cmqUtil.createQueue(QUEUENAME_NEW_ORDER, 1024 * 1024); cmqUtil.createQueue(EXTRACT_RESULT); cmqUtil.createQueue(PUSH_IOS); cmqUtil.createQueue(FANLI_ORDER); @@ -79,6 +85,7 @@ cmqUtil.createQueue(FANLI_TICHENG_ORDER); cmqUtil.createQueue(ORDER_WEIQUAN); cmqUtil.createQueue(GOODS_UPDATE); + cmqUtil.createQueue(IMPORTANT_GOODS_UPDATE); } public static CMQManager getInstance() { @@ -92,11 +99,9 @@ * * @param orderMap */ - public void addTaoBaoOrderMsg(String orderId, List<TaoBaoOrder> orderList) { - if (!StringUtil.isNullOrEmpty(orderId) && orderList != null && orderList.size() > 0) { - JSONObject item = new JSONObject(); - item.put(orderId, new GsonBuilder().create().toJson(orderList)); - cmqUtil.sendMsg(QUEUENAME_ORDER, item.toString()); + public void addTaoBaoOrderMsg(String orderId) { + if (!StringUtil.isNullOrEmpty(orderId)) { + cmqUtil.sendMsg(QUEUENAME_ORDER, orderId); } } @@ -105,27 +110,18 @@ * * @param count */ - @SuppressWarnings("unchecked") - public Map<String, List<TaoBaoOrder>> consumeTaoBaoOrderMsg(int count) { + public List<String> consumeTaoBaoOrderMsg(int count) { + List<String> resultList = new ArrayList<>(); List<Message> list = cmqUtil.recieveMsg(count, QUEUENAME_ORDER); - Map<String, List<TaoBaoOrder>> map = new HashMap<>(); if (list != null) for (Message msg : list) { String result = msg.msgBody; - JSONObject data = JSONObject.fromObject(result); - Iterator<String> its = data.keySet().iterator(); - if (its.hasNext()) { - String orderId = its.next(); - Type type = new TypeToken<List<TaoBaoOrder>>() { - }.getType(); - List<TaoBaoOrder> orderList = new Gson().fromJson(data.optJSONArray(orderId).toString(), type); - map.put(orderId, orderList); - } + resultList.add(result); // 鍒犻櫎娑堟伅 cmqUtil.deleteMsg(QUEUENAME_ORDER, msg.receiptHandle); } - return map; + return resultList; } /** @@ -134,7 +130,46 @@ * @param receiptHandle */ public void deleteTaoBaoOrderMsg(String receiptHandle) { - cmqUtil.deleteMsg(EXTRACT_RESULT, receiptHandle); + cmqUtil.deleteMsg(QUEUENAME_ORDER, receiptHandle); + } + + /** + * 鍙戦�佽鍗曟秷鎭紙鍒氬垰浜х敓鐨勮鍗曪級 + * + * @param orderMap + */ + public void addTaoBaoNewOrderMsg(String orderId) { + if (!StringUtil.isNullOrEmpty(orderId)) { + cmqUtil.sendMsg(QUEUENAME_NEW_ORDER, orderId); + } + } + + /** + * 娑堣垂娣樺疂璁㈠崟娑堟伅锛堝垰鍒氫骇鐢熺殑璁㈠崟锛� + * + * @param count + */ + public List<String> consumeTaoBaoNewOrderMsg(int count) { + List<String> resultList = new ArrayList<>(); + List<Message> list = cmqUtil.recieveMsg(count, QUEUENAME_NEW_ORDER); + + if (list != null) + for (Message msg : list) { + String result = msg.msgBody; + resultList.add(result); + // 鍒犻櫎娑堟伅 + cmqUtil.deleteMsg(QUEUENAME_NEW_ORDER, msg.receiptHandle); + } + return resultList; + } + + /** + * 鍒犻櫎娣樺疂璁㈠崟娑堟伅锛堝垰鍒氫骇鐢熺殑璁㈠崟锛� + * + * @param receiptHandle + */ + public void deleteTaoBaoNewOrderMsg(String receiptHandle) { + cmqUtil.deleteMsg(QUEUENAME_NEW_ORDER, receiptHandle); } /** @@ -359,4 +394,44 @@ cmqUtil.deleteMsg(GOODS_UPDATE, receiptHandle); } + /** + * 娣诲姞娣樺疂閲嶈鍟嗗搧鏇存柊 + * + * @param actionId + */ + public void addTBImpGoodsUpdate(Long actionId) { + cmqUtil.sendMsg(IMPORTANT_GOODS_UPDATE, actionId + ""); + } + + /** + * 璇诲彇閲嶈鍟嗗搧鏇存柊闃熷垪 + * + * @param count + * @return + */ + public Map<String, Long> consumeTBImpGoodsUpdateMsg(int count) { + List<Message> list = cmqUtil.recieveMsg(count, IMPORTANT_GOODS_UPDATE); + if (list == null) { + return null; + } + + Map<String, Long> map = new HashMap<>(); + for (Message msg : list) { + String result = msg.msgBody; + if (!StringUtil.isNullOrEmpty(result)) { + map.put(msg.receiptHandle, Long.parseLong(result)); + } + } + return map; + } + + /** + * 鍒犻櫎闃熷垪娑堟伅 + * + * @param receiptHandle + */ + public void deleteTBImpGoodsUpdateMsg(String receiptHandle) { + cmqUtil.deleteMsg(IMPORTANT_GOODS_UPDATE, receiptHandle); + } + } -- Gitblit v1.8.0