KKSU
2024-09-30 36be00e0f3cbe0d559c646fd2977e6e3a74aa6f9
src/main/java/com/xcong/excoin/modules/coin/service/impl/ZhiyaServiceImpl.java
@@ -227,15 +227,15 @@
                if(CollUtil.isNotEmpty(Arrays.asList(split))){
                    for(String str : strings){
                        if(StrUtil.isNotEmpty(str)){
                            BigDecimal isAgent = BigDecimal.ZERO;
//                            BigDecimal isAgent = BigDecimal.ZERO;
                            MemberEntity memberShangJi = memberdao.selectMemberInfoByInviteId(str);
                            ZhiYaTeam zhiyaTeamByMemberId = zhiYaRecordDao.selectZhiyaTeamRecordByMemberId(memberShangJi.getId());
                            if(ObjectUtil.isNotEmpty(zhiyaTeamByMemberId)){
                                //更新数据
                                zhiyaTeamByMemberId.setZhiyaCnt(zhiyaTeamByMemberId.getZhiyaCnt().add(balance));
                                if(isAgent.compareTo(gricetoagent) >= 0){
                                    zhiyaTeamByMemberId.setIsAgent(1);
                                }
//                                if(isAgent.compareTo(gricetoagent) >= 0){
//                                    zhiyaTeamByMemberId.setIsAgent(1);
//                                }
                                zhiyaTeamDao.updateById(zhiyaTeamByMemberId);
                            }else{
                                //新增数据
@@ -245,14 +245,14 @@
                                zhiYaTeam.setMemberId(memberShangJi.getId());
                                if(ObjectUtil.isNotEmpty(zhiyaTeamByMemberId)){
                                    zhiYaTeam.setZhiyaCnt(zhiyaTeamByMemberId.getZhiyaCnt().add(balance));
                                    isAgent = zhiyaTeamByMemberId.getZhiyaCnt().add(balance);
//                                    isAgent = zhiyaTeamByMemberId.getZhiyaCnt().add(balance);
                                }else{
                                    zhiYaTeam.setZhiyaCnt(balance);
                                    isAgent = balance;
//                                    isAgent = balance;
                                }
                                if(isAgent.compareTo(gricetoagent) >= 0){
                                    zhiYaTeam.setIsAgent(1);
                                }
//                                if(isAgent.compareTo(gricetoagent) >= 0){
//                                    zhiYaTeam.setIsAgent(1);
//                                }
                                zhiyaTeamDao.insert(zhiYaTeam);
                            }
                        }
@@ -306,26 +306,32 @@
            zhiya.setFrozenBalance(gusdfrozenBalance.subtract(balance));
            zhiya.setAvailableBalance(gusdAvailableBalance.add(balance));
            zhiYaDao.updateById(zhiya);
            //赎回后奖励直接去币币账户
            Long sumReward = zhiYaDao.selectSumRewardByMemberIdAndRecordIdAndType(memberId,id,1);
            MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.GRICE.toString());
            memberWalletCoinEntity.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance().add(new BigDecimal(sumReward)));
            memberWalletCoinEntity.setTotalBalance(memberWalletCoinEntity.getTotalBalance().add(new BigDecimal(sumReward)));
            memberWalletCoinDao.updateById(memberWalletCoinEntity);
            //更新团队算力表
            MemberEntity memberEntity = memberdao.selectById(memberId);
            String refererIds = memberEntity.getRefererIds();
            if(StrUtil.isNotEmpty(refererIds)){
                BigDecimal gricetoagent = new BigDecimal(redisUtils.getString("GRICETOAGENT"));
//                BigDecimal gricetoagent = new BigDecimal(redisUtils.getString("GRICETOAGENT"));
                String[] split = refererIds.split(",");
                List<String> strings = Arrays.asList(split);
                if(CollUtil.isNotEmpty(Arrays.asList(split))){
                    for(String str : strings){
                        if(StrUtil.isNotEmpty(str)){
                            BigDecimal isAgent = BigDecimal.ZERO;
//                            BigDecimal isAgent = BigDecimal.ZERO;
                            MemberEntity memberShangJi = memberdao.selectMemberInfoByInviteId(str);
                            ZhiYaTeam zhiyaTeamByMemberId = zhiYaRecordDao.selectZhiyaTeamRecordByMemberId(memberShangJi.getId());
                            if(ObjectUtil.isNotEmpty(zhiyaTeamByMemberId)){
                                //更新数据
                                zhiyaTeamByMemberId.setZhiyaCnt(zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance));
                                isAgent = zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance);
                                if(isAgent.compareTo(gricetoagent) >= 0){
                                    zhiyaTeamByMemberId.setIsAgent(1);
                                }
//                                isAgent = zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance);
//                                if(isAgent.compareTo(gricetoagent) >= 0){
//                                    zhiyaTeamByMemberId.setIsAgent(1);
//                                }
                                zhiyaTeamDao.updateById(zhiyaTeamByMemberId);
                            }else{
                                //新增数据
@@ -335,14 +341,14 @@
                                zhiYaTeam.setMemberId(memberShangJi.getId());
                                if(ObjectUtil.isNotEmpty(zhiyaTeamByMemberId)){
                                    zhiYaTeam.setZhiyaCnt(zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance));
                                    isAgent = zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance);
//                                    isAgent = zhiyaTeamByMemberId.getZhiyaCnt().subtract(balance);
                                }else{
                                    zhiYaTeam.setZhiyaCnt(balance);
                                    isAgent = balance;
//                                    isAgent = balance;
                                }
                                if(isAgent.compareTo(gricetoagent) >= 0){
                                    zhiYaTeam.setIsAgent(1);
                                }
//                                if(isAgent.compareTo(gricetoagent) >= 0){
//                                    zhiYaTeam.setIsAgent(1);
//                                }
                                zhiyaTeamDao.insert(zhiYaTeam);
                            }
                        }
@@ -415,13 +421,13 @@
                            zhiyaRewardEntity.setType(1);
                            MemberEntity member = memberdao.selectById(zhiYaRecordEntity.getMemberId());
                            //获取当前人的上两级
                            BigDecimal multiplyReward = BigDecimal.ZERO;
                            BigDecimal multiplyReward = zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward);
                            MemberEntity memberEntity = memberdao.selectMemberInfoByInviteId(member.getRefererId());
                            if(ObjectUtil.isNotEmpty(memberEntity)){
                                //以及1代理的比例
                                BigDecimal agetShangji = new BigDecimal(redisUtils.getString("GUSDREWARDAGENTONE"));
                                BigDecimal multiply = zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward).multiply(agetShangji);
                                multiplyReward = (zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward).subtract(multiply));
                                multiplyReward = multiplyReward.subtract(multiply);
                                ZhiyaRewardEntity zhiyaRewardEntitySJ = new ZhiyaRewardEntity();
                                zhiyaRewardEntitySJ.setRecordId(zhiYaRecordEntity.getId());
                                zhiyaRewardEntitySJ.setRecordNo(zhiYaRecordEntity.getOrderNo());
@@ -432,18 +438,18 @@
                                MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberEntity.getId(), CoinTypeEnum.GRICE.toString());
                                memberWalletCoinEntity.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance().add(multiply));
                                memberWalletCoinEntity.setTotalBalance(memberWalletCoinEntity.getAvailableBalance().add(multiply));
                                memberWalletCoinEntity.setTotalBalance(memberWalletCoinEntity.getTotalBalance().add(multiply));
                                memberWalletCoinDao.updateById(memberWalletCoinEntity);
                                MemberEntity memberEntitySSJ = memberdao.selectMemberInfoByInviteId(memberEntity.getRefererId());
                                if(ObjectUtil.isNotEmpty(memberEntitySSJ)){
                                    BigDecimal agetSSJ = new BigDecimal(redisUtils.getString("GUSDREWARDAGENTTWO"));
                                    BigDecimal multiplySSJ = zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward).multiply(agetSSJ);
                                    multiplyReward = (zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward).subtract(multiply).subtract(multiplySSJ));
                                    multiplyReward = multiplyReward.subtract(multiplySSJ);
                                    MemberWalletCoinEntity memberWalletCoinEntitySSJ = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberEntity.getId(), CoinTypeEnum.GRICE.toString());
                                    memberWalletCoinEntitySSJ.setAvailableBalance(memberWalletCoinEntitySSJ.getAvailableBalance().add(multiply));
                                    memberWalletCoinEntitySSJ.setTotalBalance(memberWalletCoinEntitySSJ.getAvailableBalance().add(multiply));
                                    MemberWalletCoinEntity memberWalletCoinEntitySSJ = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberEntitySSJ.getId(), CoinTypeEnum.GRICE.toString());
                                    memberWalletCoinEntitySSJ.setAvailableBalance(memberWalletCoinEntitySSJ.getAvailableBalance().add(multiplySSJ));
                                    memberWalletCoinEntitySSJ.setTotalBalance(memberWalletCoinEntitySSJ.getTotalBalance().add(multiplySSJ));
                                    memberWalletCoinDao.updateById(memberWalletCoinEntitySSJ);
                                    ZhiyaRewardEntity zhiyaRewardEntitySSJ = new ZhiyaRewardEntity();
@@ -454,8 +460,6 @@
                                    zhiyaRewardEntitySSJ.setRewardAmout(multiplySSJ);
                                    zhiyaRewardDao.insert(zhiyaRewardEntitySSJ);
                                }
                            }else{
                                multiplyReward = (zhiYaRecordEntity.getZhiyaCnt().multiply(gusdReward));
                            }
                            zhiyaRewardEntity.setRewardAmout(multiplyReward);
                            zhiyaRewardDao.insert(zhiyaRewardEntity);