From 4affbdf8938d321c0926bc2b1832dfc81c317ffa Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Thu, 08 Jan 2026 18:49:30 +0800
Subject: [PATCH] ipo

---
 trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiApplyNewSharesOrderController.java |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiApplyNewSharesOrderController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiApplyNewSharesOrderController.java
index 85b5efa..8791cd0 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiApplyNewSharesOrderController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiApplyNewSharesOrderController.java
@@ -218,11 +218,15 @@
             }
             if (CollectionUtil.isNotEmpty(realtimes)) {
                 Realtime realtime = realtimes.get(0);
-                BigDecimal newMarketValue = order.getWinningNumber().multiply(BigDecimal.valueOf(realtime.getClose()));
+                double close = realtime.getClose();
+                if (order.getSell() == 1 && (order.getSellPrice() != null && order.getSellPrice().compareTo(BigDecimal.ZERO) > 0)) {
+                    close = order.getSellPrice().doubleValue();
+                }
+                BigDecimal newMarketValue = order.getWinningNumber().multiply(BigDecimal.valueOf(close));
                 inventoryGainsLosses = newMarketValue.subtract(initMarketValue);
                 order.setMarketValue(newMarketValue.doubleValue());
-                order.setClosePrice(BigDecimal.valueOf(realtime.getClose()));
-                order.setInventoryGainsLossesValue(calculateProfitPercentage(order.getSubPrice().doubleValue(), realtime.getClose()));
+                order.setClosePrice(BigDecimal.valueOf(close));
+                order.setInventoryGainsLossesValue(calculateProfitPercentage(order.getSubPrice().doubleValue(), close));
             } else {
                 order.setMarketValue(initMarketValue.doubleValue());
             }

--
Gitblit v1.9.3