From f3b9e9f5024c13c6e70711a3ec98b4538378bd85 Mon Sep 17 00:00:00 2001
From: peter <14100000001@qq.com>
Date: Wed, 29 Oct 2025 13:53:57 +0800
Subject: [PATCH] 10.24二开,场外买入卖出,挂单
---
src/main/java/com/nq/service/impl/TradingHourServiceImpl.java | 47 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 47 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/TradingHourServiceImpl.java b/src/main/java/com/nq/service/impl/TradingHourServiceImpl.java
index 8226927..c66e8ff 100644
--- a/src/main/java/com/nq/service/impl/TradingHourServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/TradingHourServiceImpl.java
@@ -68,6 +68,53 @@
}
@Override
+ public StockSetting preMarketPrice(String stockCode) {
+ StockSetting stockSetting = stockSettingMapper.selectOne(new QueryWrapper<StockSetting>().eq("stock_code",stockCode));
+ if(stockSetting!= null){
+ // 说明进入盘前交易或者盘后交易时间
+ Date newDate = new Date();
+ DateTime startTime = DateUtil.parseDateTime(stockSetting.getStartTime());
+ DateTime endTime = DateUtil.parseDateTime(stockSetting.getEndTime());
+ if(newDate.after(startTime) && newDate.before(endTime)){
+ return stockSetting;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public Boolean isPreMarket(String stockCode) {
+ // 查询该股票的特定时间设置
+ StockSetting stockSetting = stockSettingMapper.selectOne(new QueryWrapper<StockSetting>().eq("stock_code",stockCode));
+ boolean res = timeCheckNoPreMarket();
+ if(!res){
+ if(stockSetting!= null){
+ // 说明进入盘前交易或者盘后交易时间
+ Date newDate = new Date();
+ DateTime startTime = DateUtil.parseDateTime(stockSetting.getStartTime());
+ DateTime endTime = DateUtil.parseDateTime(stockSetting.getEndTime());
+ if(newDate.after(startTime) && newDate.before(endTime)){
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ public Boolean timeCheckNoPreMarket() {
+ StockTimeSetting stockTimeSetting = stockTimeSettingMapper.selectOne(new QueryWrapper<StockTimeSetting>().eq("accets_type","US"));
+
+ if(stockTimeSetting == null){
+ return false;
+ }
+ if(!stockTimeSetting.getWeekDay().contains(String.valueOf(LocalDate.now().getDayOfWeek().getValue()))){
+ return false;
+ }
+ return TimeUtil.isTradingHour(stockTimeSetting.getAmStartTime(),stockTimeSetting.getAmEndTime(),stockTimeSetting.getPmStartTime(),stockTimeSetting.getPmEndTime());
+ }
+
+
+ @Override
public Boolean timeCheck() {
return true;
}
--
Gitblit v1.9.3