| | |
| | | return; |
| | | } |
| | | //有,则上级节点出局复投,轮数加1,复投逻辑 |
| | | memberNodeNext(dbMemberNodeRoot); |
| | | this.memberNodeNext(dbMemberNodeRoot); |
| | | }else{//父节点为左节点,那么没人出局 |
| | | return; |
| | | } |
| | |
| | | * 有,则上级节点出局复投,轮数加1,复投逻辑 |
| | | * @param dbMemberNodeRoot |
| | | */ |
| | | @Override |
| | | public void memberNodeNext(DbMemberNode dbMemberNodeRoot) { |
| | | log.info("进入复投"); |
| | | |
| | |
| | | //如果是第一轮,下一个新团有投入,则产生收益 |
| | | //复投或者收益的金额 |
| | | if(1 == countFund){//第一轮 |
| | | //复投本轮,轮数 +1 |
| | | futouSixTeen(memberId,dbMemberNodeRoot.getAmount(),type,countFund+1); |
| | | //收益复投(当前的下一个星团没有已投入),还是收益提出 |
| | | Integer nextType = type + 1; |
| | | QueryWrapper<DbMemberNode> nodeQueryWrapper = new QueryWrapper<>(); |
| | |
| | | }else{ |
| | | perkSevenTeen(memberId,perkAmount,countFund); |
| | | } |
| | | //复投本轮,轮数 +1 |
| | | futouSixTeen(memberId,dbMemberNodeRoot.getAmount(),type,countFund+1); |
| | | }else{//2-9轮 |
| | | //复投本轮,轮数 +1 |
| | | futouSixTeen(memberId,dbMemberNodeRoot.getAmount(),type,countFund+1); |
| | |
| | | if(ObjectUtil.isEmpty(dbMemberNodeRoot)){ |
| | | return; |
| | | } |
| | | if(dbMemberNodeRoot.getLeftRight() == 1){ |
| | | return; |
| | | } |
| | | //每个星团,只复投10轮 |
| | | if(10 < dbMemberNodeRoot.getCountFund()){ |
| | | return; |
| | | } |
| | | |
| | | memberNodeNext(dbMemberNodeRoot); |
| | | this.memberNodeNext(dbMemberNodeRoot); |
| | | } |
| | | } |
| | | |