From 2d406a0f6a382cf12db297ee56861a6d675314ad Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Wed, 03 Mar 2021 13:55:45 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java | 17 ++++++++++++-----
1 files changed, 12 insertions(+), 5 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 2057b81..5a3f774 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
@@ -320,7 +320,7 @@
FollowTraderInfoEntity tradeInfo = null;
if (MemberEntity.IS_TRADER_Y.equals(memberEntity.getIsTrader())) {
tradeInfo = followTraderInfoDao.selectTraderInfoByMemberId(memberEntity.getId());
- if (tradeInfo.getIsOpen().equals(FollowTraderInfoEntity.ISOPEN_Y)) {
+ if (FollowTraderInfoEntity.ISOPEN_Y.equals(tradeInfo.getIsOpen())) {
isOpenFollow = true;
}
}
@@ -506,7 +506,6 @@
canReduceMaxBond = BigDecimal.ZERO;
}
- holdOrderListVo.setBondAmount(walletContractEntity.getTotalBalance());
holdOrderListVo.setCanReduceMaxBond(canReduceMaxBond);
holdOrderListVo.setCanAddMaxBond(walletContractEntity.getAvailableBalance());
holdOrderListVo.setReturnRate(returnRate);
@@ -526,7 +525,7 @@
BigDecimal totalEntrustAmount = BigDecimal.ZERO;
if (CollUtil.isNotEmpty(entrustOrder)) {
for (ContractEntrustOrderEntity contractEntrustOrderEntity : entrustOrder) {
- totalEntrustAmount.add(contractEntrustOrderEntity.getEntrustAmount());
+ totalEntrustAmount = totalEntrustAmount.add(contractEntrustOrderEntity.getEntrustAmount());
}
}
BigDecimal riskRatio = totalHoldBond.divide(walletContractEntity.getTotalBalance().add(totalProfitOrLoss).subtract(totalEntrustAmount), 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100));
@@ -825,6 +824,8 @@
// 占用保证金 -- 即持仓单中的保证金之和
BigDecimal beUsedBondAmount = BigDecimal.ZERO;
+ BigDecimal moreBondAmount = BigDecimal.ZERO;
+ BigDecimal lessBondAmount = BigDecimal.ZERO;
// 总盈利
BigDecimal totalProfitOrLess = BigDecimal.ZERO;
if (CollUtil.isNotEmpty(holdOrderEntities)) {
@@ -838,9 +839,11 @@
BigDecimal profitOrLess = BigDecimal.ZERO;
// 开多
if (ContractHoldOrderEntity.OPENING_TYPE_MORE == holdOrderEntity.getOpeningType()) {
+ moreBondAmount = moreBondAmount.add(holdOrderEntity.getBondAmount());
profitOrLess = newPrice.subtract(holdOrderEntity.getOpeningPrice()).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale())).multiply(lotNumber);
// 开空
} else {
+ lessBondAmount = lessBondAmount.add(holdOrderEntity.getBondAmount());
profitOrLess = holdOrderEntity.getOpeningPrice().subtract(newPrice).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale())).multiply(lotNumber);
}
@@ -887,6 +890,8 @@
contractMoneyInfoVo.setUpOrDown(upOrDown);
contractMoneyInfoVo.setSymbolSku(cacheSettingUtils.getSymbolSku(symbol));
contractMoneyInfoVo.setLeverRate(rateEntity.getLevelRateUp());
+ contractMoneyInfoVo.setMoreBondAmount(moreBondAmount);
+ contractMoneyInfoVo.setLessBondAmount(lessBondAmount);
return Result.ok(contractMoneyInfoVo);
}
@@ -1070,8 +1075,10 @@
holdOrderEntity.setOperateNo(holdOrderEntity.getOperateNo() + 1);
contractHoldOrderDao.updateById(holdOrderEntity);
- // 发送爆仓消息
- sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), newForcePrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId());
+ if (ContractEntrustOrderEntity.POSITION_TYPE_ADD == holdOrderEntity.getPositionType()) {
+ // 发送爆仓消息
+ sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), newForcePrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId());
+ }
}
}
}
--
Gitblit v1.9.1