admin
2025-02-25 30d8e227e8d823b6c38c3b9c90ac2df03b63befe
fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/order/TeamOrderCMQManager.java
@@ -1,21 +1,20 @@
package com.yeshi.fanli.util.mq.cmq.order;
import com.google.gson.Gson;
import com.qcloud.cmq.Message;
import com.yeshi.fanli.dto.mq.UidDateDTO;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.mq.cmq.TDMQUtil;
import com.yeshi.fanli.util.mq.rabbit.RabbitmqSenderUtil;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
@Component
public class TeamOrderCMQManager {
    private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25";
    private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo";
    private static TeamOrderCMQManager jdOrderCMQManager;
    @Resource
    private RabbitTemplate rabbitTemplate;
    // 团队分红
    public static String TEAM_DIVIDENTS_PRE = "team_dividents_pre";
@@ -28,118 +27,31 @@
    public static String FANLI_TEAM_INCOME_ORDER = "fanli-team-income-order";
    static {
        TDMQUtil.getInstance().init(secretId, secretKey, Constant.TDMQ_PUBLIC);
        TEAM_DIVIDENTS_PRE += "-" + Constant.systemCommonConfig.getProjectName();
        FANLI_TEAM_INCOME_ORDER_PRE += "-" + Constant.systemCommonConfig.getProjectName();
        TEAM_DIVIDENTS += "-" + Constant.systemCommonConfig.getProjectName();
        FANLI_TEAM_INCOME_ORDER += "-" + Constant.systemCommonConfig.getProjectName();
        TDMQUtil.getInstance().createQueue(TEAM_DIVIDENTS_PRE);
        TDMQUtil.getInstance().createQueue(FANLI_TEAM_INCOME_ORDER_PRE);
        TDMQUtil.getInstance().createQueue(TEAM_DIVIDENTS);
        TDMQUtil.getInstance().createQueue(FANLI_TEAM_INCOME_ORDER);
    }
    public static TeamOrderCMQManager getInstance() {
        if (jdOrderCMQManager == null)
            jdOrderCMQManager = new TeamOrderCMQManager();
        return jdOrderCMQManager;
    }
    // 团队分红预到账
    public void addTeamDividentsPreMsg(UidDateDTO dto) {
        TDMQUtil.getInstance().sendMsg(TEAM_DIVIDENTS_PRE, new Gson().toJson(dto));
    }
    public Map<String, UidDateDTO> consumeTeamDividentsPreMsg(int count) {
        Gson gson = new Gson();
        List<Message> list = TDMQUtil.getInstance().recieveMsg(count, TEAM_DIVIDENTS_PRE);
        Map<String, UidDateDTO> map = new HashMap<>();
        if (list != null)
            for (Message msg : list) {
                String result = msg.msgBody;
                if (!StringUtil.isNullOrEmpty(result)) {
                    map.put(msg.receiptHandle, gson.fromJson(result, UidDateDTO.class));
                }
            }
        return map;
    }
    public void deleteTeamDividentsPreMsg(String receiptHandle) {
        TDMQUtil.getInstance().deleteMsg(TEAM_DIVIDENTS_PRE, receiptHandle);
        RabbitmqSenderUtil.sendQueueMsg(rabbitTemplate, TEAM_DIVIDENTS_PRE, new Gson().toJson(dto));
    }
    // 团队收益预到账
    public void addFanLiTeamIncomePreMsg(UidDateDTO dto) {
        TDMQUtil.getInstance().sendMsg(FANLI_TEAM_INCOME_ORDER_PRE, new Gson().toJson(dto) + "");
        RabbitmqSenderUtil.sendQueueMsg(rabbitTemplate, FANLI_TEAM_INCOME_ORDER_PRE, new Gson().toJson(dto) + "");
    }
    public Map<String, UidDateDTO> consumeFanLiTeamIncomePreMsg(int count) {
        List<Message> list = TDMQUtil.getInstance().recieveMsg(count, FANLI_TEAM_INCOME_ORDER_PRE);
        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, dto);
                }
            }
        return map;
    }
    public void deleteTeamIncomePreMsg(String receiptHandle) {
        TDMQUtil.getInstance().deleteMsg(FANLI_TEAM_INCOME_ORDER_PRE, receiptHandle);
    }
    // 团队分红到账
    public void addTeamDividentsMsg(UidDateDTO dto) {
        TDMQUtil.getInstance().sendMsg(TEAM_DIVIDENTS, new Gson().toJson(dto));
    }
    public Map<String, UidDateDTO> consumeTeamDividentsMsg(int count) {
        Gson gson = new Gson();
        List<Message> list = TDMQUtil.getInstance().recieveMsg(count, TEAM_DIVIDENTS);
        Map<String, UidDateDTO> map = new HashMap<>();
        if (list != null)
            for (Message msg : list) {
                String result = msg.msgBody;
                if (!StringUtil.isNullOrEmpty(result)) {
                    map.put(msg.receiptHandle, gson.fromJson(result, UidDateDTO.class));
                }
            }
        return map;
    }
    public void deleteTeamDividentsMsg(String receiptHandle) {
        TDMQUtil.getInstance().deleteMsg(TEAM_DIVIDENTS, receiptHandle);
        RabbitmqSenderUtil.sendQueueMsg(rabbitTemplate, TEAM_DIVIDENTS, new Gson().toJson(dto));
    }
    // 团队收益到账
    public void addFanLiTeamIncomeMsg(UidDateDTO dto) {
        TDMQUtil.getInstance().sendMsg(FANLI_TEAM_INCOME_ORDER, new Gson().toJson(dto) + "");
    }
    public Map<String, UidDateDTO> consumeFanLiTeamIncomeMsg(int count) {
        List<Message> list = TDMQUtil.getInstance().recieveMsg(count, FANLI_TEAM_INCOME_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, dto);
                }
            }
        return map;
    }
    public void deleteTeamIncomeMsg(String receiptHandle) {
        TDMQUtil.getInstance().deleteMsg(FANLI_TEAM_INCOME_ORDER, receiptHandle);
        RabbitmqSenderUtil.sendQueueMsg(rabbitTemplate, FANLI_TEAM_INCOME_ORDER, new Gson().toJson(dto)+"");
    }
}