From fe4b2c5a530ee379043e35e5025b44764271e558 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 15 Jul 2020 19:31:45 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java | 187 ++++++++++++++++++++++------------------------
1 files changed, 88 insertions(+), 99 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java b/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
index acc2628..164bde5 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java
@@ -8,6 +8,9 @@
import com.xcong.excoin.modules.platform.entity.PlatformCnyUsdtExchangeEntity;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.excoin.common.LoginUserUtils;
import com.xcong.excoin.common.enumerates.CoinTypeEnum;
@@ -15,7 +18,11 @@
import com.xcong.excoin.common.response.Result;
import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
+import com.xcong.excoin.modules.coin.entity.OrderCoinsDealEntity;
+import com.xcong.excoin.modules.coin.mapper.MemberAccountMoneyChangeMapper;
+import com.xcong.excoin.modules.coin.parameter.dto.RecordsPageDto;
import com.xcong.excoin.modules.coin.parameter.vo.MemberAccountMoneyChangeInfoVo;
+import com.xcong.excoin.modules.coin.parameter.vo.MemberAgentIntoInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletAgentInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletCoinInfoVo;
import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletCoinVo;
@@ -87,7 +94,7 @@
totalUsdt = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
totalUsdts = totalUsdts.add(totalUsdt);
BigDecimal totalCny = totalUsdt.multiply(cnyUsdt);
- walletCoin.setTotalBalance(totalCny.setScale(4, BigDecimal.ROUND_DOWN));
+ walletCoin.setTotalBalance(totalCny);
} else {
BigDecimal amount = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
// 获取最新价
@@ -96,7 +103,7 @@
//Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(walletCoin.getWalletCode()+"/USDT");
totalUsdt = totalUsdt.add(amount.multiply(closePrice));
totalUsdts = totalUsdts.add(totalUsdt);
- walletCoin.setTotalBalance(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
+ walletCoin.setTotalBalance(totalUsdt.multiply(cnyUsdt));
}
}
}
@@ -132,7 +139,6 @@
memberWalletCoinVo.setTotalUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN));
memberWalletCoinVo.setTotalCny(totalUsdts.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
memberWalletCoinVo.setMemberWalletCoinInfoVo(memberWalletCoinlist);
- ;
return Result.ok(memberWalletCoinVo);
}
}
@@ -178,26 +184,12 @@
if (ObjectUtil.isEmpty(walletContract)) {
return Result.fail(MessageSourceUtils.getString("member_service_0001"));
}
- /**
- * todo
- */
- //获取当前的合约持仓
- //获取实时盈亏
- BigDecimal profitAndLoss = new BigDecimal("0");
- //获取总付款
- BigDecimal totalPayment = new BigDecimal("0");
- BigDecimal lastTotalBalance = new BigDecimal("0");
- BigDecimal totalBalance = walletContract.getTotalBalance();
- lastTotalBalance = totalBalance.add(profitAndLoss);
- if (lastTotalBalance.compareTo(BigDecimal.ZERO) < 0) {
- lastTotalBalance = new BigDecimal("0");
- }
MemberWalletContractInfoVo memberWalletContractInfoVo = new MemberWalletContractInfoVo();
- memberWalletContractInfoVo.setFrozenBalance(totalPayment.setScale(4, BigDecimal.ROUND_DOWN));
- memberWalletContractInfoVo.setAvailableBalance(walletContract.getAvailableBalance());
- memberWalletContractInfoVo.setTotalBalance(lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN));
- memberWalletContractInfoVo.setTotalRMBBalance(lastTotalBalance.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletContractInfoVo.setFrozenBalance(walletContract.getFrozenBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletContractInfoVo.setAvailableBalance(walletContract.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletContractInfoVo.setTotalBalance(walletContract.getTotalBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletContractInfoVo.setTotalRMBBalance(walletContract.getTotalBalance().multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
return Result.ok(memberWalletContractInfoVo);
}
@@ -221,11 +213,8 @@
return Result.fail(MessageSourceUtils.getString("member_service_0005"));
}
BigDecimal subtract = walletCoin.getTotalBalance().subtract(balance);
- if (subtract.compareTo(BigDecimal.ZERO) < 0) {
- return Result.fail(MessageSourceUtils.getString("member_service_0005"));
- }
- walletCoin.setAvailableBalance(total.setScale(4, BigDecimal.ROUND_DOWN));
- walletCoin.setTotalBalance(subtract.setScale(4, BigDecimal.ROUND_DOWN));
+ walletCoin.setAvailableBalance(total);
+ walletCoin.setTotalBalance(subtract);
int updateWalletCoinById = memberWalletCoinDao.updateById(walletCoin);
if (updateWalletCoinById < 1) {
return Result.fail(MessageSourceUtils.getString("member_service_0096"));
@@ -235,10 +224,10 @@
MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode);
BigDecimal availableBalance = walletContract.getAvailableBalance();
BigDecimal add = availableBalance.add(balance);
- walletContract.setAvailableBalance(add.setScale(4, BigDecimal.ROUND_DOWN));
+ walletContract.setAvailableBalance(add);
BigDecimal totalBalance = walletContract.getTotalBalance();
BigDecimal totalBigDecimal = totalBalance.add(balance);
- walletContract.setTotalBalance(totalBigDecimal.setScale(4, BigDecimal.ROUND_DOWN));
+ walletContract.setTotalBalance(totalBigDecimal);
int updateWalletContractById = memberWalletContractDao.updateById(walletContract);
if (updateWalletContractById < 1) {
return Result.fail(MessageSourceUtils.getString("member_service_0096"));
@@ -247,7 +236,7 @@
MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOCONTRACT.getValue());
memberAccountRecord.setMemberId(memberId);
- memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance.negate());
memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
memberAccountRecord.setSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue());
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
@@ -256,7 +245,7 @@
//添加合约资金划转历史记录
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMWALLETCOIN.getValue());
memberAccountRecord.setSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue());
- memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance);
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
memberAccountMoneyChangeDao.insert(memberAccountRecord);
}
@@ -283,8 +272,8 @@
BigDecimal totalBalance = walletContract.getTotalBalance();
BigDecimal totalSubtract = totalBalance.subtract(balance);
- walletContract.setAvailableBalance(availableSubtract.setScale(4, BigDecimal.ROUND_DOWN));
- walletContract.setTotalBalance(totalSubtract.setScale(4, BigDecimal.ROUND_DOWN));
+ walletContract.setAvailableBalance(availableSubtract);
+ walletContract.setTotalBalance(totalSubtract);
int updateWalletCoinById = memberWalletContractDao.updateById(walletContract);
if (updateWalletCoinById < 1) {
return Result.fail(MessageSourceUtils.getString("member_service_0096"));
@@ -296,8 +285,8 @@
BigDecimal walletCoinTotalBalance = walletCoin.getTotalBalance();
BigDecimal CoinTotalBalance = walletCoinTotalBalance.add(balance);
- walletCoin.setAvailableBalance(CoinAvailableBalance.setScale(4, BigDecimal.ROUND_DOWN));
- walletCoin.setTotalBalance(CoinTotalBalance.setScale(4, BigDecimal.ROUND_DOWN));
+ walletCoin.setAvailableBalance(CoinAvailableBalance);
+ walletCoin.setTotalBalance(CoinTotalBalance);
int updateById = memberWalletCoinDao.updateById(walletCoin);
if (updateById < 1) {
return Result.fail(MessageSourceUtils.getString("member_service_0096"));
@@ -307,7 +296,7 @@
MemberAccountMoneyChange memberAccountRecord = new MemberAccountMoneyChange();
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOWALLETCOIN.getValue());
memberAccountRecord.setMemberId(memberId);
- memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance.negate());
memberAccountRecord.setStatus(MemberAccountMoneyChange.STATUS_SUCCESS_INTEGER);
memberAccountRecord.setSymbol(walletCode);
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
@@ -317,7 +306,7 @@
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMCONTRACT.getValue());
memberAccountRecord.setSymbol(walletCode);
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
- memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance);
memberAccountMoneyChangeDao.insert(memberAccountRecord);
return Result.ok(MessageSourceUtils.getString("member_service_0006"));
}
@@ -343,72 +332,44 @@
}
@Override
- public Result getWalletCoinRecords() {
+ public Result getWalletCoinRecords(RecordsPageDto recordsPageDto) {
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
- List<MemberAccountMoneyChange> coinRecordList = memberAccountMoneyChangeDao.selectWalletCoinRecordsByMemIdTypeSymbol(memberId);
- List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>();
- if (CollUtil.isNotEmpty(coinRecordList)) {
- for (MemberAccountMoneyChange memberAccountMoneyChange : coinRecordList) {
- MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo();
- memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount());
- memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent());
- memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus());
- memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol());
- memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType());
- memberAccountMoneyChangeInfoVo.setUpdateTime(memberAccountMoneyChange.getUpdateTime());
- arrayList.add(memberAccountMoneyChangeInfoVo);
- }
- }
- return Result.ok(arrayList);
+
+ Page<OrderCoinsDealEntity> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
+ MemberAccountMoneyChange memberAccountMoneyChange = new MemberAccountMoneyChange();
+ memberAccountMoneyChange.setMemberId(memberId);
+ IPage<MemberAccountMoneyChange> list = memberAccountMoneyChangeDao.selectWalletCoinRecordsInPage(page, memberAccountMoneyChange);
+ Page<MemberAccountMoneyChangeInfoVo> pageEntityToPageVo = MemberAccountMoneyChangeMapper.INSTANCE.pageEntityToPageVo(list);
+
+ return Result.ok(pageEntityToPageVo);
}
@Override
- public Result getWalletContractRecords() {
+ public Result getWalletContractRecords(RecordsPageDto recordsPageDto) {
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
- String symbol = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
- List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletContractRecordsByMemIdTypeSymbol(symbol, memberId);
-
- List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>();
- if (ObjectUtil.isNotNull(contractRecordList)) {
- for (MemberAccountMoneyChange memberAccountMoneyChange : contractRecordList) {
- MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo();
- memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount());
- memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent());
- memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus());
- memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol());
- memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType());
- memberAccountMoneyChangeInfoVo.setUpdateTime(memberAccountMoneyChange.getUpdateTime());
- arrayList.add(memberAccountMoneyChangeInfoVo);
- }
- }
-
- return Result.ok(arrayList);
+
+ Page<OrderCoinsDealEntity> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
+ MemberAccountMoneyChange memberAccountMoneyChange = new MemberAccountMoneyChange();
+ memberAccountMoneyChange.setMemberId(memberId);
+ IPage<MemberAccountMoneyChange> list = memberAccountMoneyChangeDao.selectWalletContractRecordsInPage(page, memberAccountMoneyChange);
+ Page<MemberAccountMoneyChangeInfoVo> pageEntityToPageVo = MemberAccountMoneyChangeMapper.INSTANCE.pageEntityToPageVo(list);
+ return Result.ok(pageEntityToPageVo);
}
@Override
- public Result getWalletAgentRecords() {
+ public Result getWalletAgentRecords(RecordsPageDto recordsPageDto) {
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
-
- List<MemberAccountMoneyChange> contractRecordList =
- memberAccountMoneyChangeDao.selectWalletAgentRecordByMemIdTypeSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue(), memberId);
-
- List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>();
- if (ObjectUtil.isNotNull(contractRecordList)) {
- for (MemberAccountMoneyChange memberAccountMoneyChange : contractRecordList) {
- MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo();
- memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount());
- memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent());
- memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus());
- memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol());
- memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType());
- memberAccountMoneyChangeInfoVo.setUpdateTime(memberAccountMoneyChange.getUpdateTime());
- arrayList.add(memberAccountMoneyChangeInfoVo);
- }
- }
- return Result.ok(arrayList);
+
+ Page<OrderCoinsDealEntity> page = new Page<>(recordsPageDto.getPageNum(), recordsPageDto.getPageSize());
+ MemberAccountMoneyChange memberAccountMoneyChange = new MemberAccountMoneyChange();
+ memberAccountMoneyChange.setMemberId(memberId);
+ IPage<MemberAccountMoneyChange> list = memberAccountMoneyChangeDao.selectWalletAgentRecordsInPage(page, memberAccountMoneyChange);
+ Page<MemberAccountMoneyChangeInfoVo> pageEntityToPageVo = MemberAccountMoneyChangeMapper.INSTANCE.pageEntityToPageVo(list);
+
+ return Result.ok(pageEntityToPageVo);
}
@Override
@@ -435,8 +396,8 @@
return Result.fail(MessageSourceUtils.getString("member_service_0008"));
}
- walletAgent.setAvailableBalance(available.setScale(4, BigDecimal.ROUND_DOWN));
- walletAgent.setTotalBalance(total.setScale(4, BigDecimal.ROUND_DOWN));
+ walletAgent.setAvailableBalance(available);
+ walletAgent.setTotalBalance(total);
int i = memberWalletAgentDao.updateById(walletAgent);
if (i < 1) {
@@ -450,8 +411,8 @@
BigDecimal walletCoinAvailableBalance = walletCoin.getAvailableBalance();
BigDecimal walletCoinTotalBalance = walletCoin.getTotalBalance();
- walletCoin.setAvailableBalance(walletCoinAvailableBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
- walletCoin.setTotalBalance(walletCoinTotalBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
+ walletCoin.setAvailableBalance(walletCoinAvailableBalance.add(balance));
+ walletCoin.setTotalBalance(walletCoinTotalBalance.add(balance));
int updateById = memberWalletCoinDao.updateById(walletCoin);
if (updateById < 1) {
@@ -463,7 +424,7 @@
memberAccountRecord.setSymbol(walletCode);
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMAGENT.getValue());
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
- memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance);
memberAccountMoneyChangeDao.insert(memberAccountRecord);
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOWALLETCOIN.getValue());
@@ -473,8 +434,8 @@
BigDecimal walletContractAvailableBalance = walletContract.getAvailableBalance();
BigDecimal walletContractTotalBalance = walletContract.getTotalBalance();
- walletContract.setAvailableBalance(walletContractAvailableBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
- walletContract.setTotalBalance(walletContractTotalBalance.add(balance).setScale(4, BigDecimal.ROUND_DOWN));
+ walletContract.setAvailableBalance(walletContractAvailableBalance.add(balance));
+ walletContract.setTotalBalance(walletContractTotalBalance.add(balance));
int updateById = memberWalletContractDao.updateById(walletContract);
if (updateById < 1) {
@@ -487,11 +448,11 @@
memberAccountRecord.setSymbol(walletCode);
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTFROMAGENT.getValue());
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_CONTRACT);
- memberAccountRecord.setAmount(balance.setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance);
memberAccountMoneyChangeDao.insert(memberAccountRecord);
memberAccountRecord.setContent(MemberWalletCoinEnum.CONTENTTOCONTRACT.getValue());
}
- memberAccountRecord.setAmount(balance.negate().setScale(4, BigDecimal.ROUND_DOWN));
+ memberAccountRecord.setAmount(balance.negate());
memberAccountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_AGENT);
memberAccountMoneyChangeDao.insert(memberAccountRecord);
@@ -517,4 +478,32 @@
return Result.ok(memberWalletAgentInfoVo);
}
+ @Override
+ public Result getWalletAgentIntoRecords() {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+
+ List<MemberAccountMoneyChange> contractRecordList =
+ memberAccountMoneyChangeDao.selectWalletAgentIntoRecordsByMemIdTypeSymbol(memberId);
+
+ MemberAgentIntoInfoVo memberAgentIntoInfoVo = new MemberAgentIntoInfoVo();
+ List<MemberAccountMoneyChangeInfoVo> arrayList = new ArrayList<>();
+ if(CollUtil.isNotEmpty(contractRecordList)) {
+ if (ObjectUtil.isNotNull(contractRecordList)) {
+ for (MemberAccountMoneyChange memberAccountMoneyChange : contractRecordList) {
+ MemberAccountMoneyChangeInfoVo memberAccountMoneyChangeInfoVo = new MemberAccountMoneyChangeInfoVo();
+ memberAccountMoneyChangeInfoVo.setAmount(memberAccountMoneyChange.getAmount());
+ memberAccountMoneyChangeInfoVo.setContent(memberAccountMoneyChange.getContent());
+ memberAccountMoneyChangeInfoVo.setStatus(memberAccountMoneyChange.getStatus());
+ memberAccountMoneyChangeInfoVo.setSymbol(memberAccountMoneyChange.getSymbol());
+ memberAccountMoneyChangeInfoVo.setType(memberAccountMoneyChange.getType());
+ memberAccountMoneyChangeInfoVo.setUpdateTime(memberAccountMoneyChange.getUpdateTime());
+ arrayList.add(memberAccountMoneyChangeInfoVo);
+ }
+ }
+ }
+ memberAgentIntoInfoVo.setMemberAccountMoneyChangeInfoVo(arrayList);
+ return Result.ok(memberAgentIntoInfoVo);
+ }
+
}
--
Gitblit v1.9.1