From 09f35ab58d22c6d8b186ddb1abefdee665d48ac3 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Mon, 18 Aug 2025 17:28:29 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/ws/WebsocketRunClient.java            |    2 
 src/main/java/com/nq/service/impl/StockServiceImpl.java    |   14 +++++++
 src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java |    2 
 src/main/java/com/nq/utils/redis/RedisKeyUtil.java         |    2 
 src/main/java/com/nq/controller/StockApiController.java    |    7 +++
 src/main/java/com/nq/service/IStockService.java            |    2 +
 src/main/java/com/nq/service/impl/PriceServicesImpl.java   |    3 +
 src/main/java/com/nq/pojo/IndexDateBo.java                 |   28 ++++++++++++++
 src/main/resources/application.yml                         |    6 ++-
 9 files changed, 59 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/nq/controller/StockApiController.java b/src/main/java/com/nq/controller/StockApiController.java
index d265e7a..6f4c5a1 100644
--- a/src/main/java/com/nq/controller/StockApiController.java
+++ b/src/main/java/com/nq/controller/StockApiController.java
@@ -80,7 +80,12 @@
         return this.iStockService.getKData(pid,interval,stockType);
     }
 
-
+    /*查询股票日线*/
+    @RequestMapping({"getIndexData.do"})
+    @ResponseBody
+    public Object getIndexData() {
+        return this.iStockService.getIndexData();
+    }
 
 
     /**
diff --git a/src/main/java/com/nq/pojo/IndexDateBo.java b/src/main/java/com/nq/pojo/IndexDateBo.java
new file mode 100644
index 0000000..82341ab
--- /dev/null
+++ b/src/main/java/com/nq/pojo/IndexDateBo.java
@@ -0,0 +1,28 @@
+package com.nq.pojo;
+
+import lombok.Data;
+
+/**
+ * @program: dabaogp
+ * @description:指数
+ * @create: 2025-07-21 17:14
+ **/
+@Data
+public class IndexDateBo {
+
+    private String Id;  // 指数id 也是指数的pid
+    private String Name; // 股票名称
+    private String Symbol;  // 股票编码
+    private String Last; // 股票最新价格
+    private String High; // 最高
+    private String Low; // 最低
+    private String Open; // 今开
+    private String PrevClose; // 昨收
+    private String Time; // 价格更新时间
+    private String Volume; // 交易量
+    private String Chg; // 涨幅
+    private String ChgPct; // 涨幅率
+    private String country_id; // 国家id
+    private String type; //  指数所在的交易所
+
+}
diff --git a/src/main/java/com/nq/service/IStockService.java b/src/main/java/com/nq/service/IStockService.java
index 4763888..d208606 100644
--- a/src/main/java/com/nq/service/IStockService.java
+++ b/src/main/java/com/nq/service/IStockService.java
@@ -105,4 +105,6 @@
 
 
     ServerResponse getOptionStock(HttpServletRequest request);
+
+  Object getIndexData();
 }
diff --git a/src/main/java/com/nq/service/impl/PriceServicesImpl.java b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
index 05dd037..4273c99 100644
--- a/src/main/java/com/nq/service/impl/PriceServicesImpl.java
+++ b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
@@ -10,6 +10,7 @@
 import com.nq.dao.StockMapper;
 import com.nq.dao.StockSettingMapper;
 import com.nq.enums.EConfigKey;
+import com.nq.enums.EStockType;
 import com.nq.pojo.*;
 import com.nq.service.IPriceServices;
 import com.nq.service.IStockConfigServices;
@@ -112,7 +113,7 @@
 
     public String doPost(String pid) {
         // 从配置中获取 API URL,并拼接 key
-        String apiUrl = PropertiesUtil.getProperty("JS_IN_HTTP_URL") + "stock?key=" + PropertiesUtil.getProperty("JS_IN_KEY");
+        String apiUrl = EStockType.US.getStockUrl() + "stock?key=" + EStockType.US.getStockKey();
         String result = null;
         try {
             URL url = new URL(apiUrl);
diff --git a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
index fb7a0d9..f1ccf01 100644
--- a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
@@ -132,7 +132,7 @@
 
     @Override
     public void grabNews() {
-        addNews(1, PropertiesUtil.getProperty("JS_IN_HTTP_URL") + "stock-markets?key=" + PropertiesUtil.getProperty("JS_IN_KEY") + "&type=6");
+        addNews(1, EStockType.US.getStockUrl() + "stock-markets?key=" + EStockType.US.getStockKey() + "&type=6");
     }
 
     private void addNews(Integer type, String url) {
diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index f7750a0..0f810db 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -40,6 +40,7 @@
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.concurrent.CompletableFuture;
+import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -454,6 +455,19 @@
     }
 
     @Override
+    public ServerResponse getIndexData() {
+        Object object = HttpUtil.get(EStockType.US.getStockUrl()+"indices?country_id="+EStockType.US.getContryId()+"&key="+EStockType.US.getStockKey());
+        Gson gson = new Gson();
+        List<IndexDateBo> dataList = gson.fromJson(object.toString(), new TypeToken<List<IndexDateBo>>(){}.getType());
+        List<String> targetIds = Arrays.asList("15881", "15882", "15883");
+        List<IndexDateBo> filteredList = dataList.stream()
+                .filter(item -> targetIds.contains(item.getId()))
+                .collect(Collectors.toList());
+        return ServerResponse.createBySuccess(filteredList);
+    }
+
+
+    @Override
     public ServerResponse getOptionStock(HttpServletRequest request) {
         User user = iUserService.getCurrentRefreshUser(request);
         if (user == null) {
diff --git a/src/main/java/com/nq/utils/redis/RedisKeyUtil.java b/src/main/java/com/nq/utils/redis/RedisKeyUtil.java
index 7e53315..961e0ea 100644
--- a/src/main/java/com/nq/utils/redis/RedisKeyUtil.java
+++ b/src/main/java/com/nq/utils/redis/RedisKeyUtil.java
@@ -91,7 +91,7 @@
 
     public static String doPost(String pid) {
         // 从配置中获取 API URL,并拼接 key
-        String apiUrl = PropertiesUtil.getProperty("JS_IN_HTTP_URL") + "stock?key=" + PropertiesUtil.getProperty("JS_IN_KEY");
+        String apiUrl = EStockType.US.getStockUrl() + "stock?key=" + EStockType.US.getStockKey();
         String result = null;
         try {
             URL url = new URL(apiUrl);
diff --git a/src/main/java/com/nq/ws/WebsocketRunClient.java b/src/main/java/com/nq/ws/WebsocketRunClient.java
index 8041f73..de2ff0e 100644
--- a/src/main/java/com/nq/ws/WebsocketRunClient.java
+++ b/src/main/java/com/nq/ws/WebsocketRunClient.java
@@ -43,7 +43,7 @@
 
     private static HttpPost httpPost;
     static {
-        httpPost = new HttpPost("http://127.0.0.1:8001/api/sendNotification"); // 初始化 HttpPost
+        httpPost = new HttpPost("http://127.0.0.1:8008/api/sendNotification"); // 初始化 HttpPost
     }
 
     @Override
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 1b38161..859d5fb 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,6 +1,8 @@
 # 数据源配置
 # 开发环境配置
 server:
+#  profiles:
+#    active: local
   # 服务器的HTTP端口,默认为8090
   port: 8091
   tomcat:
@@ -107,7 +109,7 @@
 #    port: 6379
     port: 6380
     # 数据库索引
-    database: 0
+    database: 2
     # 密码
     password:
     # 连接超时时间
@@ -125,7 +127,7 @@
   datasource:
     type: com.alibaba.druid.pool.DruidDataSource
     driverClassName: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://127.0.0.1:6306us?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+    url: jdbc:mysql://127.0.0.1:6306/us?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
 #    url: jdbc:mysql://127.0.0.1:6306us?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
 #    url: jdbc:mysql://127.0.0.1:3306/cgstock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
     username: root

--
Gitblit v1.9.3