新版仿ok交易所-后端
1
zj
3 days ago 43d1131549c5ee6128f0ad4160df9cfce43db067
trading-order-service/src/main/java/com/yami/trading/service/contract/ContractOrderCalculationServiceImpl.java
@@ -19,7 +19,6 @@
import java.math.RoundingMode;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@Slf4j
@Service
@@ -197,11 +196,7 @@
        BigDecimal forceClose;
        if (order_close_line_type == 1) {
            Wallet wallet = this.walletService.findByUserId(order.getPartyId().toString());
            if (wallet == null) {
                forceClose = calculateType2ForceClosePrice(order);
            } else {
                forceClose = calculateType1ForceClosePrice(order, wallet);
            }
            forceClose = calculateType1ForceClosePrice(order, wallet);
        } else {
            forceClose = calculateType2ForceClosePrice(order);
        }
@@ -244,19 +239,16 @@
        List<ContractOrder> list = contractOrderService.findSubmitted(order.getPartyId(), null, null, null, null, null);
        BigDecimal otherEquity = BigDecimal.ZERO;
        for (ContractOrder contractOrder : list) {
            if (contractOrder == null) {
                continue;
            }
            if (ContractOrder.STATE_SUBMITTED.equals(contractOrder.getState())) {
                contractOrderService.wrapProfit(contractOrder);
            }
            if (Objects.equals(order.getUuid(), contractOrder.getUuid())) {
            if (order.getUuid().equals(contractOrder.getUuid())) {
                continue;
            }
            otherEquity = otherEquity.add(defaultZero(contractOrder.getProfit()).add(defaultZero(contractOrder.getDeposit())));
        }
        BigDecimal baseEquity = defaultZero(wallet != null ? wallet.getMoney() : null)
        BigDecimal baseEquity = defaultZero(wallet.getMoney())
                .add(otherEquity)
                .add(defaultZero(order.getDeposit()));
        BigDecimal priceOffset = baseEquity.divide(volumeFactor, 10, RoundingMode.HALF_UP);