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