xiaoyong931011
2021-03-03 cdb183fd8a71dd4de62661432df46b03c98e7921
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);
    }