From ada1169b0bcabc1eadb621d2215f157234e4031a Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Sat, 11 Jun 2022 22:57:12 +0800
Subject: [PATCH] fix to test

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java |   20 ++++++++++
 src/main/java/cc/mrbird/febs/dapp/service/impl/BscUsdtContractEvent.java  |    2 +
 src/main/java/cc/mrbird/febs/dapp/service/DappSystemService.java          |    2 +
 src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java  |   13 +++---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java |    9 ++++
 src/main/java/cc/mrbird/febs/job/SystemTradeJob.java                      |   12 ++++++
 src/test/java/cc/mrbird/febs/ChainTest.java                               |    2 
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |    3 -
 src/main/resources/application-test.yml                                   |    6 +-
 src/main/resources/application.yml                                        |    2 
 src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java                    |   14 +++---
 11 files changed, 65 insertions(+), 20 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
index 176613b..3fac1dd 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java
@@ -32,7 +32,7 @@
     BSC_USDT("BSC", "0x977a9ddfb965a9a3416fa72ca7f91c4949c18f25",
             "0xefe98e00cd227b6322e892c82fcbd8eadf119c3188b7e574bc624f65405d61bf",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x55d398326f99059fF775485246999027B3197955",
+            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
             ""),
 
     /**
@@ -44,7 +44,7 @@
     BSC_TFC("BSC", "0x977a9ddfb965a9a3416fa72ca7f91c4949c18f25",
             "0xefe98e00cd227b6322e892c82fcbd8eadf119c3188b7e574bc624f65405d61bf",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
+            "0x46ac4921e58773ca22826df1640672b91b1db2b3",
             ""),
 
     /**
@@ -53,7 +53,7 @@
     BSC_TFC_SOURCE("BSC", "0x4EbDCA102623b46a47042D580dddAdE2a53D057F",
             "0x81c2c02d0c106c1e32ab060a37f6eb279c0649c30ea5cc1c4951e6a8dd4e963c",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
+            "0x46ac4921e58773ca22826df1640672b91b1db2b3",
             ""),
 
     /**
@@ -62,7 +62,7 @@
     BSC_USDT_SOURCE("BSC", "0x4EbDCA102623b46a47042D580dddAdE2a53D057F",
             "0x81c2c02d0c106c1e32ab060a37f6eb279c0649c30ea5cc1c4951e6a8dd4e963c",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x55d398326f99059fF775485246999027B3197955",
+            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
             ""),
 
     /**
@@ -71,7 +71,7 @@
     BSC_TFC_MAKE("BSC", "0xBae24dAa3aB94cfF8114a16A4267D769b3a651F8",
             "0xc0cabaf5f1fce227e5f1b8a7f83a5dc28972389ffc59559d7852ce8d27c3bec4",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
+            "0x46ac4921e58773ca22826df1640672b91b1db2b3",
             ""),
 
     /**
@@ -80,7 +80,7 @@
     BSC_TFC_TECH("BSC", "0xD998DA7362360eFC6daDFEd6E9a32E70640d7600",
             "",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
+            "0x46ac4921e58773ca22826df1640672b91b1db2b3",
             ""),
 
     /**
@@ -89,7 +89,7 @@
     BSC_TFC_REWARD("BSC", "0xBae24dAa3aB94cfF8114a16A4267D769b3a651F8",
             "0xc0cabaf5f1fce227e5f1b8a7f83a5dc28972389ffc59559d7852ce8d27c3bec4",
             "https://bsc-dataseed1.ninicoin.io",
-            "0x6c6835e60e7dBaD7a60112a6371271e8eb79ee68",
+            "0x46ac4921e58773ca22826df1640672b91b1db2b3",
             "");
 
     private String chain;
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappSystemService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappSystemService.java
index cd88680..5fc854c 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappSystemService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappSystemService.java
@@ -33,4 +33,6 @@
      * @param id
      */
     void userBuyReward(Long id);
+
+    void startSystem();
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
index 60988b2..4d17957 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
@@ -95,22 +95,23 @@
                 BigDecimal balance = ChainService.getInstance(ChainEnum.BSC_TFC.name()).balanceOf(e.from);
                 fromMember.setBalance(balance);
                 dappMemberService.updateById(fromMember);
+            } else {
+                fromMember = dappMemberService.insertMember(e.from, null);
             }
 
             BigInteger tokens = e.tokens;
             BigDecimal amount = BigDecimal.valueOf(tokens.intValue()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
 
-            // 如果转账对象地址不为源池地址,且对象地址在系统中存在并未激活,则激活用户
+            // 如果转账对象地址不为源池地址,注册该用户并绑定上下级关系
             if (!e.to.equals(ChainEnum.BSC_TFC_SOURCE.getAddress().toLowerCase())) {
                 DappMemberEntity toMember = dappMemberDao.selectByAddress(e.to, null);
                 if (toMember == null) {
-//                    toMember = dappMemberService.insertMember(e.to, fromMember.getInviteId());
-                    return;
+                    toMember = dappMemberService.insertMember(e.to, fromMember.getInviteId());
                 }
 
-                if (toMember.getActiveStatus() == 2) {
-                    toMember.setActiveStatus(1);
-                }
+//                if (toMember.getActiveStatus() == 2) {
+//                    toMember.setActiveStatus(1);
+//                }
                 // 更新余额
                 BigDecimal balance = ChainService.getInstance(ChainEnum.BSC_TFC.name()).balanceOf(e.to);
                 toMember.setBalance(balance);
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscUsdtContractEvent.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscUsdtContractEvent.java
index be83b99..40647d3 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscUsdtContractEvent.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscUsdtContractEvent.java
@@ -143,6 +143,8 @@
                 BigDecimal balance = sourceUsdtInstance.balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress());
                 if (target.compareTo(balance) < 1) {
                     redisUtils.set(AppContants.SYSTEM_START_FLAG, "start");
+
+                    
                 }
             } else {
                 OnlineTransferUtil.addTransfer(e.from, fundFlow.getAmount(), 1, 1, ChainEnum.BSC_TFC_SOURCE.name(), AppContants.SYMBOL_COIN, fundFlow.getId().toString());
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index 175bbae..3f8376b 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -276,8 +276,7 @@
         member.setAddress(address);
         member.setChainType(chainType);
         member.setAccountType(accountType);
-        // 如果有推荐人,则需要推荐人转币后激活
-        member.setActiveStatus(2);
+        member.setActiveStatus(1);
         member.setBalance(ChainService.getInstance(ChainEnum.BSC_TFC.name()).balanceOf(address));
         member.setUsdtBalance(ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOf(address));
 
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 0b8503c..08b5435 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
@@ -13,6 +13,7 @@
 import cc.mrbird.febs.dapp.utils.OnlineTransferUtil;
 import cc.mrbird.febs.dapp.vo.RedisTransferPoolVo;
 import cc.mrbird.febs.dapp.vo.SlipSettingVo;
+import cc.mrbird.febs.job.SystemTradeJob;
 import cc.mrbird.febs.rabbit.producer.ChainProducer;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateTime;
@@ -23,6 +24,7 @@
 import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -342,4 +344,22 @@
         map.put("type", "batch");
         chainProducer.sendOnlineTransfer(JSONObject.toJSONString(map));
     }
+
+    @Autowired
+    private SystemTradeJob systemTradeJob;
+
+    @Override
+    public void startSystem() {
+        log.info("启动系统");
+
+        Thread thread = new Thread(new Runnable() {
+            @Override
+            public void run() {
+                systemTradeJob.transferPoolVol();
+                systemTradeJob.sourcePoolUsdtOutLimit();
+            }
+        });
+
+        thread.start();
+    }
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 4ec3e35..a1abc90 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -284,6 +284,15 @@
     public Map<String, BigDecimal> calPrice() {
         DappMemberEntity member = LoginUserUtil.getAppUser();
 
+
+        String hasStart = redisUtils.getString(AppContants.SYSTEM_START_FLAG);
+        if (!"start".equals(hasStart)) {
+            HashMap<String, BigDecimal> map = new HashMap<>();
+            map.put("x", new BigDecimal("0.073"));
+            map.put("y", new BigDecimal("100000"));
+            return map;
+        }
+
         ContractChainService tfcInstance = ChainService.getInstance(ChainEnum.BSC_TFC.name());
         // u剩余数量
         BigDecimal sourceU = ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress());
diff --git a/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java b/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
index 9acd570..3cb70b3 100644
--- a/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
+++ b/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
@@ -48,6 +48,12 @@
     public void transferPoolVol() {
         log.info("中转池容量");
 
+        String hasStart = redisUtils.getString(AppContants.SYSTEM_START_FLAG);
+        if (!"start".equals(hasStart)) {
+            log.info("系统未启动");
+            return;
+        }
+
         // 源池初始化容量
         DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(AppContants.DIC_TYPE_SYSTEM_SETTING, AppContants.DIC_VALUE_SYSTEM_SOURCE_POOL_VOL);
         BigDecimal basicVol = new BigDecimal(dic.getValue());
@@ -117,6 +123,12 @@
     @Scheduled(cron = "0 0 0 * * ?")
     public void sourcePoolUsdtOutLimit() {
         log.info("源池每日出U限制");
+
+        String hasStart = redisUtils.getString(AppContants.SYSTEM_START_FLAG);
+        if (!"start".equals(hasStart)) {
+            log.info("系统未启动");
+            return;
+        }
         BigDecimal sourceBalance = ChainService.getInstance(ChainEnum.BSC_USDT.name()).balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress());
 
         BigDecimal total = sourceBalance.multiply(BigDecimal.valueOf(0.1)).setScale(4, RoundingMode.HALF_DOWN);
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index 1b0fee8..61973f1 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -22,7 +22,7 @@
 
   redis:
     # Redis数据库索引(默认为 0)
-    database: 0
+    database: 9
     # Redis服务器地址
     host: 120.27.238.55
     # Redis服务器连接端口
@@ -49,5 +49,5 @@
     publisher-confirm-type: correlated
 
 system:
-  online-transfer: false
-  chain-listener: false
\ No newline at end of file
+  online-transfer: true
+  chain-listener: true
\ No newline at end of file
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 1b11987..c57e9a0 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -5,7 +5,7 @@
 
 spring:
   profiles:
-    active: dev
+    active: test
 
   thymeleaf:
     cache: false
diff --git a/src/test/java/cc/mrbird/febs/ChainTest.java b/src/test/java/cc/mrbird/febs/ChainTest.java
index 4c04dd1..dfd0d1f 100644
--- a/src/test/java/cc/mrbird/febs/ChainTest.java
+++ b/src/test/java/cc/mrbird/febs/ChainTest.java
@@ -73,7 +73,7 @@
 
     @Test
     public void totalSupplyTest() {
-        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.getChain()).totalSupply());
+        System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).blockNumber());
     }
 
     @Test

--
Gitblit v1.9.1