Helius
2020-08-28 013641a0b4d052fdb0ea69a891df502498943a0b
src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java
@@ -324,9 +324,19 @@
            if (holdOrderEntity.getSymbolCntSale() != 0) {
                holdOrderEntity.setOpeningFeeAmount(holdOrderEntity.getOpeningFeeAmount().subtract(fee));
                holdOrderEntity.setBondAmount(holdOrderEntity.getBondAmount().subtract(bondAmount));
                BigDecimal rewardAmount = holdOrderEntity.getRewardAmount() == null ? BigDecimal.ZERO : holdOrderEntity.getRewardAmount();
                holdOrderEntity.setRewardAmount(rewardAmount.add(profitOrLoss));
                contractHoldOrderDao.updateById(holdOrderEntity);
            } else {
                contractHoldOrderDao.deleteById(holdOrderEntity.getId());
                // 若平掉所有张数,若存在委托平仓,则删除委托平仓记录
                List<ContractEntrustOrderEntity> entrustOrders = contractEntrustOrderDao.selectEntrustOrderByOrderNo(holdOrderEntity.getOrderNo());
                if (CollUtil.isNotEmpty(entrustOrders)) {
                    for (ContractEntrustOrderEntity entrustOrder : entrustOrders) {
                        contractEntrustOrderDao.deleteById(entrustOrder.getId());
                    }
                }
            }
            BigDecimal changeAmount = profitOrLoss.add(bondAmount);