From 6de59d6e4274ce9ae1ffb154c622da7c1b7144b1 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期四, 23 一月 2025 16:55:04 +0800
Subject: [PATCH] 融入每日新增板块/深圳买入逻辑修改

---
 servers/data_server.py |   42 +++++++++++++++++++++++++++++++++++++-----
 1 files changed, 37 insertions(+), 5 deletions(-)

diff --git a/servers/data_server.py b/servers/data_server.py
index 204ef3f..1a788e5 100644
--- a/servers/data_server.py
+++ b/servers/data_server.py
@@ -8,6 +8,7 @@
 import dask
 import requests
 
+import constant
 from code_attribute.gpcode_manager import BlackListCodeManager
 from l2.huaxin import huaxin_target_codes_manager
 from l2.l2_transaction_data_manager import HuaXinBuyOrderManager
@@ -924,22 +925,33 @@
                         deal_big_order_detail_info = None
                         try:
                             # 鑾峰彇鎴愪氦澶у崟锛�(鍙傝�冨ぇ鍗曢噾棰�,宸叉垚浜ゅぇ鍗曢噾棰�,澶у崟瑕佹眰閲戦, 宸叉垚浜ゆ定鍋滀拱閲戦, 宸叉垚浜ゆ定鍋滃崠閲戦)
-                            th_buy, is_temp = BeforeSubDealBigOrderManager().get_big_order_threshold_info(code)
+                            th_temp_buy_info = BeforeSubDealBigOrderManager().get_temp_deal_big_order_threshold_info(
+                                code)
+                            th_buy, th_buy_default = BeforeSubDealBigOrderManager().get_big_order_threshold(code)
                             th_sell = BeforeSubDealBigOrderManager().get_big_sell_order_threshold(code)
                             deal_big_money_info = radical_buy_data_manager.get_total_deal_big_order_info(
                                 code, gpcode_manager.get_limit_up_price_as_num(code))
                             # 澶у崟鎴愪氦淇℃伅
                             deal_big_order_info = [
-                                (output_util.money_desc(th_buy), output_util.money_desc(th_sell)), output_util.money_desc(deal_big_money_info[1]),
+                                (output_util.money_desc(th_temp_buy_info[0] if th_temp_buy_info else 0), # 涓存椂涔板ぇ鍗曢槇鍊�
+                                 output_util.money_desc(th_buy), # 涔板ぇ鍗曢槇鍊�
+                                 output_util.money_desc(th_sell)
+                                 ), # 鍗栧崟闃堝��
+                                output_util.money_desc(deal_big_money_info[1]),
                                 output_util.money_desc(deal_big_money_info[2])]
                             if len(codes) == 1:
                                 # 鍔犺浇澶у崟璇︽儏
                                 deal_big_order_detail_info = radical_buy_data_manager.get_l2_big_order_deal_info(code)
                                 # 鍔犺浇娑ㄥ仠澶у崟璇︽儏
-                                limit_up_big_order_detail = radical_buy_data_manager.get_total_detal_big_order_details(code)
-                                deal_big_order_info.append(output_util.money_desc(limit_up_big_order_detail[0]+limit_up_big_order_detail[1]))
+                                limit_up_big_order_detail = radical_buy_data_manager.get_total_detal_big_order_details(
+                                    code)
+                                deal_big_order_info.append(
+                                    output_util.money_desc(limit_up_big_order_detail[0] + limit_up_big_order_detail[1]))
                                 deal_big_order_info.append(
                                     output_util.money_desc(limit_up_big_order_detail[2] + limit_up_big_order_detail[3]))
+                                deal_big_order_info.append(
+                                    radical_buy_data_manager.TotalDealBigOrderInfoManager().get_big_order_rate(code))
+
                         except Exception as e:
                             logger_debug.error(f"鍙兘娌℃湁鑾峰彇鍒版定鍋滀环锛歿code}")
                             logger_debug.exception(e)
@@ -947,7 +959,7 @@
                         code_name = gpcode_manager.get_code_name(code)
                         fresults.append((code, code_name, deal_big_order_info, deal_big_order_detail_info))
                 response_data = json.dumps({"code": 0, "data": fresults})
-            except  Exception as e:
+            except Exception as e:
                 response_data = json.dumps({"code": 1, "data": str(1)})
 
         elif url.path == "/get_all_special_codes":
@@ -1060,6 +1072,26 @@
                     except:
                         pass
 
+                    try:
+                        records = KPLLimitUpDataRecordManager.total_datas
+
+                        # 璁$畻浠婃棩鏂板鐨勯鏉愭蹇�
+                        block_codes = {}
+                        for x in records:
+                            b = kpl_util.filter_block(x[2])
+                            if b not in block_codes:
+                                block_codes[b] = set()
+                            block_codes[b].add(x[3])
+                        reasons = set(block_codes.keys())
+                        reasons -= constant.KPL_INVALID_BLOCKS
+                        reasons -= LimitUpCodesBlockRecordManager().get_total_before_blocks()
+                        if reasons:
+                            for r in reasons:
+                                for c in block_codes[r]:
+                                    LimitUpCodesBlockRecordManager().add_new_blocks(c, r)
+                    except:
+                        pass
+
                     self.__kplDataManager.save_data(type_, result_list_)
             except Exception as e:
                 logger_debug.exception(e)

--
Gitblit v1.8.0