1
zj
2025-08-18 09f35ab58d22c6d8b186ddb1abefdee665d48ac3
1
8 files modified
1 files added
66 ■■■■ changed files
src/main/java/com/nq/controller/StockApiController.java 7 ●●●● patch | view | raw | blame | history
src/main/java/com/nq/pojo/IndexDateBo.java 28 ●●●●● patch | view | raw | blame | history
src/main/java/com/nq/service/IStockService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/PriceServicesImpl.java 3 ●●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/nq/service/impl/StockServiceImpl.java 14 ●●●●● patch | view | raw | blame | history
src/main/java/com/nq/utils/redis/RedisKeyUtil.java 2 ●●● patch | view | raw | blame | history
src/main/java/com/nq/ws/WebsocketRunClient.java 2 ●●● patch | view | raw | blame | history
src/main/resources/application.yml 6 ●●●●● patch | view | raw | blame | history
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();
    }
    /**
src/main/java/com/nq/pojo/IndexDateBo.java
New file
@@ -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; //  指数所在的交易所
}
src/main/java/com/nq/service/IStockService.java
@@ -105,4 +105,6 @@
    ServerResponse getOptionStock(HttpServletRequest request);
  Object getIndexData();
}
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);
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) {
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) {
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);
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
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