From 0c74d36f29e8279d9061d57466b3f488a4e1b89f Mon Sep 17 00:00:00 2001
From: peter <14100000001@qq.com>
Date: Tue, 30 Dec 2025 17:20:14 +0800
Subject: [PATCH] 新增港股
---
src/main/java/com/nq/utils/stock/sina/SinaStockApi.java | 101 +++++++++++++++++++++++++++-----------------------
1 files changed, 54 insertions(+), 47 deletions(-)
diff --git a/src/main/java/com/nq/utils/stock/sina/SinaStockApi.java b/src/main/java/com/nq/utils/stock/sina/SinaStockApi.java
index bbbd3f6..88adf41 100644
--- a/src/main/java/com/nq/utils/stock/sina/SinaStockApi.java
+++ b/src/main/java/com/nq/utils/stock/sina/SinaStockApi.java
@@ -40,14 +40,18 @@
// System.out.println(sina_url + stockGid);
// sina_result = HttpClientRequest.doGet(sina_url + stockGid);
// System.out.println("请求返回:"+sina_result);
- System.out.println("http://36.138.182.213:7001/crypto/getSinaStock?stockGid=" + stockGid);
- sina_result = HttpClientRequest.doGet("http://36.138.182.213:7001/crypto/getSinaStock?stockGid=" + stockGid);
+
+ System.out.println(PropertiesUtil.getProperty("sina.data.proxy.list.url") + stockGid);
+ sina_result = HttpClientRequest.doGet(PropertiesUtil.getProperty("sina.data.proxy.list.url") + stockGid);
System.out.println("请求返回:"+sina_result);
+// sina_result = "var hq_str_sz300270=\"中威电子,0.000,11.710,0.000,0.000,0.000,0.000,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,0,0.000,2025-12-03,09:10:06,00\";";
} catch (Exception e) {
log.error("获取股票行情出错,错误信息 = {}", e);
}
return sina_result.substring(sina_result.indexOf("=") + 2);
}
+
+
/**
@@ -114,6 +118,34 @@
stockListVO.setPreclose_px(hqarr[2]);
stockListVO.setOpen_px(hqarr[1]);
+ }
+
+ return stockListVO;
+ }
+ public static StockListVO assembleStockListVOHk(String sinaResult) {
+ StockListVO stockListVO = new StockListVO();
+
+ String[] hqarr = sinaResult.split(",");
+
+ if (hqarr.length > 1) {
+
+ stockListVO.setName(hqarr[1]);
+
+ stockListVO.setNowPrice(hqarr[6]);
+
+ stockListVO.setHcrate(new BigDecimal(hqarr[8]));
+
+ stockListVO.setToday_max(hqarr[4]);
+
+ stockListVO.setToday_min(hqarr[5]);
+
+ stockListVO.setBusiness_amount(hqarr[11]);
+
+ stockListVO.setBusiness_balance(hqarr[12]);
+
+ stockListVO.setPreclose_px(hqarr[3]);
+
+ stockListVO.setOpen_px(hqarr[2]);
}
return stockListVO;
@@ -253,53 +285,28 @@
}
//hk 数据转换
public static StockVO otherStockVO(String Result) {
- StockVO stockVO = new StockVO();
- //判断是否是
- JSONObject jsonObject = JSONObject.parseObject(Result);
- stockVO.setName(jsonObject.getString("f14"));
+ String[] fields = Result.split(",");
+ StockVO stock = new StockVO();
+ stock.setName(fields[1]); // 中文名称
+ stock.setCode(""); // 需要从其他地方获取
+ stock.setSpell(fields[0]); // 英文名称
+ stock.setGid(""); // 需要从其他地方获取
+ stock.setNowPrice(fields[6]); // 当前价
+ stock.setHcrate(new BigDecimal(fields[8])); // 涨跌幅
+ stock.setToday_max(fields[4]); // 最高价
+ stock.setToday_min(fields[5]); // 最低价
+ stock.setBusiness_balance(fields[11]); // 成交量
+ stock.setBusiness_amount(fields[12]); // 成交额
+ stock.setPreclose_px(fields[3]); // 昨收价
+ stock.setOpen_px(fields[2]); // 开盘价
+ stock.setType("hk"); // 港股标识
- stockVO.setNowPrice(!Objects.equals(jsonObject.getString("f2"), "-") ? jsonObject.getString("f2") : "0");
+ // 买卖盘数据(港股只有1档买卖盘数据)
+ stock.setBuy1(fields[9]); // 买一价
+ stock.setSell1(fields[10]); // 卖一价
+ // 其他买卖盘数据在港股中不可用,保持默认值
- stockVO.setHcrate(new BigDecimal(!Objects.equals(jsonObject.getString("f3"), "-") ? jsonObject.getString("f3"): "0"));
-
- stockVO.setToday_max(!Objects.equals(jsonObject.getString("f15"), "-") ? jsonObject.getString("f15") : "0");
-
- stockVO.setToday_min(!Objects.equals(jsonObject.getString("f16"), "-") ? jsonObject.getString("f16") : "0");
-
- stockVO.setBusiness_amount(!Objects.equals(jsonObject.getString("f6"), "-") ? jsonObject.getString("f6") : "0");
-
- stockVO.setBusiness_balance(!Objects.equals(jsonObject.getString("f5"), "-") ? jsonObject.getString("f5") : "0");
-
- stockVO.setPreclose_px(!Objects.equals(jsonObject.getString("f18"), "-") ? jsonObject.getString("f18") : "0");
-
- stockVO.setOpen_px(!Objects.equals(jsonObject.getString("f17"), "-") ? jsonObject.getString("f17") : "0");
- stockVO.setType(jsonObject.getString("f13"));
- String buy = "0";
- stockVO.setBuy1(buy);
- stockVO.setBuy2(buy);
- stockVO.setBuy3(buy);
- stockVO.setBuy4(buy);
- stockVO.setBuy5(buy);
-
- stockVO.setSell1(buy);
- stockVO.setSell2(buy);
- stockVO.setSell3(buy);
- stockVO.setSell4(buy);
- stockVO.setSell5(buy);
-
- stockVO.setBuy1_num(buy);
- stockVO.setBuy2_num(buy);
- stockVO.setBuy3_num(buy);
- stockVO.setBuy4_num(buy);
- stockVO.setBuy5_num(buy);
-
- stockVO.setSell1_num(buy);
- stockVO.setSell2_num(buy);
- stockVO.setSell3_num(buy);
- stockVO.setSell4_num(buy);
- stockVO.setSell5_num(buy);
-
- return stockVO;
+ return stock;
}
//us 数据转换
public static StockUsVO otherUsStockVO(String Result) {
--
Gitblit v1.9.3