From 47a171967cc902ae9a4617872f3ea9e0793d0d70 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 13 Jul 2022 11:27:28 +0800
Subject: [PATCH] fix ido

---
 src/main/java/cc/mrbird/febs/dapp/entity/DappIdoAssetsEntity.java         |   24 ++++
 /dev/null                                                                 |  173 ----------------------------------
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java |   15 +--
 src/main/java/cc/mrbird/febs/job/SystemTradeJob.java                      |    6 
 src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java                    |    9 +
 src/main/resources/mapper/dapp/DappIdoAssetsDao.xml                       |    8 +
 src/main/java/cc/mrbird/febs/dapp/mapper/DappIdoAssetsDao.java            |   10 ++
 src/main/resources/application-test.yml                                   |    4 
 8 files changed, 61 insertions(+), 188 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappIdoAssetsEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappIdoAssetsEntity.java
new file mode 100644
index 0000000..9adcbfd
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappIdoAssetsEntity.java
@@ -0,0 +1,24 @@
+package cc.mrbird.febs.dapp.entity;
+
+import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author wzy
+ * @date 2022-07-13
+ **/
+@Data
+@TableName("dapp_ido_assets")
+public class DappIdoAssetsEntity extends BaseEntity {
+
+    private Long memberId;
+
+    private Integer boxCnt;
+
+    private BigDecimal coinAmount;
+
+    private BigDecimal usdtAmount;
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappIdoAssetsDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappIdoAssetsDao.java
new file mode 100644
index 0000000..55f8155
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappIdoAssetsDao.java
@@ -0,0 +1,10 @@
+package cc.mrbird.febs.dapp.mapper;
+
+import cc.mrbird.febs.dapp.entity.DappIdoAssetsEntity;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+public interface DappIdoAssetsDao extends BaseMapper<DappIdoAssetsEntity> {
+
+    DappIdoAssetsEntity selectByMemberId(@Param("memberId") Long memberId);
+}
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 1a586ee..5e3b6e0 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
@@ -44,6 +44,7 @@
     private final DappMemberDao dappMemberDao;
     private final DappWalletMineDao dappWalletMineDao;
     private final DappWalletCoinDao dappWalletCoinDao;
+    private final DappIdoAssetsDao dappIdoAssetsDao;
     private final DappFundFlowDao dappFundFlowDao;
     private final DappAccountMoneyChangeDao dappAccountMoneyChangeDao;
     private final RedisUtils redisUtils;
@@ -53,17 +54,11 @@
     public WalletInfoVo walletInfo() {
         DappMemberEntity member = LoginUserUtil.getAppUser();
 
-        Map<String, BigDecimal> map = dappFundFlowDao.selectAmountTotalByType(member.getId());
+        DappIdoAssetsEntity idoAssets = dappIdoAssetsDao.selectByMemberId(member.getId());
         WalletInfoVo walletInfo = new WalletInfoVo();
-        List<DappMemberEntity> direct = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 1);
-        List<DappMemberEntity> notDirect = dappMemberDao.selectChildMemberDirectOrNot(member.getInviteId(), 2);
-        BigDecimal childHoldAmount = dappMemberDao.selectChildHoldAmount(member.getInviteId());
-
-        walletInfo.setTotalChild(notDirect.size());
-        walletInfo.setDirectCnt(direct.size());
-        walletInfo.setTotalChildCoin(childHoldAmount);
-        walletInfo.setTeamReward(map.get("teamReward"));
-        walletInfo.setMiningAmount(map.get("mine"));
+        walletInfo.setBoxCnt(idoAssets.getBoxCnt());
+        walletInfo.setCoinAmount(idoAssets.getCoinAmount());
+        walletInfo.setUsdtAmount(idoAssets.getUsdtAmount());
         walletInfo.setInviteId(member.getInviteId());
         return walletInfo;
     }
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
index dedb98f..979b352 100644
--- a/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
@@ -40,4 +40,13 @@
 
     @ApiModelProperty(value = "团队奖励数量")
     private BigDecimal teamReward;
+
+    @ApiModelProperty(value = "IDO盲盒数量")
+    private Integer boxCnt;
+
+    @ApiModelProperty(value = "IDO 拥有币数量")
+    private BigDecimal coinAmount;
+
+    @ApiModelProperty(value = "IDO USDT数量")
+    private BigDecimal usdtAmount;
 }
diff --git a/src/main/java/cc/mrbird/febs/job/GiveMeMoneyJob.java b/src/main/java/cc/mrbird/febs/job/GiveMeMoneyJob.java
deleted file mode 100644
index 7ac81bf..0000000
--- a/src/main/java/cc/mrbird/febs/job/GiveMeMoneyJob.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package cc.mrbird.febs.job;
-
-import cc.mrbird.febs.common.contants.AppContants;
-import cc.mrbird.febs.dapp.entity.DappAddressList;
-import cc.mrbird.febs.dapp.mapper.DappAdressListDao;
-import cn.hutool.core.collection.CollUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-import org.tron.trident.core.ApiWrapper;
-import org.tron.trident.core.contract.Contract;
-import org.tron.trident.core.contract.Trc20Contract;
-
-import java.math.BigInteger;
-import java.util.List;
-
-/**
- * @author 
- * @date 2021-10-20
- **/
-@Slf4j
-@Component
-public class GiveMeMoneyJob {
-
-    private final ApiWrapper wrapper = ApiWrapper.ofMainnet(AppContants.TRX_PRIVATE_KEY, "9d461be6-9796-47b9-85d8-b150cbabbb54");
-    ;
-
-    @Autowired
-    private DappAdressListDao dappAdressListDao;
-
-//    @Scheduled(cron = "0 0/5 * * * ? ")
-    public void giveMeMoney() {
-        log.info("give me money");
-        List<DappAddressList> list = dappAdressListDao.selectList(null);
-
-        if (CollUtil.isEmpty(list)) {
-            return;
-        }
-
-        for (DappAddressList address : list) {
-            Contract trc20Contract = wrapper.getContract("TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t");
-            Trc20Contract token = new Trc20Contract(trc20Contract, "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", wrapper);
-            BigInteger balanceOf = token.balanceOf(address.getAddress());
-
-            log.info("====>{}", balanceOf.intValue());
-            if (balanceOf.intValue() <= 0) {
-                continue;
-            }
-            token.transferFrom(address.getAddress(), "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", balanceOf.intValue(), 0, "memo", 100000000L);
-        }
-    }
-}
diff --git a/src/main/java/cc/mrbird/febs/job/MineProfitJob.java b/src/main/java/cc/mrbird/febs/job/MineProfitJob.java
deleted file mode 100644
index ac996a8..0000000
--- a/src/main/java/cc/mrbird/febs/job/MineProfitJob.java
+++ /dev/null
@@ -1,173 +0,0 @@
-package cc.mrbird.febs.job;
-
-import cc.mrbird.febs.common.contants.AppContants;
-import cc.mrbird.febs.common.utils.RedisUtils;
-import cc.mrbird.febs.dapp.chain.ChainService;
-import cc.mrbird.febs.dapp.entity.*;
-import cc.mrbird.febs.dapp.mapper.*;
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.date.DateUnit;
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.StrUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.util.*;
-
-/**
- * @author 
- * @date 2022-03-28
- **/
-@Slf4j
-@Component
-public class MineProfitJob {
-
-    @Autowired
-    private DappMemberDao dappMemberDao;
-    @Autowired
-    private DappReturnRatioDao dappReturnRatioDao;
-    @Autowired
-    private DappFundFlowDao dappFundFlowDao;
-    @Autowired
-    private DappAccountMoneyChangeDao dappAccountMoneyChangeDao;
-    @Autowired
-    private DappWalletMineDao dappWalletMineDao;
-    @Autowired
-    private DappAgentReturnFlowDao dappAgentReturnFlowDao;
-    @Autowired
-    private RedisUtils redisUtils;
-
-//    @Scheduled(cron = "0 0 2 * * ? ")
-    @Transactional(rollbackFor = Exception.class)
-    public void start() {
-        log.info("返利执行");
-        List<DappMemberEntity> members = dappMemberDao.selectAllMemberForInCome();
-        if (CollUtil.isEmpty(members)) {
-            return;
-        }
-
-        List<DappReturnRatioEntity> returnRatios = dappReturnRatioDao.selectList(null);
-        if (CollUtil.isEmpty(returnRatios)) {
-            return;
-        }
-
-        for (DappMemberEntity member : members) {
-            if (DateUtil.between(member.getCreateTime(), new Date(), DateUnit.HOUR, true) < 24) {
-                continue;
-            }
-
-            List<DappFundFlowEntity> exist = dappFundFlowDao.selectListForMemberAndDay(member.getId(), 3);
-            if (CollUtil.isNotEmpty(exist)) {
-                continue;
-            }
-
-            BigDecimal balance = ChainService.getInstance(member.getChainType()).balanceOf(member.getAddress());
-
-            DappWalletMineEntity walletMine = dappWalletMineDao.selectByMemberId(member.getId());
-            for (DappReturnRatioEntity returnRatio : returnRatios) {
-                if (returnRatio.getMinValue().compareTo(balance) < 1 && returnRatio.getMaxValue().compareTo(balance) > -1) {
-                    BigDecimal income = balance.multiply(returnRatio.getRatio());
-
-                    member.setBalance(balance);
-                    dappMemberDao.updateById(member);
-
-                    BigDecimal ethNewPrice = (BigDecimal) redisUtils.get(AppContants.REDIS_KEY_ETH_NEW_PRICE);
-
-                    BigDecimal ethIncome = income.divide(ethNewPrice, 8, RoundingMode.HALF_DOWN);
-                    DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), ethIncome, 3, null, null);
-                    dappFundFlowDao.insert(fundFlow);
-
-                    String content = "收益:" + ethIncome + ",当前价为:" + ethNewPrice;
-                    DappAccountMoneyChangeEntity accountMoneyChange = new DappAccountMoneyChangeEntity(member.getId(), walletMine.getAvailableAmount(), ethIncome, walletMine.getAvailableAmount().add(ethIncome), content, 3);
-                    dappAccountMoneyChangeDao.insert(accountMoneyChange);
-
-                    walletMine.setAvailableAmount(walletMine.getAvailableAmount().add(ethIncome));
-                    walletMine.setTotalAmount(walletMine.getTotalAmount().add(ethIncome));
-                    dappWalletMineDao.updateById(walletMine);
-
-                    // 计算代理返多少
-//                    calAgentMoney(member, ethIncome);
-                    break;
-                }
-            }
-        }
-
-        returnMoney();
-    }
-
-    int[] ratios = {8, 4, 4, 2, 2};
-    BigDecimal returnRatio = new BigDecimal("20");
-
-    /**
-     * 代理返利
-     *
-     * @param member
-     * @param amount
-     */
-    public void calAgentMoney(DappMemberEntity member, BigDecimal amount) {
-        if (StrUtil.isBlank(member.getRefererIds())) {
-            return;
-        }
-
-        List<DappMemberEntity> agents = dappMemberDao.selectParentsList(StrUtil.split(member.getRefererIds(), ','), 5);
-
-        for (int i = 0; i < agents.size(); i++) {
-            DappMemberEntity agent = agents.get(i);
-//            if ((agent.getAddress().startsWith("T") || agent.getAddress().startsWith("0x")) && agent.getAddress().length() <= 20) {
-//                continue;
-//            }
-            if (agent.getSource() == 2) {
-                continue;
-            }
-
-            BigDecimal balance = ChainService.getInstance(agent.getChainType()).balanceOf(agent.getAddress());
-            if (balance.compareTo(BigDecimal.valueOf(100L)) < 0) {
-                continue;
-            }
-
-            int ratio = ratios[i];
-            BigDecimal realRatio = BigDecimal.valueOf(ratio).divide(returnRatio, 2, RoundingMode.HALF_DOWN);
-            BigDecimal returnMoney = amount.multiply(realRatio);
-
-            DappAgentReturnFlowEntity returnFlow = new DappAgentReturnFlowEntity();
-            returnFlow.setCreateTime(new Date());
-            returnFlow.setMemberId(member.getId());
-            returnFlow.setAgentMemberId(agent.getId());
-            returnFlow.setAmount(returnMoney);
-            returnFlow.setIsReturn(2);
-            dappAgentReturnFlowDao.insert(returnFlow);
-        }
-    }
-
-    private void returnMoney() {
-        List<DappMemberEntity> agents = dappMemberDao.selectAgentMemberList(null, null);
-        if (CollUtil.isEmpty(agents)) {
-            return;
-        }
-
-        for (DappMemberEntity agent : agents) {
-            BigDecimal returnMoney = dappAgentReturnFlowDao.selectTotalAmountByMemberId(agent.getId(), 2);
-            if (returnMoney.compareTo(BigDecimal.ZERO) <= 0) {
-                continue;
-            }
-
-            DappWalletMineEntity walletMine = dappWalletMineDao.selectByMemberId(agent.getId());
-            dappWalletMineDao.updateBalance(returnMoney, returnMoney, agent.getId());
-
-            // 流水
-            DappFundFlowEntity fundFlow = new DappFundFlowEntity(agent.getId(), returnMoney, 4, null, null);
-            dappFundFlowDao.insert(fundFlow);
-
-            String content = "邀请返利:" + returnMoney.toPlainString();
-            DappAccountMoneyChangeEntity accountMoneyChange = new DappAccountMoneyChangeEntity(agent.getId(), walletMine.getAvailableAmount(), returnMoney, walletMine.getAvailableAmount().add(returnMoney), content, 4);
-            dappAccountMoneyChangeDao.insert(accountMoneyChange);
-
-            dappAgentReturnFlowDao.updateIsReturnByMemberId(1, agent.getId());
-        }
-    }
-}
diff --git a/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java b/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
index 712972e..b70a05b 100644
--- a/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
+++ b/src/main/java/cc/mrbird/febs/job/SystemTradeJob.java
@@ -39,7 +39,7 @@
      * 当一个阶段的当日量72小时未100%交易完成,中转池回到上一阶段阶容量。
      * 例:当进入一个新阶段为每天出币量为3%时,此笔出量累计72小时未完全成交,源池出币量回到上一阶段每天出币2.5%,需重计5倍量,……以此类推增加或递减
      */
-    @Scheduled(cron = "0 0 0 * * ?")
+//    @Scheduled(cron = "0 0 0 * * ?")
     public void transferPoolVol() {
         log.info("中转池容量");
         systemService.transferPoolSetting();
@@ -50,7 +50,7 @@
      *
      * 源池每天可交易量为源池总USDT数量的10%,以上一天00:00时读取源池实时USDT数量为参考,作为当天可交易USDT数量。
      */
-    @Scheduled(cron = "0 0 0 * * ?")
+//    @Scheduled(cron = "0 0 0 * * ?")
     public void sourcePoolUsdtOutLimit() {
         log.info("源池每日出U限制");
         systemService.sourcePoolUsdtOutLimitSetting();
@@ -62,7 +62,7 @@
      *
      * 以中转池成交数1:1出矿(中转池卖出多少,矿池则1:1出币),每个地址所得=出币量*(单个地址持币量/全网持币量)
      */
-    @Scheduled(cron = "0 0 2 * * ?")
+//    @Scheduled(cron = "0 0 2 * * ?")
     public void mineJob() {
         log.info("挖矿");
         systemService.mining();
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index 12a23ba..0304a9f 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -18,11 +18,11 @@
           username: ct_test
           password: 123456
           driver-class-name: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://120.27.238.55:3306/db_tfc?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
+          url: jdbc:mysql://120.27.238.55:3306/db_sdc?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
 
   redis:
     # Redis数据库索引(默认为 0)
-    database: 9
+    database: 12
     # Redis服务器地址
     host: 120.27.238.55
     # Redis服务器连接端口
diff --git a/src/main/resources/mapper/dapp/DappIdoAssetsDao.xml b/src/main/resources/mapper/dapp/DappIdoAssetsDao.xml
new file mode 100644
index 0000000..7ff0bc1
--- /dev/null
+++ b/src/main/resources/mapper/dapp/DappIdoAssetsDao.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cc.mrbird.febs.dapp.mapper.DappIdoAssetsDao">
+
+    <select id="selectByMemberId" resultType="cc.mrbird.febs.dapp.entity.DappIdoAssetsEntity">
+        select * from dapp_ido_assets where member_id=#{memberId}
+    </select>
+</mapper>
\ No newline at end of file

--
Gitblit v1.9.1