From 7af7c8f19eb8ac6217dfc7af99df24be42fce2b5 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 05 二月 2024 14:20:20 +0800
Subject: [PATCH] bug修复

---
 utils/hosting_api_util.py |  128 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 106 insertions(+), 22 deletions(-)

diff --git a/utils/hosting_api_util.py b/utils/hosting_api_util.py
index 20e91fc..0565187 100644
--- a/utils/hosting_api_util.py
+++ b/utils/hosting_api_util.py
@@ -16,17 +16,19 @@
 OPERRATE_SET = 1  # 璁剧疆
 OPERRATE_DELETE = 2  # 鍒犻櫎
 OPERRATE_GET = 3  # 鑾峰彇
+OPERRATE_ADD = 4  # 娣诲姞
 
 # 浠g爜鍚嶅崟绫诲瀷
 CODE_LIST_WHITE = "white"
 CODE_LIST_BLACK = "black"
 CODE_LIST_WANT = "want"
 CODE_LIST_PAUSE_BUY = "pause_buy"
-
+CODE_LIST_MUST_BUY = "must_buy"
 # 绫诲瀷
 API_TYPE_TRADE = "trade"  # 浜ゆ槗
 API_TYPE_TRADE_STATE = "trade_state"  # 浜ゆ槗鐘舵��
 API_TYPE_TRADE_MODE = "trade_mode"  # 浜ゆ槗妯″紡
+API_TYPE_SELL_RULE = "sell_rule"  # 鍗栧嚭瑙勫垯
 API_TYPE_CODE_LIST = "code_list"  # 浠g爜鍚嶅崟
 API_TYPE_EXPORT_L2 = "export_l2"  # 瀵煎嚭L2鏁版嵁
 API_TYPE_INIT = "init"  # 鍒濆鍖�
@@ -34,8 +36,16 @@
 API_TYPE_CODE_ATRRIBUTE = "code_attribute"  # 浠g爜灞炴��
 API_TYPE_CODE_TRADE_STATE = "code_trade_state"  # 浠g爜浜ゆ槗鐘舵��
 API_TYPE_GET_ENV = "get_env"  # 鑾峰彇鐜淇℃伅
+API_TYPE_SYNC_L1_TARGET_CODES = "sync_l1_subscript_codes"  # 鍚屾L1闇�瑕佽闃呯殑浠g爜
+API_TYPE_SYSTEM_LOG = "system_log"  # 绯荤粺鏃ュ織
+API_TYPE_GET_FROM_DATA_SERVER = "get_from_data_server"  # 浠庢暟鎹湇鍔″櫒鎷夊彇鏁版嵁
+API_TYPE_CODE_TRADE_INFO = "code_trade_info"  # 浠g爜浜ゆ槗淇℃伅
+API_TYPE_CODE_L2_LISTEN_ACTIVE_COUNT = "l2_listen_active_count"  # L2鏈夋晥鐩戝惉鏁伴噺
+API_TYPE_SAVE_RUNNING_DATA = "save_running_data"  # 淇濆瓨杩愯鏃舵暟鎹�
+API_TYPE_GET_CODE_POSITION_INFO = "get_code_position_info"  # 鑾峰彇浠g爜鎸佷粨淇℃伅
+API_TYPE_COMMON_REQUEST = "common_request"  # 閫氱敤璇锋眰
 # 瓒呮椂鏃堕棿2s
-TIMEOUT = 2.0
+TIMEOUT = 5.0
 
 # 绛夊緟鍝嶅簲鐨剅equest_id
 __request_response_dict = {}
@@ -140,13 +150,13 @@
                                     "code": code,
                                     "accountID": accountID,
                                     "orderSysID": orderSysID,
-                                    "sinfo": f"cancel_order_{code}_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{code}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 # 璁剧疆浜ゆ槗鐘舵��
 def set_trade_state(state, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_TRADE_STATE, "operate": OPERRATE_SET,
                                     "state": state,
                                     "sinfo": f"cb_{API_TYPE_TRADE_STATE}_{round(time.time() * 1000)}"})
@@ -155,7 +165,7 @@
 
 # 鑾峰彇浜ゆ槗鐘舵��
 def get_trade_state(blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_TRADE_STATE, "operate": OPERRATE_GET,
                                     "sinfo": f"cb_{API_TYPE_TRADE_STATE}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
@@ -163,7 +173,7 @@
 
 # 璁剧疆浜ゆ槗妯″紡
 def set_trade_mode(mode, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_TRADE_MODE, "operate": OPERRATE_SET, "mode": mode,
                                     "sinfo": f"cb_{API_TYPE_TRADE_MODE}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
@@ -171,7 +181,7 @@
 
 # 鑾峰彇浜ゆ槗妯″紡
 def get_trade_mode(blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_TRADE_MODE, "operate": OPERRATE_GET,
                                     "sinfo": f"cb_{API_TYPE_TRADE_MODE}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
@@ -179,7 +189,7 @@
 
 # -----浠g爜鍚嶅崟鎿嶄綔----
 def add_code_list(code, code_list_type, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_CODE_LIST, "code_list_type": code_list_type, "code": code,
                                     "operate": OPERRATE_SET,
                                     "sinfo": f"cb_{API_TYPE_CODE_LIST}_{round(time.time() * 1000)}"})
@@ -187,7 +197,7 @@
 
 
 def remove_code_list(code, code_list_type, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_CODE_LIST, "code_list_type": code_list_type, "code": code,
                                     "operate": OPERRATE_DELETE,
                                     "sinfo": f"cb_{API_TYPE_CODE_LIST}_{round(time.time() * 1000)}"})
@@ -195,7 +205,7 @@
 
 
 def get_code_list(code_list_type, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_CODE_LIST, "code_list_type": code_list_type,
                                     "operate": OPERRATE_GET,
                                     "sinfo": f"cb_{API_TYPE_CODE_LIST}_{round(time.time() * 1000)}"})
@@ -204,52 +214,126 @@
 
 # -----瀵煎嚭L2鏁版嵁----
 def export_l2_data(code, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_EXPORT_L2, "code": code,
-                                    "sinfo": f"cb_{API_TYPE_CODE_LIST}_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{API_TYPE_EXPORT_L2}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 # -----姣忔棩鍒濆鍖�----
 def everyday_init(blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_INIT,
-                                    "sinfo": f"cb_{API_TYPE_CODE_LIST}_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{API_TYPE_INIT}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 #  鍒锋柊浜ゆ槗鏁版嵁
 def refresh_trade_data(type, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_REFRESH_TRADE_DATA, "ctype": type,
-                                    "sinfo": f"update_trade_data_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{API_TYPE_REFRESH_TRADE_DATA}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 #  鑾峰彇浠g爜灞炴��
 def get_code_attribute(code, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_CODE_ATRRIBUTE, "code": code,
-                                    "sinfo": f"update_trade_data_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{API_TYPE_CODE_ATRRIBUTE}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 #  鑾峰彇浠g爜浜ゆ槗鐘舵��
 def get_code_trade_state(code, blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_CODE_TRADE_STATE, "code": code,
-                                    "sinfo": f"update_trade_data_{round(time.time() * 1000)}"})
+                                    "sinfo": f"{API_TYPE_CODE_TRADE_STATE}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
 # 鑾峰彇鐜淇℃伅
 def get_env_info(blocking=True):
-    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
                                    {"type": API_TYPE_GET_ENV,
-                                    "sinfo": f"update_trade_data_{round(time.time() * 1000)}"})
+                                    "sinfo": f"cb_{API_TYPE_GET_ENV}_{round(time.time() * 1000)}"})
     return __read_response(client, request_id, blocking)
 
 
+# 鑾峰彇鐜淇℃伅
+def sync_l1_subscript_codes(blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_SYNC_L1_TARGET_CODES,
+                                    "sinfo": f"cb_{API_TYPE_SYNC_L1_TARGET_CODES}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking)
+
+
+# 鑾峰彇绯荤粺鏃ュ織
+def get_system_logs(start_index, count, blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_SYSTEM_LOG, "start_index": start_index, "count": count,
+                                    "sinfo": f"cb_{API_TYPE_SYSTEM_LOG}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking)
+
+
+# 鎷夊彇data_server鐨勫唴瀹�
+def get_from_data_server(path, params, blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_GET_FROM_DATA_SERVER, "path": path, "params": params,
+                                    "sinfo": f"cb_{API_TYPE_GET_FROM_DATA_SERVER}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking, timeout=30)
+
+
+# 鑾峰彇浠g爜鐨勪氦鏄撲俊鎭�
+def get_code_trade_info(code, blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_CODE_TRADE_INFO, "code": code,
+                                    "sinfo": f"cb_{API_TYPE_CODE_TRADE_INFO}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking, timeout=30)
+
+
+# L2鏈夋晥鐩戝惉鏁伴噺
+def get_l2_listen_active_count(blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_CODE_L2_LISTEN_ACTIVE_COUNT,
+                                    "sinfo": f"cb_{API_TYPE_CODE_L2_LISTEN_ACTIVE_COUNT}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking, timeout=30)
+
+
+# 淇濆瓨姝e湪杩愯鐨勬暟鎹�
+def save_running_data(blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_SAVE_RUNNING_DATA,
+                                    "sinfo": f"cb_{API_TYPE_SAVE_RUNNING_DATA}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking, timeout=30)
+
+
+# 淇濆瓨姝e湪杩愯鐨勬暟鎹�
+def sell_rule(operate, data={}, blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON,
+                                   {"type": API_TYPE_SELL_RULE, "operate": operate, "data": data,
+                                    "sinfo": f"cb_{API_TYPE_SELL_RULE}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking, timeout=10)
+
+
+# 鑾峰彇浠g爜鎸佷粨淇℃伅
+def get_code_position_info(code, blocking=True):
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_TRADE,
+                                   {"type": API_TYPE_GET_CODE_POSITION_INFO, "code": code,
+                                    "sinfo": f"cb_{API_TYPE_GET_CODE_POSITION_INFO}_{round(time.time() * 1000)}"})
+    return __read_response(client, request_id, blocking)
+
+
+def common_request(params={}, blocking=True):
+    data = {"type": API_TYPE_COMMON_REQUEST,
+            "sinfo": f"cb_{API_TYPE_COMMON_REQUEST}_{round(time.time() * 1000)}"}
+    if params:
+        for k in params:
+            data[k] = params[k]
+    request_id, client = __request(ClientSocketManager.CLIENT_TYPE_COMMON, data)
+    return __read_response(client, request_id, blocking, timeout=10)
+
+
 if __name__ == "__main__":
     d = {"id": "123123"}
     print(d.pop("id"))

--
Gitblit v1.8.0