From cf6f6207116803318e16705999f122fa3eceff3d Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 06 六月 2024 17:54:27 +0800
Subject: [PATCH] L1订阅

---
 huaxin_client/l1_client_for_output.py |   35 +++++++++++++++++++++++++++++------
 1 files changed, 29 insertions(+), 6 deletions(-)

diff --git a/huaxin_client/l1_client_for_output.py b/huaxin_client/l1_client_for_output.py
index 83519c3..f911f9b 100644
--- a/huaxin_client/l1_client_for_output.py
+++ b/huaxin_client/l1_client_for_output.py
@@ -89,21 +89,21 @@
 
         else:
             printlog('Login fail!!! [%d] [%d] [%s]'
-                  % (nRequestID, pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
+                     % (nRequestID, pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
 
     def OnRspSubMarketData(self, pSpecificSecurityField, pRspInfoField):
         if pRspInfoField.ErrorID == 0:
             printlog('OnRspSubMarketData: OK!')
         else:
             printlog('OnRspSubMarketData: Error! [%d] [%s]'
-                  % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
+                     % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
 
     def OnRspUnSubMarketData(self, pSpecificSecurityField, pRspInfoField):
         if pRspInfoField.ErrorID == 0:
             printlog('OnRspUnSubMarketData: OK!')
         else:
             printlog('OnRspUnSubMarketData: Error! [%d] [%s]'
-                  % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
+                     % (pRspInfoField.ErrorID, pRspInfoField.ErrorMsg))
 
     def OnRtnMarketData(self, pMarketDataField):
         if pMarketDataField.SecurityName.find("S") == 0:
@@ -143,6 +143,21 @@
     # 涓婁紶鏁版嵁
 
 
+def __get_target_codes():
+    data_bytes = socket_util.load_header(json.dumps({"type": "get_l1_target_codes", "data": {}}).encode("utf-8"))
+    # 涓婁紶鏁版嵁
+    sk = socket_util.create_socket(SERVER_HOST, SERVER_PORT)
+    try:
+        sk.sendall(data_bytes)
+        datas_str, header_str = socket_util.recv_data(sk)
+        data = json.loads(datas_str)
+        if data['code'] == 0:
+            return data['data']
+    finally:
+        sk.close()
+    return None
+
+
 is_re_subscript = False
 
 
@@ -179,10 +194,18 @@
     codes_sh = []
     codes_sz = []
     for i in range(15):
+        # 鎷夊彇鏁版嵁
         try:
-            codes_sh, codes_sz = l1_subscript_codes_manager.get_codes()
-            logger_local_huaxin_l1.info(f"鑾峰彇涓婅瘉锛屾繁璇佷唬鐮佹暟閲忥細sh-{len(codes_sh)} sz-{len(codes_sz)}")
-            break
+            codes = __get_target_codes()
+            if codes:
+                # 鍒嗙浠g爜
+                for code in codes:
+                    market = tool.get_market_type(code)
+                    if market == tool.MARKET_TYPE_SZSE:
+                        codes_sz.append(code.encode('utf-8'))
+                    elif market == tool.MARKET_TYPE_SSE:
+                        codes_sh.append(code.encode('utf-8'))
+                break
         except Exception as e:
             logger_local_huaxin_l1.exception(e)
             time.sleep(4)

--
Gitblit v1.8.0