From d3744ab287cce63eabfb025f548c6e6164050c10 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 27 Jun 2023 11:18:32 +0800
Subject: [PATCH] 还有就是系统开放大额入单,不限制每一个帐号一千封顶。开放后每一个帐号最高入金十万美金。

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java |  139 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 103 insertions(+), 36 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
index c67cfdb..8138948 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -836,18 +836,19 @@
         /**
          * 20%全网加权平分,按照个人投资占比全网的比例去平分
          */
-        BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
-        DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
-                1L,
-                poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
-                FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
-                2,
-                BigDecimal.ZERO,
-                null,
-                chergeRecordId);
-        dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
-        dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
-                1L,1);
+        chainProducer.sendAllMemberPerkAvaMsg(poolAllMemberAFundFlow.getId());
+//        BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
+//        DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
+//                1L,
+//                poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+//                FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
+//                2,
+//                BigDecimal.ZERO,
+//                null,
+//                chergeRecordId);
+//        dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
+//        dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+//                1L,1);
 
         /**
          * 10%直推
@@ -904,7 +905,7 @@
                         chergeRecordId);
                 dappFundFlowDao.insert(directAPercentFundFlowToMemberAva);
                 dappWalletService.updateWalletMineWithLock(directAPercentCnt.subtract(directAPercentFundFlowToMemberFlag),
-                        1L,1);
+                        AppContants.YL_MEMBER_ID,1);
             }
         }
         /**
@@ -949,7 +950,7 @@
                     chergeRecordId);
             dappFundFlowDao.insert(nodeAPercentFundFlowAva);
             dappWalletService.updateWalletMineWithLock(nodeAPercentCnt.subtract(nodeAPercentCntAva),
-                    1L,1);
+                    AppContants.YL_MEMBER_ID,1);
         }
         /**
          * 5%基金会
@@ -963,7 +964,7 @@
 
         //生成一条5%基金会的资金流水记录
         DappFundFlowEntity foundationAPercentFundFlow = new DappFundFlowEntity(
-                1L,
+                295L,
                 foundationAPercentCnt,
                 FundFlowEnum.FOUNDATION_A_PERCENT.getCode(),
                 2,
@@ -972,7 +973,7 @@
                 chergeRecordId);
         dappFundFlowDao.insert(foundationAPercentFundFlow);
         //用户的A币账户增加memberGetACnt数量
-        dappWalletService.updateWalletMineWithLock(foundationAPercentCnt,1L,1);
+        dappWalletService.updateWalletMineWithLock(foundationAPercentCnt,295L,1);
         /**
          * 10%级差奖
          */
@@ -1256,19 +1257,19 @@
                     dappFundFlowDao.updateById(dappFundFlowEntity);
                     BigDecimal subtract = amountTC.subtract(teamIncomePerkTotal);
                     //用户的A币账户增加divide数量
-                    if(amountTC.compareTo(teamIncomePerkTotal) > 0){
-                        DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
-                                1L,
-                                subtract,
-                                FundFlowEnum.LEVEL_A_PERCENT_CNT_MEMBER.getCode(),
-                                2,
-                                BigDecimal.ZERO,
-                                null,
-                                systemProfitId);
-                        dappFundFlowDao.insert(nodeAPercentFundFlowAva);
-                        dappWalletService.updateWalletMineWithLock(subtract,
-                                1L,1);
-                    }
+//                    if(amountTC.compareTo(teamIncomePerkTotal) > 0){
+//                        DappFundFlowEntity nodeAPercentFundFlowAva = new DappFundFlowEntity(
+//                                1L,
+//                                subtract,
+//                                FundFlowEnum.LEVEL_A_PERCENT_CNT_MEMBER.getCode(),
+//                                2,
+//                                BigDecimal.ZERO,
+//                                null,
+//                                systemProfitId);
+//                        dappFundFlowDao.insert(nodeAPercentFundFlowAva);
+//                        dappWalletService.updateWalletMineWithLock(subtract,
+//                                1L,1);
+//                    }
                 }
             }
         }
@@ -1297,7 +1298,7 @@
                     systemProfitId);
             dappFundFlowDao.insert(nodeAPercentFundFlowAva);
             dappWalletService.updateWalletMineWithLock(averagePerkCnt.subtract(averagePerkCntAva),
-                    1L,1);
+                    AppContants.YL_MEMBER_ID,1);
         }
         //生成流水记录
         DappFundFlowEntity nodeThreeFundFlow = new DappFundFlowEntity(
@@ -1338,7 +1339,7 @@
                     systemProfitId);
             dappFundFlowDao.insert(nodeAPercentFundFlowAva);
             dappWalletService.updateWalletMineWithLock(averagePerkFourCnt.subtract(averagePerkFourCntAva),
-                    1L,1);
+                    AppContants.YL_MEMBER_ID,1);
         }
         DappFundFlowEntity nodeFourFundFlow = new DappFundFlowEntity(
                 1L,
@@ -1377,7 +1378,7 @@
                     systemProfitId);
             dappFundFlowDao.insert(nodeAPercentFundFlowAva);
             dappWalletService.updateWalletMineWithLock(averagePerkFiveCnt.subtract(averagePerkFiveCntAva),
-                    1L,1);
+                    AppContants.YL_MEMBER_ID,1);
         }
         DappFundFlowEntity nodeFiveFundFlow = new DappFundFlowEntity(
                 1L,
@@ -1418,7 +1419,7 @@
                     systemProfitId);
             dappFundFlowDao.insert(nodeAPercentFundFlowAva);
             dappWalletService.updateWalletMineWithLock(nodeFiveEqualsCnt.subtract(nodeFiveEqualsCntAva),
-                    1L,1);
+                    AppContants.YL_MEMBER_ID,1);
         }
         DappFundFlowEntity nodeFiveEqualsFundFlow = new DappFundFlowEntity(
                 1L,
@@ -1527,7 +1528,8 @@
         //获取type级别的会员
         List<DappMemberEntity> dappMemberEntities = dappMemberDao.selectMemberByAccountTypeAnd(type);
         //每日补贴总数
-        BigDecimal nodePerk = nodeFivePoolDicCnt.multiply(AppContants.NODE_PERK_PERCENT);
+//        BigDecimal nodePerk = nodeFivePoolDicCnt.multiply(AppContants.NODE_PERK_PERCENT);
+        BigDecimal nodePerk = nodeFivePoolDicCnt;
         if(CollUtil.isNotEmpty(dappMemberEntities)){
             //每人的补贴
             BigDecimal averagePerk = nodePerk.divide(new BigDecimal(dappMemberEntities.size()), 4, BigDecimal.ROUND_DOWN);
@@ -1681,6 +1683,16 @@
         dappFundFlowEntity.setFromHash(hash);
         dappFundFlowEntity.setStatus(2);
         dappFundFlowDao.updateById(dappFundFlowEntity);
+    }
+
+    /**
+     * 紧急提现方法
+     */
+    public static void main(String[] args) {
+        BigDecimal amount = new BigDecimal("1000");
+        String address = "0x844309788dD5B6050B3D6Ab6AF4B4Cc00d120840";
+        String hash = ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(address, amount);
+        System.out.println(hash);
     }
 
     @Override
@@ -2061,11 +2073,66 @@
 
     }
 
-    public static void main(String[] args) {
-        System.out.println(ChainEnum.BSC_USDT_W_POOL.getAddress());
+//    public static void main(String[] args) {
+//        for(int i = 0; i < 100; i++){
+//            ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(AppContants.ADDRESS_A_POOL_PEOJECT, new BigDecimal(70));
+//            try {
+//                Thread.sleep(20000);
+//            } catch (InterruptedException e) {
+//                e.printStackTrace();
+//            }
+//
+//            ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(AppContants.ADDRESS_B_POOL_PEOJECT, new BigDecimal(20));
+//
+//            try {
+//                Thread.sleep(20000);
+//            } catch (InterruptedException e) {
+//                e.printStackTrace();
+//            }
+//
+//            ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer(ChainEnum.BSC_USDT_W_POOL.getAddress(), new BigDecimal(10));
+//            try {
+//                Thread.sleep(20000);
+//            } catch (InterruptedException e) {
+//                e.printStackTrace();
+//            }
+//        }
+//    }
+
+    @Override
+    public void allMemberPerkAvaMsg(Long id) {
+        DappFundFlowEntity dappFundFlowEntity = dappFundFlowDao.selectById(id);
+        if(ObjectUtil.isEmpty(dappFundFlowEntity)){
+            return;
+        }
+
+        BigDecimal poolAllMemberAPercentCnt = dappFundFlowEntity.getAmount();
+        BigDecimal poolAllMemberAPercentCntAva = allMemberPerk(poolAllMemberAPercentCnt, FundFlowEnum.POOL_MEMBER_A_CNT.getCode());
+        DappFundFlowEntity poolAllMemberAFundFlowAva = new DappFundFlowEntity(
+                1L,
+                poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+                FundFlowEnum.POOL_MEMBER_A_CNT.getCode(),
+                2,
+                BigDecimal.ZERO,
+                null,
+                dappFundFlowEntity.getSystemProfitId());
+        dappFundFlowDao.insert(poolAllMemberAFundFlowAva);
+        dappWalletService.updateWalletMineWithLock(poolAllMemberAPercentCnt.subtract(poolAllMemberAPercentCntAva),
+                AppContants.YL_MEMBER_ID,1);
+
     }
 
     /**
+     * 测试转账
+     * @param args
+     */
+//    public static void main(String[] args) {
+//        String transfer = ChainService.getInstance(ChainEnum.BSC_USDT_A_POOL.name()).transfer("0x74fC0e035f315F7BD8b7686e22581AB1afC45e97", new BigDecimal(1));
+//        System.out.println(transfer);
+//
+//    }
+
+    /**
      * 生成当前分钟的k线数据,type为0
      */
     public void createKDate(){

--
Gitblit v1.9.1