| | |
| | | package com.yeshi.fanli.util.mq.cmq.order;
|
| | |
|
| | | import java.util.HashMap;
|
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | |
|
| | | import org.yeshi.utils.CMQUtil;
|
| | |
|
| | | import com.qcloud.cmq.Message;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | |
|
| | | public class SuningOrderCMQManager {
|
| | |
|
| | | private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25";
|
| | | private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo";
|
| | | private static SuningOrderCMQManager suningOrderCMQManager;
|
| | | private static CMQUtil cmqUtil;
|
| | |
|
| | | public static String SUNING_ORDER = "order-suning";
|
| | |
|
| | | static {
|
| | | cmqUtil = CMQUtil.getInstance(secretId, secretKey);
|
| | | SUNING_ORDER += "-" + Constant.systemCommonConfig.getProjectName();
|
| | | cmqUtil.createQueue(SUNING_ORDER);
|
| | | }
|
| | |
|
| | | public static SuningOrderCMQManager getInstance() {
|
| | | if (suningOrderCMQManager == null)
|
| | | suningOrderCMQManager = new SuningOrderCMQManager();
|
| | | return suningOrderCMQManager;
|
| | | }
|
| | |
|
| | | /**
|
| | | * 添加唯品会订单到队列
|
| | | * |
| | | * @param orderId
|
| | | */
|
| | | public void addSuningOrder(String orderId) {
|
| | | if (StringUtil.isNullOrEmpty(orderId))
|
| | | return;
|
| | | cmqUtil.sendMsg(SUNING_ORDER, orderId);
|
| | | }
|
| | |
|
| | | /**
|
| | | * 消费队列消息
|
| | | * |
| | | * @param count
|
| | | * @return
|
| | | */
|
| | | public Map<String, String> consumeSuningOrder(int count) {
|
| | | List<Message> list = cmqUtil.recieveMsg(count, SUNING_ORDER);
|
| | | Map<String, String> map = new HashMap<>();
|
| | | if (list != null)
|
| | | for (Message msg : list) {
|
| | | String result = msg.msgBody;
|
| | | map.put(msg.receiptHandle, result);
|
| | | }
|
| | | return map;
|
| | | }
|
| | |
|
| | | /**
|
| | | * 删除唯品会队列
|
| | | * |
| | | * @param receiptHandle
|
| | | */
|
| | | public void deleteSuningOrder(String receiptHandle) {
|
| | | cmqUtil.deleteMsg(SUNING_ORDER, receiptHandle);
|
| | | }
|
| | |
|
| | | }
|
| | | package com.yeshi.fanli.util.mq.cmq.order; |
| | | |
| | | import com.qcloud.cmq.Message; |
| | | import com.yeshi.fanli.util.Constant; |
| | | import com.yeshi.fanli.util.StringUtil; |
| | | import com.yeshi.fanli.util.mq.cmq.TDMQUtil; |
| | | |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | public class SuningOrderCMQManager { |
| | | |
| | | private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25"; |
| | | private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo"; |
| | | private static SuningOrderCMQManager suningOrderCMQManager; |
| | | |
| | | public static String SUNING_ORDER = "order-suning"; |
| | | |
| | | static { |
| | | TDMQUtil.getInstance().init(secretId, secretKey, Constant.TDMQ_PUBLIC); |
| | | |
| | | SUNING_ORDER += "-" + Constant.systemCommonConfig.getProjectName(); |
| | | TDMQUtil.getInstance().createQueue(SUNING_ORDER); |
| | | } |
| | | |
| | | public static SuningOrderCMQManager getInstance() { |
| | | if (suningOrderCMQManager == null) |
| | | suningOrderCMQManager = new SuningOrderCMQManager(); |
| | | return suningOrderCMQManager; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 消费队列消息 |
| | | * |
| | | * @param count |
| | | * @return |
| | | */ |
| | | public Map<String, String> consumeSuningOrder(int count) { |
| | | List<Message> list = TDMQUtil.getInstance().recieveMsg(count, SUNING_ORDER); |
| | | Map<String, String> map = new HashMap<>(); |
| | | if (list != null) |
| | | for (Message msg : list) { |
| | | String result = msg.msgBody; |
| | | map.put(msg.receiptHandle, result); |
| | | } |
| | | return map; |
| | | } |
| | | |
| | | /** |
| | | * 删除唯品会队列 |
| | | * |
| | | * @param receiptHandle |
| | | */ |
| | | public void deleteSuningOrder(String receiptHandle) { |
| | | TDMQUtil.getInstance().deleteMsg(SUNING_ORDER, receiptHandle); |
| | | } |
| | | |
| | | } |