admin
2020-05-20 98b1a0affd69bbe63223c21fdd2c404e8bedfccb
fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java
@@ -12,6 +12,7 @@
import com.google.gson.GsonBuilder;
import com.qcloud.cmq.Message;
import com.yeshi.fanli.dto.HongBao;
import com.yeshi.fanli.dto.mq.UidDateDTO;
import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo;
import com.yeshi.fanli.entity.bus.user.Extract;
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
@@ -24,7 +25,7 @@
   private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo";
   private static CMQManager cmqManager;
   private static CMQUtil cmqUtil;
   // TODO 订单处理队列
   // 订单处理队列
   public static String QUEUENAME_ORDER = "fanli-orders";
   // 刚刚产生的订单处理队列
@@ -32,18 +33,21 @@
   // 提现结果处理队列
   public static String EXTRACT_RESULT = "extract-result";
   // TODO IOS推送队列
   // IOS推送队列
   public static String PUSH_IOS = "push-ios";
   // TODO 返利队列
   // 返利队列
   public static String FANLI_ORDER = "fanli-order";
   // TODO 返利队列
   // 返利队列
   public static String FANLI_ORDER_NEW = "fanli-order-new";
   // TODO 提成订单
   public static String FANLI_TICHENG_ORDER = "fanli-ticheng-order";
   // TODO 维权订单
   // 分享订单收益
   public static String FANLI_SHARE_ORDER = "fanli-share-order";
   // 维权订单
   public static String ORDER_WEIQUAN = "weiquan-order";
   public static String GOODS_UPDATE = "goods_update_queue";
@@ -59,9 +63,10 @@
         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;
         FANLI_SHARE_ORDER = "test-" + FANLI_SHARE_ORDER;
      }
      QUEUENAME_ORDER += "-" + Constant.systemCommonConfig.getProjectName();
@@ -70,9 +75,9 @@
      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();
      FANLI_SHARE_ORDER += "-" + Constant.systemCommonConfig.getProjectName();
      cmqUtil = CMQUtil.getInstance(secretId, secretKey);
      // 最大消息为1M
@@ -82,10 +87,12 @@
      cmqUtil.createQueue(PUSH_IOS);
      cmqUtil.createQueue(FANLI_ORDER);
      cmqUtil.createQueue(FANLI_ORDER_NEW);
      cmqUtil.createQueue(FANLI_TICHENG_ORDER);
      cmqUtil.createQueue(ORDER_WEIQUAN);
      cmqUtil.createQueue(GOODS_UPDATE);
      cmqUtil.createQueue(IMPORTANT_GOODS_UPDATE);
      cmqUtil.createQueue(FANLI_SHARE_ORDER);
   }
   public static CMQManager getInstance() {
@@ -263,26 +270,29 @@
      cmqUtil.deleteMsg(FANLI_ORDER_NEW, receiptHandle);
   }
   // 提成返利
   public void addFanLiTiChengMsg(Long uid) {
      cmqUtil.sendMsg(FANLI_TICHENG_ORDER, uid + "");
   // 分享订单收益
   public void addFanLiShareMsg(UidDateDTO dto) {
      cmqUtil.sendMsg(FANLI_SHARE_ORDER, new Gson().toJson(dto));
   }
   public Map<String, Long> consumeFanLiTiChengMsg(int count) {
      List<Message> list = cmqUtil.recieveMsg(count, FANLI_TICHENG_ORDER);
      Map<String, Long> map = new HashMap<>();
   public Map<String, UidDateDTO> consumeFanLiShareMsg(int count) {
      List<Message> list = cmqUtil.recieveMsg(count, FANLI_SHARE_ORDER);
      Map<String, UidDateDTO> map = new HashMap<>();
      if (list != null)
         for (Message msg : list) {
            String result = msg.msgBody;
            UidDateDTO dto = new Gson().fromJson(result, UidDateDTO.class);
            if (!StringUtil.isNullOrEmpty(result)) {
               map.put(msg.receiptHandle, Long.parseLong(result));
               map.put(msg.receiptHandle, dto);
            }
         }
      return map;
   }
   public void deleteFanLiTiChengMsg(String receiptHandle) {
      cmqUtil.deleteMsg(FANLI_TICHENG_ORDER, receiptHandle);
   public void deleteFanLiShareMsg(String receiptHandle) {
      cmqUtil.deleteMsg(FANLI_SHARE_ORDER, receiptHandle);
   }
   // 维权订单