From 37926d8d866154c77d70d42931d8feba00d7569f Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 31 May 2022 09:44:46 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 38 insertions(+), 4 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 6143f49..7f5491b 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
@@ -1,13 +1,19 @@
 package cc.mrbird.febs.dapp.service.impl;
 
 import cc.mrbird.febs.common.contants.AppContants;
+import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.dapp.chain.ChainEnum;
+import cc.mrbird.febs.dapp.chain.ChainService;
+import cc.mrbird.febs.dapp.chain.ContractChainService;
 import cc.mrbird.febs.dapp.dto.SystemDto;
+import cc.mrbird.febs.dapp.entity.DappMemberEntity;
 import cc.mrbird.febs.dapp.entity.DappMineDataEntity;
 import cc.mrbird.febs.dapp.entity.DappReturnRatioEntity;
 import cc.mrbird.febs.dapp.mapper.DappReturnRatioDao;
 import cc.mrbird.febs.dapp.mapper.DappSystemDao;
 import cc.mrbird.febs.dapp.service.DappSystemService;
+import cc.mrbird.febs.dapp.vo.RedisTransferPoolVo;
 import cn.hutool.core.util.RandomUtil;
 import cn.hutool.core.util.StrUtil;
 import lombok.RequiredArgsConstructor;
@@ -62,11 +68,39 @@
 
     @Override
     public SystemDto system() {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+
         SystemDto system = new SystemDto();
-        system.setBuyTotal(BigDecimal.valueOf(10000));
-        system.setBuyRemain(BigDecimal.valueOf(100));
-        system.setSaleTotal(BigDecimal.valueOf(10000));
-        system.setSaleRemain(BigDecimal.valueOf(1000));
+
+        RedisTransferPoolVo transferPool = (RedisTransferPoolVo) redisUtils.get(AppContants.REDIS_KEY_TRANSFER_POOL_VOL);
+        BigDecimal poolRemain = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_TRANSFER_POOL_VOL_REMAIN);
+        // 买币数量
+        system.setBuyTotal(transferPool.getTodayVol());
+        system.setBuyRemain(poolRemain);
+
+        ContractChainService instance = ChainService.getInstance(ChainEnum.BSC_TFC.name());
+        BigDecimal balance = instance.balanceOf(member.getAddress());
+        Object o = redisUtils.get(AppContants.REDIS_KEY_COIN_REMAIN);
+
+        BigDecimal coinTotal = balance.multiply(BigDecimal.valueOf(0.3)).setScale(instance.decimals(), RoundingMode.HALF_DOWN);
+        BigDecimal remain;
+        if (o == null) {
+            remain = coinTotal;
+            redisUtils.set(AppContants.REDIS_KEY_COIN_REMAIN, remain);
+        } else {
+            remain = (BigDecimal) o;
+        }
+        // 卖币数量
+        system.setSaleTotal(coinTotal);
+        system.setSaleRemain(remain);
+
+        BigDecimal usdtRemain = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_USDT_OUT_LIMIT_REMAIN);
+        BigDecimal usdtTotal = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_USDT_OUT_LIMIT);
+
+        // usdt数量
+        system.setUsdtTotal(usdtTotal);
+        system.setUsdtRemain(usdtRemain);
+
         system.setFeeRatio(BigDecimal.TEN);
         return system;
     }

--
Gitblit v1.9.1