From f09823c8aa1ac777d634d37ab29c0ad85386a06e Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期五, 11 四月 2025 00:53:22 +0800
Subject: [PATCH] 新题材重新定义

---
 third_data/kpl_data_constant.py |  116 ++++++++++++++++++++++++---------------------------------
 1 files changed, 49 insertions(+), 67 deletions(-)

diff --git a/third_data/kpl_data_constant.py b/third_data/kpl_data_constant.py
index 3f4f668..2974055 100644
--- a/third_data/kpl_data_constant.py
+++ b/third_data/kpl_data_constant.py
@@ -2,11 +2,9 @@
 import constant
 from db import redis_manager_delegate as redis_manager
 from db.redis_manager_delegate import RedisUtils
-from log_module import async_log_util
-from log_module.log import logger_debug
 from third_data import kpl_util
 from third_data.third_blocks_manager import BlockMapManager
-from trade import trade_record_log_util
+
 
 from utils import tool, global_util
 from utils.kpl_data_db_util import KPLLimitUpDataUtil
@@ -15,6 +13,49 @@
 from utils.tool import singleton
 
 open_limit_up_code_dict_for_radical_buy = None
+
+
+# 鏂伴鏉�
+new_blocks = set()
+# 娑ㄥ仠鍒楄〃鏂伴鏉愶細 {"浠g爜":"棰樻潗"}
+limit_up_code_new_block_dict = {}
+# 鎴愬垎鑲℃柊棰樻潗锛堟病娑ㄥ仠锛� {"浠g爜":{"棰樻潗"}}
+limit_up_component_code_new_blocks_dict = {}
+
+
+def get_new_blocks(code):
+    """
+    鑾峰彇鏂版蹇�
+    @return:
+    """
+    blocks = set()
+    if code in limit_up_component_code_new_blocks_dict:
+        blocks |= limit_up_component_code_new_blocks_dict[code]
+    if code in limit_up_code_new_block_dict:
+        blocks.add(limit_up_code_new_block_dict[code])
+    return blocks
+
+
+def is_new_block(block):
+    """
+    鏄惁鏄柊棰樻潗
+    @param block:
+    @return:
+    """
+    if block in new_blocks:
+        return True
+    return False
+
+
+def has_new_block(code):
+    """
+    鏄惁鏈夋柊棰樻潗
+    @param code:
+    @return:
+    """
+    if get_new_blocks(code):
+        return True
+    return False
 
 
 @tool.singleton
@@ -70,12 +111,6 @@
     __radical_buy_reasons_dict = {}
     # 鍘熷鏁版嵁
     __radical_buy_reasons_origin_data_dict = {}
-
-    # 浠婃棩鐨勬柊姒傚康
-    __new_blocks = set()
-
-    # 浠g爜鐨勬柊棰樻潗
-    __code_new_blocks = {}
 
     __instance = None
 
@@ -204,64 +239,11 @@
         @param code:
         @return:
         """
-        if code in self.__radical_buy_reasons_dict:
-            return set(self.__radical_buy_reasons_dict.get(code))
-        return None
-
-    def add_new_blocks(self, code, block):
-        """
-        娣诲姞鏂伴鏉愮殑鏉垮潡
-        @param code:
-        @param block:
-        @return: 杩斿洖澧炲姞鏂伴鏉愭槸鍚︽垚鍔�
-        """
-        # 鑷敱娴侀�氳偂鏈澶т簬50浜�
-        zyltgb = global_util.zyltgb_map.get(code)
-        if not zyltgb or zyltgb < 10e8:
-            return False
-        if block in constant.KPL_INVALID_BLOCKS:
-            return False
-        old_blocks = self.__radical_buy_reasons_dict.get(code)
-        if old_blocks is None:
-            old_blocks = set()
-        if block in old_blocks:
-            return False
-        self.__new_blocks.add(block)
-        if code not in self.__code_new_blocks:
-            self.__code_new_blocks[code] = set()
-        self.__code_new_blocks[code].add(block)
-
-        old_blocks.add(block)
-        async_log_util.info(logger_debug, f"浠婃棩鏂板姒傚康锛歿code} - {block}")
-        self.__radical_buy_reasons_dict[code] = old_blocks
-        return True
-
-    def get_new_blocks(self):
-        """
-        鑾峰彇鏂版蹇�
-        @return:
-        """
-        return self.__new_blocks
-
-    def is_new_block(self, block):
-        """
-        鏄惁鏄柊棰樻潗
-        @param block:
-        @return:
-        """
-        if self.__new_blocks and block in self.__new_blocks:
-            return True
-        return False
-
-    def has_new_block(self, code):
-        """
-        鏄惁鏈夋柊棰樻潗
-        @param code:
-        @return:
-        """
-        if self.__code_new_blocks.get(code):
-            return True
-        return False
+        blocks = set(self.__radical_buy_reasons_dict.get(code, set()))
+        # 鑾峰彇浠g爜鐨勬澘鍧�
+        # 鑾峰彇浠g爜鐨勬柊棰樻潗
+        new_blocks = get_new_blocks(code)
+        return blocks | new_blocks
 
 
 class TodayLimitUpReasonChangeManager:

--
Gitblit v1.8.0