src/main/java/cc/mrbird/febs/dapp/entity/DappAchieve.java
@@ -19,6 +19,7 @@ private Long memberId; private BigDecimal price;//投入GFA数量 private BigDecimal amount;//投入GFA数量 private BigDecimal amountDone;//累计产出 src/main/java/cc/mrbird/febs/dapp/service/impl/AsyncCjServiceImpl.java
@@ -442,7 +442,7 @@ queryWrapper.eq("state",DappAchieve.STATUS_ING); List<DappAchieve> dappAchieveSumList = dappAchieveMapper.selectList(queryWrapper); //个人团队总业绩 BigDecimal teamAchieveMemberSum = dappAchieveSumList.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal teamAchieveMemberSum = dappAchieveSumList.stream().map(item-> item.getAmount().multiply(item.getPrice())).reduce(BigDecimal.ZERO, BigDecimal::add); if(BigDecimal.ZERO.compareTo(teamAchieveMemberSum) >= 0){ continue; } @@ -517,10 +517,13 @@ BigDecimal multiplyDivideEveryUsdt = divideEveryUsdt.multiply(selfPercentMultiply); BigDecimal multiplyDivideEveryCoin = divideEveryCoin.multiply(selfPercentMultiply); //当前生效中的质押总数 BigDecimal amountMemberTotal = dappAchieves.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal amountMemberTotal = dappAchieves.stream().map(item-> item.getAmount().multiply(item.getPrice())).reduce(BigDecimal.ZERO, BigDecimal::add); if(BigDecimal.ZERO.compareTo(amountMemberTotal) >= 0){ return; } BigDecimal everyUsdt = multiplyDivideEveryUsdt.divide(amountMemberTotal,8,BigDecimal.ROUND_DOWN); BigDecimal everyCoin = multiplyDivideEveryCoin.divide(amountMemberTotal,8,BigDecimal.ROUND_DOWN); @@ -528,7 +531,8 @@ Set<Long> set = collect.keySet(); // 得到所有key的集合 for (Long memberId : set) { //当前每个人生效中的质押总数 BigDecimal amountMember = collect.get(memberId).stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); // BigDecimal amountMember = collect.get(memberId).stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal amountMember = collect.get(memberId).stream().map(item-> item.getAmount().multiply(item.getPrice())).reduce(BigDecimal.ZERO, BigDecimal::add); //这个人实际可以分到的数量USDT BigDecimal multiplyUsdt = amountMember.multiply(everyUsdt).setScale(8, BigDecimal.ROUND_DOWN); if(BigDecimal.ZERO.compareTo(multiplyUsdt) >= 0){ src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -379,10 +379,28 @@ Set<Long> collect1 = filteredList.stream().map(DappAchieve::getMemberId).collect(Collectors.toSet()); teamListVo.setAvaCount(CollUtil.isEmpty(collect1) ? 0 : collect1.size()); BigDecimal teamAchieveMemberSum = dappAchieveSumList.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); // BigDecimal teamAchieveMemberSum = dappAchieveSumList.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal teamAchieveMemberSum = dappAchieveSumList.stream().map(item-> item.getAmount().multiply(item.getPrice())).reduce(BigDecimal.ZERO, BigDecimal::add); // BigDecimal teamAchieveMemberSum = BigDecimal.ZERO; // if(CollUtil.isNotEmpty(dappAchieveSumList)){ // for(DappAchieve dappAchieve : dappAchieveSumList){ // BigDecimal price = dappAchieve.getPrice(); // BigDecimal amount = dappAchieve.getAmount(); // teamAchieveMemberSum = teamAchieveMemberSum.add(price.multiply(amount)).setScale(2,BigDecimal.ROUND_DOWN); // } // } teamListVo.setTeamAmount(teamAchieveMemberSum); BigDecimal avaAmount = filteredList.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); // BigDecimal avaAmount = filteredList.stream().map(DappAchieve::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal avaAmount = filteredList.stream().map(item-> item.getAmount().multiply(item.getPrice())).reduce(BigDecimal.ZERO, BigDecimal::add); // BigDecimal avaAmount = BigDecimal.ZERO; // if(CollUtil.isNotEmpty(filteredList)){ // for(DappAchieve dappAchieve : filteredList){ // BigDecimal price = dappAchieve.getPrice(); // BigDecimal amount = dappAchieve.getAmount(); // avaAmount = avaAmount.add(price.multiply(amount)).setScale(2,BigDecimal.ROUND_DOWN); // } // } teamListVo.setAvaAmount(avaAmount); }else{ teamListVo.setAvaCount(0); src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -323,6 +323,7 @@ //新增一条用户质押记录 DappAchieve dappAchieve = new DappAchieve(); dappAchieve.setMemberId(memberId); dappAchieve.setPrice(transferDto.getPrice()); dappAchieve.setAmount(amount); BigDecimal achieveReleasePercent = new BigDecimal("0.01").multiply( new BigDecimal(redisUtils.getString(DataDicEnum.GFA_ACHIEVE_RELEASE.getValue())).setScale(2,BigDecimal.ROUND_DOWN)