From 645f40f5f61f8fa217ef01b5b2aaaf687b173577 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Mon, 29 Dec 2025 14:28:46 +0800
Subject: [PATCH] ipo修改

---
 trading-order-admin/src/main/java/com/yami/trading/admin/controller/ipo/NewSharesConfigController.java    |    6 ++++++
 trading-order-service/src/main/java/com/yami/trading/service/ipo/impl/UserPromiseRecordServiceImpl.java   |   15 +++++++++------
 trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiUserPromiseRecordController.java |    8 ++++++--
 trading-order-bean/src/main/java/com/yami/trading/bean/item/domain/Item.java                              |    3 +++
 4 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/admin/controller/ipo/NewSharesConfigController.java b/trading-order-admin/src/main/java/com/yami/trading/admin/controller/ipo/NewSharesConfigController.java
index 183cafb..00fd5ca 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/admin/controller/ipo/NewSharesConfigController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/admin/controller/ipo/NewSharesConfigController.java
@@ -57,6 +57,8 @@
     ApplyNewSharesOrderService applyNewSharesOrderService;
     @Autowired
     private MachineTranslationService translationService;
+    @Autowired
+    DataService dataService;
 
     @ApiOperation(value = "列表")
     @PostMapping("list")
@@ -127,6 +129,10 @@
         if (item == null) {
             throw new BusinessException("未查询到股票数据!");
         }
+        List<Realtime> realtimeList = dataService.realtime(item.getSymbol());
+        if (!realtimeList.isEmpty() && realtimeList.get(0) != null) {
+            item.setNowPrice(realtimeList.get(0).getClose());
+        }
         return Result.succeed(item);
     }
 
diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiUserPromiseRecordController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiUserPromiseRecordController.java
index b678b16..f60fbe9 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiUserPromiseRecordController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/ipo/ApiUserPromiseRecordController.java
@@ -126,8 +126,12 @@
         userPromiseRecord.setDeductUsdt(order.getSubPrice().multiply(userPromiseRecord.getDeductNumber()));
         userPromiseRecord.setStatus(1);
         Calendar calendar=Calendar.getInstance();
-        calendar.add(Calendar.DAY_OF_YEAR,newSharesConfig.getLockDay());
-        userPromiseRecord.setLockEndTime(calendar.getTime());
+        if (newSharesConfig.getLockDay() > 0) {
+            calendar.add(Calendar.DAY_OF_YEAR,newSharesConfig.getLockDay());
+            userPromiseRecord.setLockEndTime(calendar.getTime());
+        } else {
+            userPromiseRecord.setLockEndTime(calendar.getTime());
+        }
         userPromiseRecord.setNewSharesConfigId(newSharesConfig.getUuid());
         userPromiseRecordService.applyPromise(newSharesConfig, userPromiseRecord, order);
         return Result.succeed();
diff --git a/trading-order-bean/src/main/java/com/yami/trading/bean/item/domain/Item.java b/trading-order-bean/src/main/java/com/yami/trading/bean/item/domain/Item.java
index b07d6a9..b829178 100644
--- a/trading-order-bean/src/main/java/com/yami/trading/bean/item/domain/Item.java
+++ b/trading-order-bean/src/main/java/com/yami/trading/bean/item/domain/Item.java
@@ -279,6 +279,9 @@
 
     private Integer autosecond;
 
+    @TableField(exist = false)
+    private double nowPrice;
+
 
 
     @JsonIgnore
diff --git a/trading-order-service/src/main/java/com/yami/trading/service/ipo/impl/UserPromiseRecordServiceImpl.java b/trading-order-service/src/main/java/com/yami/trading/service/ipo/impl/UserPromiseRecordServiceImpl.java
index 16f306b..133e6af 100644
--- a/trading-order-service/src/main/java/com/yami/trading/service/ipo/impl/UserPromiseRecordServiceImpl.java
+++ b/trading-order-service/src/main/java/com/yami/trading/service/ipo/impl/UserPromiseRecordServiceImpl.java
@@ -96,12 +96,15 @@
              throw new YamiShopBindException("未提交认缴记录");
          }
 
-        Calendar calendar = Calendar.getInstance();
-        calendar.setTime(userPromiseRecords.get(0).getCreateTime());
-        calendar.add(Calendar.DAY_OF_YEAR,newSharesConfig.getLockDay());
-        if (System.currentTimeMillis() < calendar.getTimeInMillis()){
-               throw new YamiShopBindException("新股锁定中无法卖出");
-        }
+         if (newSharesConfig.getLockDay() > 0) {
+             Calendar calendar = Calendar.getInstance();
+             calendar.setTime(userPromiseRecords.get(0).getCreateTime());
+             calendar.add(Calendar.DAY_OF_YEAR,newSharesConfig.getLockDay());
+             if (System.currentTimeMillis() < calendar.getTimeInMillis()){
+                 throw new YamiShopBindException("新股锁定中无法卖出");
+             }
+         }
+
          BigDecimal usdt=new BigDecimal("0");
          if (CollectionUtil.isNotEmpty(userPromiseRecords)){
              List<Realtime> realtimes = dataService.realtime(userPromiseRecords.get(0).getProductCode());

--
Gitblit v1.9.3