KKSU
2024-06-13 197dc3fac63b0277a6c1703dac5f827e79d8ef58
星级矩阵
1 files modified
18 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -411,8 +411,15 @@
        /**
         * 买入先验证当前星团是否已经买入
         *      如果不是购买一星,则验证前一新团是否购买
         */
        if(ObjectUtil.isEmpty(buyStarDto.getNodeType())){
            throw new FebsException("选择购买的星团");
        }
        Integer nodeType = buyStarDto.getNodeType();
        if(NodeType.NODE_13.getNodeType() < nodeType || nodeType < NodeType.NODE_1.getNodeType()){
            throw new FebsException("选择购买的星团");
        }
        QueryWrapper<DbMemberNode> nodeQueryWrapper = new QueryWrapper<>();
        nodeQueryWrapper.eq("member_id",member.getId());
        nodeQueryWrapper.eq("type", nodeType);
@@ -421,6 +428,17 @@
        if(CollUtil.isNotEmpty(dbMemberNodes)){
            throw new FebsException("已购买");
        }
        if(NodeType.NODE_1.getNodeType() != buyStarDto.getNodeType()){
            Integer nextNodeType = nodeType - 1;
            QueryWrapper<DbMemberNode> nextWrapper = new QueryWrapper<>();
            nextWrapper.eq("member_id",member.getId());
            nextWrapper.eq("type", nextNodeType);
            nextWrapper.eq("work_state", DbMemberNode.STATE_ONE);
            List<DbMemberNode> nextNode = dbMemberNodeMapper.selectList(nextWrapper);
            if(CollUtil.isNotEmpty(nextNode)){
                throw new FebsException("请先购买上一星团");
            }
        }
        if (ObjectUtil.isEmpty(buyStarDto.getId())) {//第一次
            DappFundFlowEntity fundFlow = new DappFundFlowEntity(