From 74821957e053c98bcfbe934a78eeff92e6b2b369 Mon Sep 17 00:00:00 2001
From: Administrator <admin@example.com>
Date: 星期一, 13 一月 2025 18:07:12 +0800
Subject: [PATCH] 记录已删除板块

---
 third_data/code_plate_key_manager.py |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/third_data/code_plate_key_manager.py b/third_data/code_plate_key_manager.py
index c02582c..d48106f 100644
--- a/third_data/code_plate_key_manager.py
+++ b/third_data/code_plate_key_manager.py
@@ -227,6 +227,8 @@
     """
     __redis_manager = redis_manager.RedisManager(3)
     __kpl_forbidden_plates_cache = set()
+    # 宸茬粡鍒犻櫎浜嗙殑鏉垮潡
+    __deleted_kpl_forbidden_plates_cache = set()
 
     __instance = None
 
@@ -241,6 +243,7 @@
         __redis = cls.__get_redis()
         try:
             cls.__kpl_forbidden_plates_cache = RedisUtils.smembers(__redis, "kpl_forbidden_plates")
+            cls.__deleted_kpl_forbidden_plates_cache = RedisUtils.smembers(__redis, "deleted_kpl_forbidden_plates")
         finally:
             RedisUtils.realse(__redis)
 
@@ -253,10 +256,17 @@
         RedisUtils.sadd(self.__get_redis(), "kpl_forbidden_plates", plate)
         RedisUtils.expire(self.__get_redis(), "kpl_forbidden_plates", tool.get_expire())
 
+        self.__deleted_kpl_forbidden_plates_cache.discard(plate)
+        RedisUtils.srem(self.__get_redis(), "deleted_kpl_forbidden_plates", plate)
+        RedisUtils.expire(self.__get_redis(), "deleted_kpl_forbidden_plates", tool.get_expire())
+
     def delete_plate(self, plate):
         self.__kpl_forbidden_plates_cache.discard(plate)
         RedisUtils.srem(self.__get_redis(), "kpl_forbidden_plates", plate)
         RedisUtils.expire(self.__get_redis(), "kpl_forbidden_plates", tool.get_expire())
+        self.__deleted_kpl_forbidden_plates_cache.add(plate)
+        RedisUtils.sadd(self.__get_redis(), "deleted_kpl_forbidden_plates", plate)
+        RedisUtils.expire(self.__get_redis(), "deleted_kpl_forbidden_plates", tool.get_expire())
 
     def list_all(self):
         return RedisUtils.smembers(self.__get_redis(), "kpl_forbidden_plates")
@@ -264,6 +274,10 @@
     def list_all_cache(self):
         return self.__kpl_forbidden_plates_cache
 
+    def list_all_deleted_cache(self):
+        return self.__deleted_kpl_forbidden_plates_cache
+
+
     def is_in_cache(self, plate):
         if self.__kpl_forbidden_plates_cache and plate in self.__kpl_forbidden_plates_cache:
             return True

--
Gitblit v1.8.0