From 9e8a8a68126721ac336b1bbc77e1f11d85a538cb Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 14 Aug 2020 11:02:56 +0800
Subject: [PATCH] Merge branch 'master' into whole
---
src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java | 11 +++++
src/main/java/com/xcong/excoin/modules/coin/parameter/vo/AllWalletCoinVo.java | 28 ++++++++++++++
src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java | 64 ++++++++++++++++++++++++++++++++
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 4 +-
src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java | 2 +
5 files changed, 107 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java b/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java
index c71d9d3..64df9f2 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/controller/CoinController.java
@@ -5,6 +5,7 @@
import javax.annotation.Resource;
import javax.validation.Valid;
+import com.xcong.excoin.modules.coin.parameter.vo.AllWalletCoinVo;
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;
@@ -37,6 +38,16 @@
private CoinService coinService;
/**
+ * 获取我的总资产
+ * @return
+ */
+ @ApiOperation(value = "获取我的总资产", notes = "获取我的总资产")
+ @ApiResponses({@ApiResponse( code = 200, message = "success", response = AllWalletCoinVo.class)})
+ @GetMapping(value = "/getAllWalletCoin")
+ public Result getAllWalletCoin() {
+ return coinService.getAllWalletCoin();
+ }
+ /**
* 获取我的币币资产信息
* @return
*/
diff --git a/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/AllWalletCoinVo.java b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/AllWalletCoinVo.java
new file mode 100644
index 0000000..d1e4ae2
--- /dev/null
+++ b/src/main/java/com/xcong/excoin/modules/coin/parameter/vo/AllWalletCoinVo.java
@@ -0,0 +1,28 @@
+package com.xcong.excoin.modules.coin.parameter.vo;
+
+import java.math.BigDecimal;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "AllWalletCoinVo", description = "信息返回")
+public class AllWalletCoinVo {
+
+ @ApiModelProperty(value = "账户总USDT")
+ private BigDecimal totalUsdt;
+
+ @ApiModelProperty(value = "账户总RMB")
+ private BigDecimal totalCny;
+
+ @ApiModelProperty(value = "币币USDT")
+ private BigDecimal walletUsdt;
+
+ @ApiModelProperty(value = "合约USDT")
+ private BigDecimal contractUsdt;
+
+ @ApiModelProperty(value = "代理USDT")
+ private BigDecimal agentUsdt;
+
+
+}
diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java b/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java
index 673e91b..58cdd57 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/service/CoinService.java
@@ -37,4 +37,6 @@
public Result getWalletAgentRecords(@Valid RecordsPageDto recordsPageDto);
+ public Result getAllWalletCoin();
+
}
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 e3eaa85..e7ddaae 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
@@ -22,6 +22,7 @@
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.AllWalletCoinVo;
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;
@@ -510,4 +511,67 @@
return Result.ok(pageEntityToPageVo);
}
+ @Override
+ public Result getAllWalletCoin() {
+ //获取【币币】
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ PlatformCnyUsdtExchangeEntity cnyUsdtExchange = cnyUsdtExchangeDao.getCNYAndUSDTOne();
+ BigDecimal cnyUsdt = cnyUsdtExchange.getValue();
+ AllWalletCoinVo allWalletCoinVo = new AllWalletCoinVo();
+
+ BigDecimal totalUsdts = BigDecimal.ZERO;
+ if (!StrUtil.isEmpty(memberId.toString())) {
+
+ List<MemberWalletCoinEntity> memberWalletCoinlist = memberWalletCoinDao.selectMemberWalletCoinsByMemberId(memberId);
+ List<MemberWalletCoinInfoVo> memberWalletCoinInfoVolist = new ArrayList<MemberWalletCoinInfoVo>();
+
+ if (CollUtil.isNotEmpty(memberWalletCoinlist)) {
+ for (MemberWalletCoinEntity memberWalletCoinEntity : memberWalletCoinlist) {
+ MemberWalletCoinInfoVo memberWalletCoinInfoVo = new MemberWalletCoinInfoVo();
+ memberWalletCoinInfoVo.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletCoinInfoVo.setFrozenBalance(memberWalletCoinEntity.getFrozenBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletCoinInfoVo.setMemberId(memberWalletCoinEntity.getMemberId());
+ memberWalletCoinInfoVo.setTotalBalance(memberWalletCoinEntity.getTotalBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ memberWalletCoinInfoVo.setWalletCode(memberWalletCoinEntity.getWalletCode());
+ memberWalletCoinInfoVolist.add(memberWalletCoinInfoVo);
+ }
+ }
+
+ if (CollUtil.isNotEmpty(memberWalletCoinInfoVolist)) {
+ for (MemberWalletCoinInfoVo walletCoin : memberWalletCoinInfoVolist) {
+ if (MemberWalletCoinEnum.WALLETCOINCODE.getValue().equals(walletCoin.getWalletCode())) {
+ BigDecimal totalUsdt = BigDecimal.ZERO;
+ totalUsdt = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
+ totalUsdts = totalUsdts.add(totalUsdt);
+ } else {
+ BigDecimal amount = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance());
+ // 获取最新价
+ BigDecimal closePrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey(walletCoin.getWalletCode()+"/USDT")));
+ BigDecimal totalUsdt = BigDecimal.ZERO;
+ totalUsdt = totalUsdt.add(amount.multiply(closePrice));
+ totalUsdts = totalUsdts.add(totalUsdt);
+ }
+ }
+ }
+ }
+ allWalletCoinVo.setWalletUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN));
+ //获取【合约】
+ String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue();
+ MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode);
+ if (ObjectUtil.isEmpty(walletContract)) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0001"));
+ }
+ allWalletCoinVo.setContractUsdt(walletContract.getTotalBalance().setScale(4, BigDecimal.ROUND_DOWN));
+ totalUsdts = totalUsdts.add(walletContract.getTotalBalance());
+ //获取【代理】
+ MemberWalletAgentEntity walletAgent = memberWalletAgentDao.selectWalletAgentBymIdAndCode(memberId, walletCode);
+ BigDecimal availableBalance = walletAgent.getAvailableBalance();
+ allWalletCoinVo.setAgentUsdt(availableBalance.setScale(4, BigDecimal.ROUND_DOWN));
+ totalUsdts = totalUsdts.add(availableBalance);
+
+ allWalletCoinVo.setTotalUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN));
+ allWalletCoinVo.setTotalCny(totalUsdts.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN));
+ return Result.ok(allWalletCoinVo);
+ }
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index 8dd0b3a..e317ffa 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -160,8 +160,8 @@
MemberSettingEntity memberSettingEntity = new MemberSettingEntity();
memberSettingEntity.setSpread(BigDecimal.ONE);
- memberSettingEntity.setClosingSpread(BigDecimal.ONE);
- memberSettingEntity.setForceParam(BigDecimal.valueOf(0.0015));
+ memberSettingEntity.setClosingSpread(BigDecimal.valueOf(5));
+ memberSettingEntity.setForceParam(BigDecimal.valueOf(0.0030));
memberSettingEntity.setMemberId(member.getId());
memberSettingDao.insert(memberSettingEntity);
--
Gitblit v1.9.1