xiaoyong931011
2021-03-01 8ab58aba1f471ad9f5dcd4e9c0925521c270f79c
Merge branch 'whole_new' of http://120.27.238.55:7000/r/exchange into whole_new
2 files modified
14 ■■■■■ changed files
src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractMoneyInfoVo.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/contract/parameter/vo/ContractMoneyInfoVo.java
@@ -17,6 +17,12 @@
    @ApiModelProperty(value = "占用保证金")
    private BigDecimal beUsedBondAmount;
    @ApiModelProperty(value = "开多占用保证金")
    private BigDecimal moreBondAmount;
    @ApiModelProperty(value = "开空占用保证金")
    private BigDecimal lessBondAmount;
    @ApiModelProperty(value = "冻结保证金")
    private BigDecimal frozenBondAmount;
src/main/java/com/xcong/excoin/modules/contract/service/impl/ContractHoldOrderServiceImpl.java
@@ -824,6 +824,8 @@
        // 占用保证金 -- 即持仓单中的保证金之和
        BigDecimal beUsedBondAmount = BigDecimal.ZERO;
        BigDecimal moreBondAmount = BigDecimal.ZERO;
        BigDecimal lessBondAmount = BigDecimal.ZERO;
        // 总盈利
        BigDecimal totalProfitOrLess = BigDecimal.ZERO;
        if (CollUtil.isNotEmpty(holdOrderEntities)) {
@@ -837,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);
                }
@@ -886,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);
    }
@@ -1069,9 +1075,11 @@
                holdOrderEntity.setOperateNo(holdOrderEntity.getOperateNo() + 1);
                contractHoldOrderDao.updateById(holdOrderEntity);
                if (ContractEntrustOrderEntity.POSITION_TYPE_ADD == holdOrderEntity.getPositionType()) {
                // 发送爆仓消息
                sendOrderBombMsg(holdOrderEntity.getId(), holdOrderEntity.getOpeningType(), newForcePrice, holdOrderEntity.getSymbol(), holdOrderEntity.getOperateNo(), holdOrderEntity.getMemberId());
            }
        }
    }
}
}