From 34f560a862e6c904a94382f0da5a4bcf3826fc91 Mon Sep 17 00:00:00 2001
From: PC-20250623MANY\Administrator <344137771@qq.com>
Date: Wed, 27 Aug 2025 22:16:17 +0800
Subject: [PATCH] 1

---
 src/eastmoney/HQData.js |  157 +++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 112 insertions(+), 45 deletions(-)

diff --git a/src/eastmoney/HQData.js b/src/eastmoney/HQData.js
index 053c267..da2358f 100644
--- a/src/eastmoney/HQData.js
+++ b/src/eastmoney/HQData.js
@@ -305,7 +305,7 @@
 };
 
 HQData.NetworkFilter = function (data, callback) {
-  HQData.Log(`[HQData::NetworkFilter] ${HQData.Explain}`, data);
+  HQData.Log(`网络过滤器 [HQData::NetworkFilter] ${HQData.Explain}`, data);
 
   switch (data.Name) {
     case "MinuteChartContainer::RequestMinuteData": // 分时图数据对接
@@ -320,6 +320,7 @@
       break;
     case "KLineChartContainer::RequestRealtimeData": // 日线实时数据更新
       HQData.RequestRealtimeData(data, callback);
+      // HQData.RequestHistoryData(data, callback);
       break;
     case "KLineChartContainer::RequestFlowCapitalData": // 流通股本
       HQData.RequestFlowCapitalData(data, callback);
@@ -329,7 +330,8 @@
       HQData.RequestHistoryMinuteData(data, callback);
       break;
     case "KLineChartContainer::RequestMinuteRealtimeData": // 分钟增量数据更新
-      HQData.RequestMinuteRealtimeData(data, callback);
+      // HQData.RequestMinuteRealtimeData(data, callback);
+      HQData.RequestHistoryMinuteData(data, callback);
       break;
   }
 };
@@ -1286,7 +1288,7 @@
   console.log(111111, symbol, period, right, option);
   // https://push2his.eastmoney.com/api/qt/stock/kline/get?fields1=f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13&fields2=f51,f52,f53,f54,f55,f56,f57,f58,f59,f60,f61&beg=0&end=20500101&ut=fa5fd1943c7b386f172d6893dbfba10b&rtntype=6&secid=0.300059&klt=101&fqt=0
 
-  var internalSymbol = HQData.GetInternalSymbol(symbol);
+  // var internalSymbol = HQData.GetInternalSymbol(symbol);
   // console.log(internalSymbol,'caonima');
   // if (!internalSymbol.Market) {
   //   internalSymbol.Market = '106'
@@ -1321,7 +1323,7 @@
   return {
     Url: url,
     Symbol: symbol,
-    InternalSymbol: internalSymbol,
+    // InternalSymbol: internalSymbol,
     Period: period,
     Right: right,
   };
@@ -1407,16 +1409,17 @@
     callback(hqChartData);
   }
 };
-
+// 日线全量数据下载
 HQData.RequestHistoryData = function (data, callback) {
   data.PreventDefault = true;
   var symbol = data.Request.Data.symbol; // 请求的股票代码
   var period = data.Self.Period; // 周期
   var right = data.Self.Right; // 复权
 
-  console.log(`[HQData::RequestHistoryData] Symbol=${symbol}`);
+  console.log(`日线全量数据下载 [HQData::RequestHistoryData] Symbol=${symbol}`);
   var obj = HQData.GetKLineApiUrl(symbol, period, right, null);
 
+  // return
   $.ajax({
     url: obj.Url,
     type: "GET",
@@ -1488,14 +1491,27 @@
       //
       yClose = close;
     }
-  }
 
-  if (option.Data.Self.IsDestroy === false) {
-    HQData.Log("[HQData.RecvHistoryData] hqchartData ", hqChartData);
-    callback(hqChartData);
+    // var aaa = [
+    //   "20250829",
+    //   yClose,
+    //   Math.random() * 100,
+    //   Math.random() * 100,
+    //   Math.random() * 100,
+    //   Math.random() * 100,
+    //   Math.random() * 100,
+    //   Math.random() * 100,
+    // ];
+    // hqChartData.data.push(aaa);
   }
+  console.log("全量数据", hqChartData);
+
+  // if (option.Data.Self.IsDestroy === false) {
+  HQData.Log("[HQData.RecvHistoryData] hqchartData ", hqChartData);
+  callback(hqChartData);
+  // }
 };
-
+// 日线实时数据更新
 HQData.RequestRealtimeData = function (data, callback) {
   data.PreventDefault = true;
   var symbol = data.Request.Data.symbol[0]; // 请求的股票代码
@@ -1507,64 +1523,113 @@
   if (dateRange && dateRange.End && dateRange.End.Date > 0)
     option.End = dateRange.End.Date;
 
-  console.log(`[HQData::RequestRealtimeData] Symbol=${symbol}`);
   var obj = HQData.GetKLineApiUrl(symbol, period, right, option);
+  console.log(
+    `日线实时数据更新 [HQData::RequestRealtimeData] Symbol=${symbol}`,
+    obj
+  );
 
   if (!obj.Url) return;
 
+  // return
   $.ajax({
     url: obj.Url,
     type: "GET",
     success: function (recvData) {
-      HQData.RecvRealtimeData(recvData, callback, { Data: data, Obj: obj });
+      HQData.RecvRealtimeData(recvData, callback, {
+        Data: data,
+        Obj: obj,
+      });
     },
   });
 };
 
 HQData.RecvRealtimeData = function (recvData, callback, option) {
-  var data = recvData.data;
+  // var data = recvData.data;
+  var data = JSON.parse(recvData);
   const kLines = JSON.parse(window.localStorage.getItem("kLine"));
   var yClose = "123";
-  console.log("recvDatadata====", data);
-  if (!data || !data.klines) return;
-  if (kLines.type === "IN" || kLines.type === "US") {
-    for (var i = 0; i < data.klines.length; ++i) {
-      var strItem = data.klines[i];
-      var item = strItem.split(",");
-      var date = moment.unix(Date.parse(item[0])).format("YYYYMMDD");
+  // console.log("recvDatadata====", data, kLines);
+  console.log("recvDatadata====", kLines, option);
+  // var stock = { symbol: option.Obj.Symbol, name: data.name || "" };
+  // if (!data || !data.klines) return;
+  // if (kLines.type === "IN" || kLines.type === "US") {
+  //   for (var i = 0; i < data.klines.length; ++i) {
+  //     var strItem = data.klines[i];
+  //     var item = strItem.split(",");
+  //     var date = moment.unix(Date.parse(item[0])).format("YYYYMMDD");
 
-      var open = parseFloat(item[1]);
-      var close = parseFloat(item[2]);
-      var high = parseFloat(item[3]);
-      var low = parseFloat(item[4]);
-      var vol = parseFloat(item[5]) * 100;
-      var amount = parseFloat(item[6]);
+  //     var open = parseFloat(item[1]);
+  //     var close = parseFloat(item[2]);
+  //     var high = parseFloat(item[3]);
+  //     var low = parseFloat(item[4]);
+  //     var vol = parseFloat(item[5]) * 100;
+  //     var amount = parseFloat(item[6]);
 
-      stock.yclose = yClose;
-      stock.open = open;
-      stock.high = high;
-      stock.low = low;
-      stock.price = close;
-      stock.vol = vol;
-      stock.amount = amount;
-      stock.date = date;
+  //     stock.yclose = yClose;
+  //     stock.open = open;
+  //     stock.high = high;
+  //     stock.low = low;
+  //     stock.price = close;
+  //     stock.vol = vol;
+  //     stock.amount = amount;
+  //     stock.date = date;
 
-      yClose = close;
-    }
-  }
+  //     yClose = close;
+  //   }
+  // }
+  // var hqchartData = { code: 0, stock: [stock] };
 
-  var hqchartData = { code: 0, stock: [stock] };
+  // HQData.Log("[HQData.RecvRealtimeData] hqchartData ", hqchartData);
+  // callback(hqchartData);
+
+  //#region ---------------------------
+  var strItem = data[data.length - 1];
+
+  var date = moment.unix(strItem.t).format("YYYYMMDD");
+  var open = parseFloat(strItem.o);
+  var close = parseFloat(strItem.c);
+  var high = parseFloat(strItem.h);
+  var low = parseFloat(strItem.l);
+  var vol = parseFloat(strItem.v) * 100;
+  var amount = parseFloat(Math.random() * 100 + "");
+  yClose = close;
+
+  // var newItem = {
+  //   name: "123",
+  //   // symbol: option.Obj.Symbol,
+  //   date,
+  //   yClose,
+  //   open,
+  //   high: Math.random() * 100,
+  //   low,
+  //   close,
+  //   vol,
+  //   amount,
+  // };
+
+  var newItem = [date, yClose, open, high, low, close, vol, amount];
+
+  var hqchartData = {
+    code: 0,
+    stock: [newItem],
+  };
+  console.log("hqchartData", hqchartData);
 
   HQData.Log("[HQData.RecvRealtimeData] hqchartData ", hqchartData);
   callback(hqchartData);
+  //#endregion
 };
+// 分钟全量数据下载
 HQData.RequestHistoryMinuteData = function (data, callback) {
   data.PreventDefault = true;
-  var symbol = data.Request.Data.symbol; // 请求的股票代码
+  var symbol = data.Request.Data.symbol[0]; // 请求的股票代码
   var period = data.Self.Period; // 周期
   var right = data.Self.Right; // 复权
 
-  console.log(`[HQData::RequestHistoryMinuteData] Symbol=${symbol}`);
+  console.log(
+    `分钟全量数据下载 [HQData::RequestHistoryMinuteData] Symbol=${symbol}`
+  );
   var obj = HQData.GetMinuteKLineApiUrl(symbol, period, right, null);
 
   $.ajax({
@@ -1587,7 +1652,8 @@
   hqChartData.name = "123";
 
   var yClose = "";
-  console.log("recvData===data.name22", recvData, kLines);
+  // console.log("recvData===data.name22", recvData, kLines);
+  console.log("recvData===data.name22", kLines);
   recvData = JSON.parse(recvData);
 
   if (kLines.type === "SZHB") {
@@ -1642,7 +1708,7 @@
     callback(hqChartData);
   }
 };
-
+// 分钟增量数据更新
 HQData.RequestMinuteRealtimeData = function (data, callback) {
   data.PreventDefault = true;
   var symbol = data.Request.Data.symbol[0]; // 请求的股票代码
@@ -1654,8 +1720,9 @@
   if (dateRange && dateRange.End && dateRange.End.Date > 0)
     option.End = dateRange.End.Date;
 
-  console.log(`[HQData::RequestMinuteRealtimeData] Symbol=${symbol}`, obj.Url);
-  var obj = HQData.GetMinuteKLineApiUrl(symbol, period, right, option);
+  // console.log(`[HQData::RequestMinuteRealtimeData] Symbol=${symbol}`, obj.Url);
+  var obj = HQData.GetKLineApiUrl(symbol, period, right, option);
+  // var obj = HQData.GetMinuteKLineApiUrl(symbol, period, right, option);
 
   $.ajax({
     url: obj.Url,

--
Gitblit v1.9.3