From 4f9e3043fa36daa7ce18b358e38bd5d5c42bc0c1 Mon Sep 17 00:00:00 2001 From: gao <gaoleox@163> Date: Tue, 26 May 2020 11:32:06 +0800 Subject: [PATCH] Merge branch 'master' of https://chonggaoxiao:xcg523511090712@gitee.com/chonggaoxiao/new_excoin.git --- src/main/java/com/xcong/excoin/modules/coin/service/impl/CoinServiceImpl.java | 134 ++++++++++++++++++++++++++------------------ 1 files changed, 79 insertions(+), 55 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 7f8ea9e..a5615d3 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 @@ -2,9 +2,7 @@ import java.math.BigDecimal; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import javax.annotation.Resource; import org.springframework.stereotype.Service; @@ -18,8 +16,11 @@ import com.xcong.excoin.modules.coin.dao.platform.CnyUsdtExchangeDao; import com.xcong.excoin.modules.coin.entity.CnyUsdtExchange; import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange; +import com.xcong.excoin.modules.coin.parameter.vo.MemberAccountMoneyChangeInfoVo; +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; +import com.xcong.excoin.modules.coin.parameter.vo.MemberWalletContractInfoVo; import com.xcong.excoin.modules.coin.service.CoinService; import com.xcong.excoin.modules.member.dao.MemberWalletAgentDao; import com.xcong.excoin.modules.member.dao.MemberWalletCoinDao; @@ -51,49 +52,51 @@ @Override public Result getWalletCoin() { - try { - BigDecimal totalUsdt = BigDecimal.ZERO; //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne(); BigDecimal cnyUsdt = cnyUsdtExchange.getValue(); + BigDecimal totalUsdts = BigDecimal.ZERO; if(!StrUtil.isEmpty(memberId.toString())) { List<MemberWalletCoinEntity> memberWalletCoinlist = memberWalletCoinDao.selectMemberWalletCoinsByMemberId(memberId); - List<MemberWalletCoinInfoVo> memberWalletCoinInfoVolist = new ArrayList<MemberWalletCoinInfoVo>(); - MemberWalletCoinInfoVo memberWalletCoinInfoVo = new MemberWalletCoinInfoVo(); - if(ObjectUtil.isNotEmpty(memberWalletCoinlist)) { + + if(CollUtil.isNotEmpty(memberWalletCoinlist)) { for(MemberWalletCoinEntity memberWalletCoinEntity : memberWalletCoinlist) { - memberWalletCoinInfoVo.setAvailableBalance(memberWalletCoinEntity.getAvailableBalance()); - memberWalletCoinInfoVo.setFrozenBalance(memberWalletCoinEntity.getFrozenBalance()); + 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()); + memberWalletCoinInfoVo.setTotalBalance(memberWalletCoinEntity.getTotalBalance().setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinInfoVo.setWalletCode(memberWalletCoinEntity.getWalletCode()); memberWalletCoinInfoVolist.add(memberWalletCoinInfoVo); } } - - if(CollUtil.isNotEmpty(memberWalletCoinlist)) { - for(MemberWalletCoinEntity walletCoin : memberWalletCoinlist) { + 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); BigDecimal totalCny = totalUsdt.multiply(cnyUsdt); walletCoin.setTotalBalance(totalCny.setScale(4, BigDecimal.ROUND_DOWN)); }else { BigDecimal amount = walletCoin.getAvailableBalance().add(walletCoin.getFrozenBalance()); BigDecimal closePrice = new BigDecimal("10.0000"); + BigDecimal totalUsdt = BigDecimal.ZERO; //Double closePrice = symbolsService.getCloseSymbolsBySymbolsName(walletCoin.getWalletCode()+"/USDT"); totalUsdt = totalUsdt.add(amount.multiply(closePrice)); - walletCoin.setTotalBalance(totalUsdt.multiply(closePrice).multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + totalUsdts = totalUsdts.add(totalUsdt); + walletCoin.setTotalBalance(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); } } } MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo(); - memberWalletCoinVo.setTotalUsdt(totalUsdt.setScale(4, BigDecimal.ROUND_DOWN)); - memberWalletCoinVo.setTotalCny(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalUsdt(totalUsdts.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletCoinVo.setTotalCny(totalUsdts.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); memberWalletCoinVo.setMemberWalletCoinInfoVo(memberWalletCoinInfoVolist); return Result.ok(memberWalletCoinVo); }else { @@ -120,20 +123,15 @@ memberWalletCoinlist.add(coin); MemberWalletCoinVo memberWalletCoinVo = new MemberWalletCoinVo(); - memberWalletCoinVo.setTotalUsdt(totalUsdt.setScale(4, BigDecimal.ROUND_DOWN)); - memberWalletCoinVo.setTotalCny(totalUsdt.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); + 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); } - } catch (Exception e) { - e.printStackTrace(); - return Result.fail(MessageSourceUtils.getString("member_service_0003")); - } } @Override public Result getWalletCoinBySymbol(String symbol) { - try { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId,symbol); @@ -157,10 +155,6 @@ } } return Result.ok(memberWalletCoinInfoVo); - } catch (Exception e) { - e.printStackTrace(); - return Result.fail(MessageSourceUtils.getString("member_service_0003")); - } } @Override @@ -185,9 +179,6 @@ BigDecimal profitAndLoss = new BigDecimal("50.000"); //获取总付款 BigDecimal totalPayment = new BigDecimal("50.000"); - - walletContract.setFrozenBalance(totalPayment.setScale(4, BigDecimal.ROUND_DOWN)); - BigDecimal lastTotalBalance = new BigDecimal("0"); BigDecimal totalBalance = walletContract.getTotalBalance(); lastTotalBalance = totalBalance.add(profitAndLoss); @@ -195,14 +186,13 @@ lastTotalBalance = new BigDecimal("0"); } - walletContract.setAvailableBalance(walletContract.getAvailableBalance()); - walletContract.setTotalBalance(lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN)); + 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)); - Map<String,Object> map = new HashMap<String, Object>(); - map.put(MemberWalletCoinEnum.WALLETCOINUSDT.getValue(), lastTotalBalance.setScale(4, BigDecimal.ROUND_DOWN)); - map.put(MemberWalletCoinEnum.WALLETCONTRACT.getValue(), walletContract); - map.put(MemberWalletCoinEnum.WALLETCOINCNY.getValue(), lastTotalBalance.multiply(cnyUsdt).setScale(4, BigDecimal.ROUND_DOWN)); - return Result.ok(map); + return Result.ok(memberWalletContractInfoVo); } @Override @@ -331,8 +321,8 @@ Long memberId = LoginUserUtils.getAppLoginUser().getId(); String walletCode = MemberWalletCoinEnum.WALLETCOINCODE.getValue(); MemberWalletContractEntity walletContract = memberWalletContractDao.findWalletContractByMemberIdAndSymbol(memberId, walletCode); - - return Result.ok(walletContract); + BigDecimal availableBalance = walletContract.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN); + return Result.ok(availableBalance); } @Override @@ -342,26 +332,50 @@ MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, symbol); BigDecimal availableBalance = walletCoin.getAvailableBalance().setScale(4, BigDecimal.ROUND_DOWN); - walletCoin.setAvailableBalance(availableBalance); - return Result.ok(walletCoin); + return Result.ok(availableBalance); } @Override public Result getWalletCoinRecords() { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - List<MemberAccountMoneyChange> coinRecordList = memberAccountMoneyChangeDao.selectWalletCoinRecordsByMemIdTypeSymbol(memberId); - return Result.ok(coinRecordList); + 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()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + return Result.ok(arrayList); } @Override - public Result getWalletContractRecords(String symbol) { + public Result getWalletContractRecords() { //获取用户ID Long memberId = LoginUserUtils.getAppLoginUser().getId(); - + String symbol = MemberWalletCoinEnum.WALLETCOINCODE.getValue(); List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletContractRecordsByMemIdTypeSymbol(symbol,memberId); - return Result.ok(contractRecordList); + + 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()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + + return Result.ok(arrayList); } @Override @@ -371,7 +385,20 @@ List<MemberAccountMoneyChange> contractRecordList = memberAccountMoneyChangeDao.selectWalletAgentRecordByMemIdTypeSymbol(MemberWalletCoinEnum.WALLETCOINCODE.getValue(),memberId); - return Result.ok(contractRecordList); + + 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()); + arrayList.add(memberAccountMoneyChangeInfoVo); + } + } + return Result.ok(arrayList); } @Override @@ -472,15 +499,12 @@ CnyUsdtExchange cnyUsdtExchange =cnyUsdtExchangeDao.getCNYAndUSDTOne(); BigDecimal cnyUsdt = cnyUsdtExchange.getValue(); - BigDecimal multiply = availableBalance.multiply(cnyUsdt); - walletAgent.setAvailableBalance(availableBalance); - Map<String,Object> map = new HashMap<String, Object>(); - map.put(MemberWalletCoinEnum.WALLETCOINUSDT.getValue(), availableBalance.setScale(4, BigDecimal.ROUND_DOWN)); - map.put(MemberWalletCoinEnum.WALLETAGENT.getValue(), walletAgent); - map.put(MemberWalletCoinEnum.WALLETCOINCNY.getValue(), multiply.setScale(4, BigDecimal.ROUND_DOWN)); - return Result.ok(map); + MemberWalletAgentInfoVo memberWalletAgentInfoVo = new MemberWalletAgentInfoVo(); + memberWalletAgentInfoVo.setTotalBalance(availableBalance.setScale(4, BigDecimal.ROUND_DOWN)); + memberWalletAgentInfoVo.setTotalRMBBalance(multiply.setScale(4, BigDecimal.ROUND_DOWN)); + return Result.ok(memberWalletAgentInfoVo); } } -- Gitblit v1.9.1