From 28701d9c708089cd64e3dc813ad1d9079de6528a Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sun, 11 Jan 2026 19:43:51 +0800
Subject: [PATCH] 日股,美股

---
 src/main/java/com/nq/enums/EStockType.java                     |   30 +----
 src/main/java/com/nq/service/impl/UserAssetsServices.java      |    4 
 src/main/java/com/nq/service/impl/StockServiceImpl.java        |   12 -
 src/main/java/com/nq/utils/task/stock/StockTask.java           |    4 
 src/main/java/com/nq/service/impl/UserPositionServiceImpl.java |   52 ++------
 src/main/java/com/nq/ws/JPWebsocketRunClient.java              |   19 +-
 src/main/java/com/nq/ws/USWebsocketRunClient.java              |   18 +-
 src/main/java/com/nq/service/impl/UserServiceImpl.java         |    2 
 /dev/null                                                      |  132 ----------------------
 src/main/resources/application.properties                      |   20 --
 src/main/java/com/nq/ws/WebSocketClientBeanConfig.java         |   27 ++--
 src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java     |    8 -
 src/main/java/com/nq/enums/EConfigKey.java                     |   15 -
 src/main/resources/application.yml                             |    8 
 14 files changed, 70 insertions(+), 281 deletions(-)

diff --git a/src/main/java/com/nq/enums/EConfigKey.java b/src/main/java/com/nq/enums/EConfigKey.java
index c340f25..de76808 100644
--- a/src/main/java/com/nq/enums/EConfigKey.java
+++ b/src/main/java/com/nq/enums/EConfigKey.java
@@ -23,23 +23,16 @@
 
     INDICES("indices","指数数据"),
     US_INDICES("us_home_indices_code","美国数据"),
-    HK_INDICES("hk_home_indices_code","香港数据"),
-    IN_INDICES("in_home_indices_code","印度数据"),
-    TW_INDICES("tw_home_indices_code","台湾数据"),
-
+    JP_INDICES("jp_home_indices_code","日本数据"),
     ;
 
     //根据货币获取类型
     public static EConfigKey getEConfigKeyByStockType(String stockType) {
         if(EStockType.US.getCode().equals(stockType)){
             return US_INDICES;
-        }else if(EStockType.HK.getCode().equals(stockType)){
-            return HK_INDICES;
-        }else if(EStockType.IN.getCode().equals(stockType)){
-            return IN_INDICES;
-        }else if(EStockType.TW.getCode().equals(stockType)){
-            return TW_INDICES;
-        } else {
+        }else if(EStockType.JP.getCode().equals(stockType)){
+            return JP_INDICES;
+        }else {
             return US_INDICES;
         }
     }
diff --git a/src/main/java/com/nq/enums/EStockType.java b/src/main/java/com/nq/enums/EStockType.java
index ff06d8c..baa0561 100644
--- a/src/main/java/com/nq/enums/EStockType.java
+++ b/src/main/java/com/nq/enums/EStockType.java
@@ -13,13 +13,7 @@
 
     US("US","美国股票","5",PropertiesUtil.getProperty("US_HTTP_API"),PropertiesUtil.getProperty("US_KEY"),"USD","$"),
 
-    HK("HK","香港股票","39",PropertiesUtil.getProperty("HK_HTTP_API"),PropertiesUtil.getProperty("HK_KEY"),"HKD","HK$"),
-
-    IN("IN","印度股票","14", PropertiesUtil.getProperty("JS_IN_HTTP_URL"),PropertiesUtil.getProperty("JS_IN_KEY"),"INR","₹"),
-
-    //MX("MEX","墨西哥股票","7",PropertiesUtil.getProperty("MX_HTTP_API"),PropertiesUtil.getProperty("MX_KEY"),"MXN","MX$"),
-
-    TW("TW","台湾股票","46",PropertiesUtil.getProperty("TW_HTTP_API"),PropertiesUtil.getProperty("TW_KEY"),"TWD","NT$");
+    JP("JP","日本股票","35",PropertiesUtil.getProperty("JP_HTTP_API"),PropertiesUtil.getProperty("JP_KEY"),"JPY","¥");
 
 
     private String code;
@@ -50,12 +44,8 @@
     public static EStockType getEStockTypeByCode(String code){
         if(EStockType.US.getCode().equals(code)){
             return US;
-        }else if(EStockType.HK.getCode().equals(code)){
-            return HK;
-        }else if(EStockType.IN.getCode().equals(code)){
-            return IN;
-        }else if(EStockType.TW.getCode().equals(code)){
-            return TW;
+        }else if(EStockType.JP.getCode().equals(code)){
+            return JP;
         }else{
             return US;
         }
@@ -64,11 +54,7 @@
     public static boolean isExistByCode(String code){
         if(EStockType.US.getCode().equals(code)){
             return true;
-        }else if(EStockType.HK.getCode().equals(code)){
-            return true;
-        }else if(EStockType.IN.getCode().equals(code)){
-            return true;
-        }else if(EStockType.TW.getCode().equals(code)){
+        }else if(EStockType.JP.getCode().equals(code)){
             return true;
         }else{
             return false;
@@ -79,12 +65,8 @@
     public static EStockType getEStockTypeBySymbol(String symbol){
         if(EStockType.US.getSymbol().equals(symbol)){
             return US;
-        }else if(EStockType.HK.getSymbol().equals(symbol)){
-            return HK;
-        }else if(EStockType.IN.getSymbol().equals(symbol)){
-            return IN;
-        }else if(EStockType.TW.getSymbol().equals(symbol)){
-            return TW;
+        }else if(EStockType.JP.getSymbol().equals(symbol)){
+            return JP;
         }else{
             return null;
         }
diff --git a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
index d1ea032..e35de8d 100644
--- a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
@@ -141,13 +141,7 @@
                     addNews(1, PropertiesUtil.getProperty("US_HTTP_API") + "stock-markets?key=" + PropertiesUtil.getProperty("US_KEY") + "&type=1")
             );
             executor.submit(() ->
-                    addNews(1, PropertiesUtil.getProperty("HK_HTTP_API") + "stock-markets?key=" + PropertiesUtil.getProperty("HK_KEY") + "&type=1")
-            );
-            executor.submit(() ->
-                    addNews(1, PropertiesUtil.getProperty("JS_IN_HTTP_URL") + "stock-markets?key=" + PropertiesUtil.getProperty("JS_IN_KEY") + "&type=1")
-            );
-            executor.submit(() ->
-                    addNews(1, PropertiesUtil.getProperty("TW_HTTP_API") + "stock-markets?key=" + PropertiesUtil.getProperty("TW_KEY") + "&type=1")
+                    addNews(1, PropertiesUtil.getProperty("JP_HTTP_API") + "stock-markets?key=" + PropertiesUtil.getProperty("JP_KEY") + "&type=1")
             );
         } finally {
             // 关闭线程池
diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index a8d5448..ae6453f 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -720,25 +720,19 @@
                             .like(StockConfig::getCKey, EConfigKey.INDICES.getCode()));
 
             List<DataStockBean> usDataStockBeans = Lists.newArrayList();
-            List<DataStockBean> hkDataStockBeans = Lists.newArrayList();
-            List<DataStockBean> inDataStockBeans = Lists.newArrayList();
-            List<DataStockBean> twDataStockBeans = Lists.newArrayList();
+            List<DataStockBean> jpDataStockBeans = Lists.newArrayList();
             // 创建Gson对象(全局复用,避免重复创建)
             Gson gson = new Gson();
 
             // 统一处理各地区股票数据
             processStockData(stockConfigList, EStockType.US.getCode(), usDataStockBeans, gson);
-            //processStockData(stockConfigList, EStockType.HK.getCode(), hkDataStockBeans, gson);
-            processStockData(stockConfigList, EStockType.IN.getCode(), inDataStockBeans, gson);
-            //processStockData(stockConfigList, EStockType.TW.getCode(), twDataStockBeans, gson);
+            processStockData(stockConfigList, EStockType.JP.getCode(), jpDataStockBeans, gson);
 
             // 组装返回结果
             Map<String, Object> resultMap = new HashMap<>();
             resultMap.put("newsList", newsList);                //新闻列表
             resultMap.put("usDataStockBeans", usDataStockBeans);//美国指数
-            resultMap.put("hkDataStockBeans", hkDataStockBeans);//香港指数
-            resultMap.put("inDataStockBeans", inDataStockBeans);//印度指数
-            resultMap.put("twDataStockBeans", twDataStockBeans);//台湾指数
+            resultMap.put("jpDataStockBeans", jpDataStockBeans);//日本指数
             return ServerResponse.createBySuccess(resultMap);
         } catch (Exception e){
             e.printStackTrace();
diff --git a/src/main/java/com/nq/service/impl/UserAssetsServices.java b/src/main/java/com/nq/service/impl/UserAssetsServices.java
index 990e06c..85bcaa8 100644
--- a/src/main/java/com/nq/service/impl/UserAssetsServices.java
+++ b/src/main/java/com/nq/service/impl/UserAssetsServices.java
@@ -77,9 +77,7 @@
         List<UserAssets> userAssetsList =  userAssetsMapper.selectList(queryWrapper);
         List<EStockType> stockTypes = Arrays.asList(
                 EStockType.US,
-                EStockType.HK,
-                EStockType.IN,
-                EStockType.TW
+                EStockType.JP
         );
         for (EStockType stockType : stockTypes) {
             //是否存在记录
diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index 353a09f..6fc7309 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -2155,28 +2155,18 @@
                             null, null, state, null);
 
             BigDecimal usMarketValue = BigDecimal.ZERO; //美股市值
-            BigDecimal hkMarketValue = BigDecimal.ZERO; //港股市值
-            BigDecimal inMarketValue = BigDecimal.ZERO; //印股市值
-            BigDecimal twMarketValue = BigDecimal.ZERO; //台股市值
+            BigDecimal jpMarketValue = BigDecimal.ZERO; //日股市值
 
             BigDecimal usPositionEarnings = BigDecimal.ZERO; //美股持仓收益
-            BigDecimal hkPositionEarnings = BigDecimal.ZERO; //港股持仓收益
-            BigDecimal inPositionEarnings = BigDecimal.ZERO; //印股持仓收益
-            BigDecimal twPositionEarnings = BigDecimal.ZERO; //台股持仓收益
+            BigDecimal jpPositionEarnings = BigDecimal.ZERO; //日股持仓收益
 
             BigDecimal usPositionEarningsParent = BigDecimal.ZERO; //美股持仓收益百分比
-            BigDecimal hkPositionEarningsParent = BigDecimal.ZERO; //港股持仓收益百分比
-            BigDecimal inPositionEarningsParent = BigDecimal.ZERO; //印股持仓收益百分比
-            BigDecimal twPositionEarningsParent = BigDecimal.ZERO; //台股持仓收益百分比
+            BigDecimal jpPositionEarningsParent = BigDecimal.ZERO; //日股持仓收益百分比
 
             if (!userPositions.isEmpty()) {
                 for (UserPosition position : userPositions) {
                     BigDecimal nowPrice = priceServices.getNowPrice(position.getStockCode());
-                    /*if(state == 0){
-                        nowPrice = priceServices.getNowPrice(position.getStockCode());
-                    }else{
-                        nowPrice = position.getSellOrderPrice();
-                    }*/
+
                     UserPositionVO userPositionVO = UserPointUtil.assembleUserPositionVO(position,nowPrice);
                     userPositionVO.setOrderTotalPrice(userPositionVO.getOrderTotalPrice().multiply(new BigDecimal(userPositionVO.getOrderLever())));
 
@@ -2200,25 +2190,15 @@
                         usMarketValue = usMarketValue.add(nowPriceSUM);
                         usPositionEarnings = usPositionEarnings.add(userPositionVO.getProfitAndLose());
                         usPositionEarningsParent = usPositionEarningsParent.add(userPositionVO.getProfitAndLoseParent2());
-                    } else if(position.getStockGid().equals(EStockType.HK.getCode())) {
-                        hkMarketValue = hkMarketValue.add(nowPriceSUM);
-                        hkPositionEarnings = hkPositionEarnings.add(userPositionVO.getProfitAndLose());
-                        hkPositionEarningsParent = hkPositionEarningsParent.add(userPositionVO.getProfitAndLoseParent2());
-                    } else if(position.getStockGid().equals(EStockType.IN.getCode())) {
-                        inMarketValue = inMarketValue.add(nowPriceSUM);
-                        inPositionEarnings = inPositionEarnings.add(userPositionVO.getProfitAndLose());
-                        inPositionEarningsParent = inPositionEarningsParent.add(userPositionVO.getProfitAndLoseParent2());
-                    } else if(position.getStockGid().equals(EStockType.TW.getCode())) {
-                        twMarketValue = twMarketValue.add(nowPriceSUM);
-                        twPositionEarnings = twPositionEarnings.add(userPositionVO.getProfitAndLose());
-                        twPositionEarningsParent = twPositionEarningsParent.add(userPositionVO.getProfitAndLoseParent2());
+                    } else if(position.getStockGid().equals(EStockType.JP.getCode())) {
+                        jpMarketValue = jpMarketValue.add(nowPriceSUM);
+                        jpPositionEarnings = jpPositionEarnings.add(userPositionVO.getProfitAndLose());
+                        jpPositionEarningsParent = jpPositionEarningsParent.add(userPositionVO.getProfitAndLoseParent2());
                     }
 
                 }
                 usPositionEarnings = usPositionEarnings.setScale(2, RoundingMode.DOWN);
-                hkPositionEarnings = hkPositionEarnings.setScale(2, RoundingMode.DOWN);
-                inPositionEarnings = inPositionEarnings.setScale(2, RoundingMode.DOWN);
-                twPositionEarnings = twPositionEarnings.setScale(2, RoundingMode.DOWN);
+                jpPositionEarnings = jpPositionEarnings.setScale(2, RoundingMode.DOWN);
             }
 
             Map<String, String> map = new HashMap<>();
@@ -2226,17 +2206,9 @@
             map.put("usPositionEarnings", String.valueOf(usPositionEarnings));  //美股持仓收益
             map.put("usPositionEarningsParent", usPositionEarningsParent + "%");//美股持仓收益率
 
-            map.put("hkMarketValue", String.valueOf(hkMarketValue));            //港股市值
-            map.put("hkPositionEarnings", String.valueOf(hkPositionEarnings));  //港股持仓收益
-            map.put("hkPositionEarningsParent", hkPositionEarningsParent + "%");//港股持仓收益率
-
-            map.put("inMarketValue", String.valueOf(inMarketValue));            //印股市值
-            map.put("inPositionEarnings", String.valueOf(inPositionEarnings));  //印股持仓收益
-            map.put("inPositionEarningsParent", inPositionEarningsParent + "%");//印股持仓收益率
-
-            map.put("twMarketValue", String.valueOf(twMarketValue));            //台股市值
-            map.put("twPositionEarnings", String.valueOf(twPositionEarnings));  //台股持仓收益
-            map.put("twPositionEarningsParent", twPositionEarningsParent + "%");//台股持仓收益率
+            map.put("jpMarketValue", String.valueOf(jpMarketValue));            //日股市值
+            map.put("jpPositionEarnings", String.valueOf(jpPositionEarnings));  //日股持仓收益
+            map.put("jpPositionEarningsParent", jpPositionEarningsParent + "%");//日股持仓收益率
 
             return ServerResponse.createBySuccess(map);
         } catch (Exception e) {
diff --git a/src/main/java/com/nq/service/impl/UserServiceImpl.java b/src/main/java/com/nq/service/impl/UserServiceImpl.java
index 9026607..699ce23 100644
--- a/src/main/java/com/nq/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserServiceImpl.java
@@ -166,7 +166,7 @@
 
 
         user.setAccountType(Integer.valueOf(0));
-        user.setIsLock(Integer.valueOf(1));
+        user.setIsLock(Integer.valueOf(0));
         user.setIsActive(Integer.valueOf(0));
 
         user.setRegTime(new Date());
diff --git a/src/main/java/com/nq/utils/task/stock/StockTask.java b/src/main/java/com/nq/utils/task/stock/StockTask.java
index 3febc4c..9260db0 100644
--- a/src/main/java/com/nq/utils/task/stock/StockTask.java
+++ b/src/main/java/com/nq/utils/task/stock/StockTask.java
@@ -92,9 +92,7 @@
                 // 1. 定义需要处理的所有股票类型(集中管理,新增类型只需添加到列表)
                 List<EStockType> stockTypes = Arrays.asList(
                         EStockType.US,
-                        EStockType.HK,
-                        EStockType.IN,
-                        EStockType.TW
+                        EStockType.JP
                 );
 
                 // 2. 批量创建所有异步任务
diff --git a/src/main/java/com/nq/ws/TWWebsocketRunClient.java b/src/main/java/com/nq/ws/JPWebsocketRunClient.java
similarity index 90%
copy from src/main/java/com/nq/ws/TWWebsocketRunClient.java
copy to src/main/java/com/nq/ws/JPWebsocketRunClient.java
index fc98ae0..1de2178 100644
--- a/src/main/java/com/nq/ws/TWWebsocketRunClient.java
+++ b/src/main/java/com/nq/ws/JPWebsocketRunClient.java
@@ -24,10 +24,10 @@
 import java.util.*;
 
 @Slf4j
-public class TWWebsocketRunClient extends WebSocketClient {
+public class JPWebsocketRunClient extends WebSocketClient {
 
     private EStockType eStockType;
-    public TWWebsocketRunClient(URI serverUri,
+    public JPWebsocketRunClient(URI serverUri,
                                 EStockType eStockType
     ) {
         super(serverUri);
@@ -55,6 +55,7 @@
                     //send(("key:"+ eStockType.getStockKey()+":"+eStockType.getContryId()).getBytes());
                     send("heartbeat");
                 }
+
             }
         }, 0, 3000); // 每3秒发送一次心跳消息
     }
@@ -62,10 +63,10 @@
     @Override
     public void onMessage(String message) {
         if (message.contains("身份验证成功") || message.contains("pong") || message.contains("身份验证失败") || message.contains("ws连接点只能有一个")) {
-            System.out.println("tw" + message);
+            System.out.println("JP:" + message);
             return;
         }
-        System.out.println("tw2" + message);
+        System.out.println("JP2" + message);
         Map<String, String> stringObjectMap = jsonToMap(message);
         StockRealTimeBean stockRealTimeBean = new StockRealTimeBean();
         stockRealTimeBean.setPid(stringObjectMap.get("Id").toString());
@@ -77,7 +78,7 @@
         stockRealTimeBean.setPc(stringObjectMap.get("Chg").toString());
         stockRealTimeBean.setPcp(stringObjectMap.get("ChgPct").toString()+"%");
         stockRealTimeBean.setTime(stringObjectMap.get("Time").toString());
-        RedisKeyUtil.setCacheRealTimeStock(EStockType.TW,stockRealTimeBean);
+        RedisKeyUtil.setCacheRealTimeStock(EStockType.JP,stockRealTimeBean);
         ObjectMapper objectMapper = new ObjectMapper();
         try {
             if(!stockRealTimeBean.getPcp().contains("-")){
@@ -86,9 +87,9 @@
             String json = objectMapper.writeValueAsString(stockRealTimeBean);
             sendLoca(json);
             StockRealTimeBean stockDetailBean =  new Gson().fromJson(message, StockRealTimeBean.class);
-            RedisKeyUtil.setCacheRealTimeStock(EStockType.TW,stockDetailBean);
+            RedisKeyUtil.setCacheRealTimeStock(EStockType.JP,stockDetailBean);
         } catch (JsonProcessingException e) {
-            log.error("websocket 台湾股票 消息错误:{}", e.getMessage());
+            log.error("websocket 日本股票 消息错误:{}", e.getMessage());
         }
     }
 
@@ -100,12 +101,12 @@
 
     @Override
     public void onClose(int i, String s, boolean b) {
-        log.info("websocket 台湾股票 关闭 {} ", i);
+        log.info("websocket 日本股票 关闭 {} ", i);
     }
 
     @Override
     public void onError(Exception e) {
-        log.info("websocket 台湾股票 错误{}", e.getMessage());
+        log.info("websocket 日本股票 错误{}", e.getMessage());
     }
 
     public void sendLoca(String message) {
diff --git a/src/main/java/com/nq/ws/TWWebsocketRunClient.java b/src/main/java/com/nq/ws/USWebsocketRunClient.java
similarity index 90%
rename from src/main/java/com/nq/ws/TWWebsocketRunClient.java
rename to src/main/java/com/nq/ws/USWebsocketRunClient.java
index fc98ae0..8f15b19 100644
--- a/src/main/java/com/nq/ws/TWWebsocketRunClient.java
+++ b/src/main/java/com/nq/ws/USWebsocketRunClient.java
@@ -24,10 +24,10 @@
 import java.util.*;
 
 @Slf4j
-public class TWWebsocketRunClient extends WebSocketClient {
+public class USWebsocketRunClient extends WebSocketClient {
 
     private EStockType eStockType;
-    public TWWebsocketRunClient(URI serverUri,
+    public USWebsocketRunClient(URI serverUri,
                                 EStockType eStockType
     ) {
         super(serverUri);
@@ -62,10 +62,10 @@
     @Override
     public void onMessage(String message) {
         if (message.contains("身份验证成功") || message.contains("pong") || message.contains("身份验证失败") || message.contains("ws连接点只能有一个")) {
-            System.out.println("tw" + message);
+            System.out.println("US" + message);
             return;
         }
-        System.out.println("tw2" + message);
+        System.out.println("US2" + message);
         Map<String, String> stringObjectMap = jsonToMap(message);
         StockRealTimeBean stockRealTimeBean = new StockRealTimeBean();
         stockRealTimeBean.setPid(stringObjectMap.get("Id").toString());
@@ -77,7 +77,7 @@
         stockRealTimeBean.setPc(stringObjectMap.get("Chg").toString());
         stockRealTimeBean.setPcp(stringObjectMap.get("ChgPct").toString()+"%");
         stockRealTimeBean.setTime(stringObjectMap.get("Time").toString());
-        RedisKeyUtil.setCacheRealTimeStock(EStockType.TW,stockRealTimeBean);
+        RedisKeyUtil.setCacheRealTimeStock(EStockType.US,stockRealTimeBean);
         ObjectMapper objectMapper = new ObjectMapper();
         try {
             if(!stockRealTimeBean.getPcp().contains("-")){
@@ -86,9 +86,9 @@
             String json = objectMapper.writeValueAsString(stockRealTimeBean);
             sendLoca(json);
             StockRealTimeBean stockDetailBean =  new Gson().fromJson(message, StockRealTimeBean.class);
-            RedisKeyUtil.setCacheRealTimeStock(EStockType.TW,stockDetailBean);
+            RedisKeyUtil.setCacheRealTimeStock(EStockType.US,stockDetailBean);
         } catch (JsonProcessingException e) {
-            log.error("websocket 台湾股票 消息错误:{}", e.getMessage());
+            log.error("websocket 美股股票 消息错误:{}", e.getMessage());
         }
     }
 
@@ -100,12 +100,12 @@
 
     @Override
     public void onClose(int i, String s, boolean b) {
-        log.info("websocket 台湾股票 关闭 {} ", i);
+        log.info("websocket 美股股票 关闭 {} ", i);
     }
 
     @Override
     public void onError(Exception e) {
-        log.info("websocket 台湾股票 错误{}", e.getMessage());
+        log.info("websocket 美股股票 错误{}", e.getMessage());
     }
 
     public void sendLoca(String message) {
diff --git a/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java b/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
index cb1ba38..6534221 100644
--- a/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
+++ b/src/main/java/com/nq/ws/WebSocketClientBeanConfig.java
@@ -1,4 +1,3 @@
-/*
 package com.nq.ws;
 
 import com.nq.enums.EStockType;
@@ -22,22 +21,22 @@
 
         Map<String, WebSocketClient> retMap = new HashMap<>(2);
         try {
-            WebsocketRunClient hkWebsocketRunClient = new WebsocketRunClient(new URI(PropertiesUtil.getProperty("HK_WS_URL")), EStockType.HK);
-            hkWebsocketRunClient.connect();
-            hkWebsocketRunClient.setConnectionLostTimeout(0);
-            startHeartbeatThread(hkWebsocketRunClient);
-            retMap.put(EStockType.HK.getStockKey(), hkWebsocketRunClient);
+            JPWebsocketRunClient jpWebsocketRunClient = new JPWebsocketRunClient(new URI(PropertiesUtil.getProperty("JP_WS_URL")), EStockType.JP);
+            jpWebsocketRunClient.connect();
+            jpWebsocketRunClient.setConnectionLostTimeout(0);
+            startHeartbeatThread(jpWebsocketRunClient);
+            retMap.put(EStockType.JP.getStockKey(), jpWebsocketRunClient);
         } catch (Exception e) {
-            log.error("hkWebsocketRunClient 异常: {}", e.getMessage());
+            log.error("jpWebsocketRunClient 异常: {}", e.getMessage());
         }
         try {
-            TWWebsocketRunClient twWebsocketRunClient = new TWWebsocketRunClient(new URI(PropertiesUtil.getProperty("TW_WS_URL")), EStockType.TW);
-            twWebsocketRunClient.connect();
-            twWebsocketRunClient.setConnectionLostTimeout(0);
-            startHeartbeatThread(twWebsocketRunClient);
-            retMap.put(EStockType.TW.getStockKey(), twWebsocketRunClient);
+            USWebsocketRunClient usWebsocketRunClient = new USWebsocketRunClient(new URI(PropertiesUtil.getProperty("US_WS_URL")), EStockType.US);
+            usWebsocketRunClient.connect();
+            usWebsocketRunClient.setConnectionLostTimeout(0);
+            startHeartbeatThread(usWebsocketRunClient);
+            retMap.put(EStockType.US.getStockKey(), usWebsocketRunClient);
         } catch (Exception e) {
-            log.error("twWebsocketRunClient 异常: {}", e.getMessage());
+            log.error("usWebsocketRunClient 异常: {}", e.getMessage());
         }
         return retMap;
     }
@@ -68,4 +67,4 @@
 
 
 }
-*/
+
diff --git a/src/main/java/com/nq/ws/WebsocketRunClient.java b/src/main/java/com/nq/ws/WebsocketRunClient.java
deleted file mode 100644
index b0021de..0000000
--- a/src/main/java/com/nq/ws/WebsocketRunClient.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package com.nq.ws;
-
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.google.gson.Gson;
-import com.google.gson.reflect.TypeToken;
-import com.nq.enums.EStockType;
-import com.nq.pojo.StockRealTimeBean;
-import com.nq.utils.redis.RedisKeyUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.http.HttpResponse;
-import org.apache.http.client.HttpClient;
-import org.apache.http.client.entity.UrlEncodedFormEntity;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.message.BasicNameValuePair;
-import org.java_websocket.client.WebSocketClient;
-import org.java_websocket.handshake.ServerHandshake;
-import org.springframework.context.ApplicationContext;
-
-import java.io.IOException;
-import java.lang.reflect.Type;
-import java.net.URI;
-import java.nio.charset.StandardCharsets;
-import java.util.*;
-
-@Slf4j
-public class WebsocketRunClient  extends WebSocketClient {
-
-    private EStockType eStockType;
-    public WebsocketRunClient(URI serverUri,
-    EStockType eStockType
-    ) {
-        super(serverUri);
-        this.eStockType = eStockType;
-    }
-
-    private static HttpClient httpClient = HttpClients.createDefault(); // 单例化 HttpClient
-
-
-    private static HttpPost httpPost;
-    static {
-        httpPost = new HttpPost("http://127.0.0.1:8001/api/sendNotification"); // 初始化 HttpPost
-    }
-
-    @Override
-    public void onOpen(ServerHandshake serverHandshake) {
-        send(("key:"+ eStockType.getStockKey()+":"+eStockType.getContryId()).getBytes());
-        Timer heartbeatTimer;
-        // 启动心跳定时器
-        heartbeatTimer = new Timer();
-        heartbeatTimer.schedule(new TimerTask() {
-            @Override
-            public void run() {
-                if (isOpen()) {
-                    //send(("key:"+ eStockType.getStockKey()+":"+eStockType.getContryId()).getBytes());
-                    send("heartbeat");
-                }
-
-            }
-        }, 0, 3000); // 每3秒发送一次心跳消息
-    }
-
-    @Override
-    public void onMessage(String message) {
-        if (message.contains("身份验证成功") || message.contains("pong") || message.contains("身份验证失败") || message.contains("ws连接点只能有一个")) {
-            System.out.println("hk" + message);
-            return;
-        }
-        System.out.println("hk2" + message);
-        Map<String, String> stringObjectMap = jsonToMap(message);
-        StockRealTimeBean stockRealTimeBean = new StockRealTimeBean();
-        stockRealTimeBean.setPid(stringObjectMap.get("Id").toString());
-        stockRealTimeBean.setLast(stringObjectMap.get("Last").toString());
-        stockRealTimeBean.setBid(stringObjectMap.get("Bid").toString());
-        stockRealTimeBean.setAsk(stringObjectMap.get("Ask").toString());
-        stockRealTimeBean.setHigh(stringObjectMap.get("High").toString());
-        stockRealTimeBean.setLow(stringObjectMap.get("Low").toString());
-        stockRealTimeBean.setPc(stringObjectMap.get("Chg").toString());
-        stockRealTimeBean.setPcp(stringObjectMap.get("ChgPct").toString()+"%");
-        stockRealTimeBean.setTime(stringObjectMap.get("Time").toString());
-        RedisKeyUtil.setCacheRealTimeStock(EStockType.HK,stockRealTimeBean);
-        ObjectMapper objectMapper = new ObjectMapper();
-        try {
-            if(!stockRealTimeBean.getPcp().contains("-")){
-                stockRealTimeBean.setPcp("+"+stringObjectMap.get("ChgPct").toString()+"%");
-            }
-            String json = objectMapper.writeValueAsString(stockRealTimeBean);
-            sendLoca(json);
-            StockRealTimeBean stockDetailBean =  new Gson().fromJson(message, StockRealTimeBean.class);
-            RedisKeyUtil.setCacheRealTimeStock(EStockType.HK,stockDetailBean);
-        } catch (JsonProcessingException e) {
-            log.error("websocket 香港股票 消息错误:{}", e.getMessage());
-        }
-    }
-
-    public static Map<String, String> jsonToMap(String json) {
-        Gson gson = new Gson();
-        Type type = new TypeToken<Map<String, String>>(){}.getType();
-        return gson.fromJson(json, type);
-    }
-
-    @Override
-    public void onClose(int i, String s, boolean b) {
-        log.info("websocket 香港股票 关闭 {} ", i);
-    }
-
-    @Override
-    public void onError(Exception e) {
-        log.info("websocket 香港股票 错误{}", e.getMessage());
-    }
-
-    public void sendLoca(String message) {
-        try {
-            // 准备 form-data 参数
-            List<BasicNameValuePair> params = new ArrayList<>();
-            params.add(new BasicNameValuePair("message", message));
-
-            // 设置编码格式为 UTF-8
-            UrlEncodedFormEntity entity = new UrlEncodedFormEntity(params, StandardCharsets.UTF_8);
-            httpPost.setEntity(entity); // 设置 HttpPost 对象的参数
-
-            // 发送请求
-            HttpResponse response = httpClient.execute(httpPost);
-
-            // 处理响应
-            int statusCode = response.getStatusLine().getStatusCode();
-        } catch (IOException e) {
-            log.error("Http 请求错误", e);
-        }
-    }
-}
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 6298a41..00b84c7 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -17,7 +17,7 @@
 ftp.user=ftp_stock
 ftp.pass=Fxw16SK6s7QA
 ftp.address =/www/wwwroot/ftp_stock/
-ftp.server.http.prefix=https://img.acapl.net/
+ftp.server.http.prefix=https://rgimg.shengliankeji.top/
 
 redis1.ip=localhost
 redis1.port=6379
@@ -41,22 +41,12 @@
 
 #股票key的地址
 US_HTTP_API = http://api-us-v2.js-stock.top/
-#US_WS_URL = ws://api-us-v2-ws.js-stock.top
+US_WS_URL = ws://api-us-v2-ws.js-stock.top
 US_KEY = SIjHECiI3cIVfHXwsLsL
 
-HK_HTTP_API = http://api-hk.js-stock.top/
-HK_WS_URL = ws://api-hk-ws.js-stock.top
-HK_KEY = rJqhNHGpoyYierlzTq39
-
-JS_IN_HTTP_URL = http://api-in-pro.js-stock.top/
-#JS_IN_WS_URL = ws://api-in-pro-ws.js-stock.top
-JS_IN_KEY = xKChgi47AP1NMwMeYI3c
-
-TW_HTTP_API = http://api-tw.js-stock.top/
-TW_WS_URL = ws://api-tw-ws.js-stock.top
-TW_KEY = hhlobPKTugRVtWtHMxrf
-
-
+JP_HTTP_API = http://api-jp.js-stock.top/
+JP_WS_URL = ws://api-jp-ws.js-stock.top
+JP_KEY = rST7RRMPgvW4ogcAppCx
 #默认首页显示指数code
 #us_home_indices_code=15882,15881,16571
 #hk_home_indices_code=535606773,535606776,535606785
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index f045a02..cb89d51 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -107,7 +107,7 @@
     # 端口,默认为6379
     port: 6379
     # 数据库索引
-    database: 0
+    database: 6
     # 密码
     password:
     # 连接超时时间
@@ -126,9 +126,9 @@
     type: com.alibaba.druid.pool.DruidDataSource
     driverClassName: com.mysql.cj.jdbc.Driver
     #url: jdbc:mysql://127.0.0.1:6306/stock_ci?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-    url: jdbc:mysql://127.0.0.1:3306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-    username: stock
-    password: aGZyCy3YrBXwAxJs
+    url: jdbc:mysql://127.0.0.1:3306/stock-dg?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+    username: stock-dg
+    password: 6eAcBiXTatc8L6hm
     druid:
       # 初始连接数
       initialSize: 5

--
Gitblit v1.9.3