fix
Helius
2022-08-23 c77eb2eb40a1ba47d61bd0365908ef5540ff083a
fix
2 files added
1 files modified
91 ■■■■■ changed files
src/main/java/cc/mrbird/febs/tree/MatrixTree.java 56 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/tree/MemberNode.java 26 ●●●●● patch | view | raw | blame | history
src/test/java/cc/mrbird/febs/ChainTest.java 9 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/tree/MatrixTree.java
New file
@@ -0,0 +1,56 @@
package cc.mrbird.febs.tree;
/**
 * @author wzy
 * @date 2022-08-23
 **/
public class MatrixTree {
    // 节点数量
    private int count = 0;
    private MemberNode root;
    public MatrixTree() {}
    public MatrixTree(MemberNode root) {
        count = 1;
        this.root = root;
    }
    public int getCount() {
        return count;
    }
    /**
     * 查找整个树下对应节点
     * @param param memberId/address/inviteId
     * @return
     */
    public MemberNode getNode(Object param) {
        return getNode(root, param);
    }
    /**
     * 查找某节点下的对应节点
     *
     * @param node 某节点
     * @param param memberId/address/inviteId
     * @return
     */
    public MemberNode getNode(MemberNode node, Object param) {
        if (node == null) {
            return null;
        }
        if (node.getMemberId().equals(param) || node.getAddress().equals(param) || node.getInviteId().equals(param)) {
            return node;
        }
        MemberNode leftNode = getNode(node.getLeft(), param);
        if (leftNode != null) {
            return leftNode;
        }
        return getNode(node.getRight(), param);
    }
}
src/main/java/cc/mrbird/febs/tree/MemberNode.java
New file
@@ -0,0 +1,26 @@
package cc.mrbird.febs.tree;
import lombok.Data;
import java.util.List;
/**
 * @author wzy
 * @date 2022-08-23
 **/
@Data
public class MemberNode {
    private Long memberId;
    private String address;
    private String inviteId;
    private MemberNode left;
    private MemberNode right;
    // 矩阵
    private List<MemberNode> matrix;
}
src/test/java/cc/mrbird/febs/ChainTest.java
@@ -10,6 +10,7 @@
import cc.mrbird.febs.dapp.mapper.DappOnlineTransferDao;
import cc.mrbird.febs.dapp.service.DappSystemService;
//import cc.mrbird.febs.job.SystemTradeJob;
import cc.mrbird.febs.dapp.service.impl.BscCoinContractEvent;
import cc.mrbird.febs.dapp.service.impl.BscUsdtContractEvent;
import cc.mrbird.febs.rabbit.producer.ChainProducer;
import com.alibaba.fastjson.JSONObject;
@@ -134,8 +135,14 @@
    @Autowired
    private BscUsdtContractEvent bscUsdtContractEvent;
    @Autowired
    private BscCoinContractEvent bscCoinContractEvent;
    @Test
    public void chainListener(){
        ChainService.contractEventListener(new BigInteger("20219055"), new BigInteger("20219055"), bscUsdtContractEvent, ChainEnum.BSC_USDT.name());
//        ChainService.contractEventListener(new BigInteger("20686754"), new BigInteger("20686754"), bscUsdtContractEvent, ChainEnum.BSC_USDT.name());
        ChainService.contractEventListener(new BigInteger("20687397"), new BigInteger("20687397"), bscCoinContractEvent, ChainEnum.BSC_TFC.name());
    }
}