From 46d09f6b11cd1948781d353fca0504fe1b14fba5 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 22 Sep 2020 16:08:52 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java | 16 ++++++++++------
1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
index 8b803fe..dba29ae 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
@@ -787,15 +787,19 @@
MemberLevelRateEntity rateEntity = memberLevelRateDao.selectLeverRateByMemberIdAndSymbol(memberEntity.getId(), symbol);
+ ContractMoneyInfoVo contractMoneyInfoVo = new ContractMoneyInfoVo();
// 权益
BigDecimal equity = walletContractEntity.getTotalBalance().add(totalProfitOrLess);
- BigDecimal available = walletContractEntity.getAvailableBalance().add(totalProfitOrLess);
- if (available.compareTo(BigDecimal.ZERO) < 0) {
- available = BigDecimal.ZERO;
+ // 全仓模式,可用余额需随着盈亏变动
+ if (memberEntity.getContractPositionType() == ContractEntrustOrderEntity.POSITION_TYPE_ALL) {
+ BigDecimal available = walletContractEntity.getAvailableBalance().add(totalProfitOrLess);
+ if (available.compareTo(BigDecimal.ZERO) < 0) {
+ available = BigDecimal.ZERO;
+ }
+ contractMoneyInfoVo.setAvailableBalance(available);
}
- ContractMoneyInfoVo contractMoneyInfoVo = new ContractMoneyInfoVo();
- contractMoneyInfoVo.setAvailableBalance(available);
+
contractMoneyInfoVo.setBeUsedBondAmount(beUsedBondAmount);
contractMoneyInfoVo.setFrozenBondAmount(frozenBondAmount);
contractMoneyInfoVo.setEquity(equity);
@@ -895,7 +899,7 @@
} else {
BigDecimal available = walletContractEntity.getAvailableBalance();
BigDecimal lessAmount = thisTimeHold.subtract(available);
- MemberEntity memberEntity = memberDao.selectById(holdOrderEntity.getId());
+ MemberEntity memberEntity = memberDao.selectById(holdOrderEntity.getMemberId());
memberWalletContractDao.increaseWalletContractBalanceById(available.negate(), available.negate(), null, walletContractEntity.getId());
BigDecimal newBondAmount = holdOrderEntity.getBondAmount().subtract(lessAmount);
--
Gitblit v1.9.1