From a70577eb2258f67bde70e5f995c286c9aa5fb220 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 11 Nov 2022 02:27:25 +0800
Subject: [PATCH] 20221021

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 10 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
index fc9d5c2..c105759 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
@@ -176,15 +176,38 @@
 
         String refererIds = dappMemberEntity.getRefererIds();
         List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
+        //只有上级用户金额大于51U才能得到对应的佣金
+        ArrayList<String> refererIdLisstUp = new ArrayList<>();
+        for(String inviteId : refererIdList){
+            DappMemberEntity dappMemberUp = dappMemberDao.selectMemberInfoByInviteId(inviteId);
+            if(ObjectUtil.isNotEmpty(dappMemberUp)){
+                DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(dappMemberUp.getId());
+                if(AppContants.ONHOOK_BASIC_AMOUNT.compareTo(dappWalletCoinEntity.getAvailableAmount())<=0){
+                    refererIdLisstUp.add(inviteId);
+                }
+            }
+        }
         //生成流水佣金和盈利分成和流水记录,返回剩余盈利
-        BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdList, igtOnHookPlanOrder.getProfit(),igtOnHookPlanOrder.getId());
-        //平台分成,返回剩余盈利
-        BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,igtOnHookPlanOrder.getProfit(),igtOnHookPlanOrder.getId());
-        totalProfit = totalProfit.subtract(profitSharingTotal).subtract(systemTotal);
-//        BigDecimal totalMoney = avaAmount.add(totalProfit);
+        BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdLisstUp, totalProfit,igtOnHookPlanOrder.getId());
+        //生成流水佣金和盈利分成和流水记录,返回盈利分成和流水佣金总共分成
+//        BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdList, totalProfit,igtOnHookPlanOrder.getId());
+        //平台分成
+        //平台拿走35%盈利分成和流水佣金剩下的全部
+        BigDecimal systemAdd = totalProfit.multiply(new BigDecimal(0.4)).subtract(profitSharingTotal);
+        BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,systemAdd,igtOnHookPlanOrder.getId());
+        //个人固定拿走60%
+        totalProfit = totalProfit.multiply(new BigDecimal(0.6));
+        igtOnHookPlanOrder.setProfit(totalProfit);
+        igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
+
         BigDecimal totalMoney = planAmount.add(totalProfit);
         DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
         dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),totalMoney);
+
+        BigDecimal add = dappWalletCoinEntity.getAvailableAmount().add(totalMoney);
+        BigDecimal subtract = add.subtract(totalProfit);
+        DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberId, subtract, totalProfit, add, "投注盈利", 5,igtOnHookPlanOrder.getId());
+        dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
 
         DappOnHookDone dappOnHookDone = new DappOnHookDone(memberId, igtOnHookPlanOrder.getId());
         dappOnHookDoneDao.insert(dappOnHookDone);
@@ -527,12 +550,25 @@
 
         String refererIds = dappMemberEntity.getRefererIds();
         List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
+        //只有上级用户金额大于51U才能得到对应的佣金
+        ArrayList<String> refererIdLisstUp = new ArrayList<>();
+        for(String inviteId : refererIdList){
+            DappMemberEntity dappMemberUp = dappMemberDao.selectMemberInfoByInviteId(inviteId);
+            if(ObjectUtil.isNotEmpty(dappMemberUp)){
+                DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(dappMemberUp.getId());
+                if(AppContants.ONHOOK_BASIC_AMOUNT.compareTo(dappWalletCoinEntity.getAvailableAmount())<=0){
+                    refererIdLisstUp.add(inviteId);
+                }
+            }
+        }
         //生成流水佣金和盈利分成和流水记录,返回剩余盈利
-        BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdList, totalProfit,igtOnHookPlanOrder.getId());
-        //平台分成,返回剩余盈利
-        BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,totalProfit,igtOnHookPlanOrder.getId());
-        totalProfit = totalProfit.subtract(profitSharingTotal).subtract(systemTotal);
-
+        BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdLisstUp, totalProfit,igtOnHookPlanOrder.getId());
+        //平台分成
+        //平台拿走35%盈利分成和流水佣金剩下的全部
+        BigDecimal systemAdd = totalProfit.multiply(new BigDecimal(0.4)).subtract(profitSharingTotal);
+        BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,systemAdd,igtOnHookPlanOrder.getId());
+        //个人固定拿走60%
+        totalProfit = totalProfit.multiply(new BigDecimal(0.6));
         igtOnHookPlanOrder.setState(2);
         //一次挂机剩余的全部金额
         BigDecimal totalMoney = totalProfit.add(planAmount);

--
Gitblit v1.9.1