From 1dea3d72da9d3d2d55f2e41b611913b0901d8074 Mon Sep 17 00:00:00 2001 From: admin <admin@example.com> Date: 星期二, 17 六月 2025 19:15:19 +0800 Subject: [PATCH] 增加测试/记录精选流入板块 --- strategy/forbidden_plates_manager.py | 63 +++++++++++++++++++++++++++++++ 1 files changed, 63 insertions(+), 0 deletions(-) diff --git a/strategy/forbidden_plates_manager.py b/strategy/forbidden_plates_manager.py new file mode 100644 index 0000000..9c8de9c --- /dev/null +++ b/strategy/forbidden_plates_manager.py @@ -0,0 +1,63 @@ +""" +榛戝悕鍗曟澘鍧楃鐞� +""" +import json + +from db import redis_manager_delegate as redis_manager +from db.redis_manager_delegate import RedisUtils +from utils import tool + + +@tool.singleton +class ForbiddenPlatesManager: + def __init__(self): + self.forbidden_plates = [] + self.__db = 1 + self.__redisManager = redis_manager.RedisManager(self.__db) + self.__load_forbidden_plates() + + def __load_forbidden_plates(self): + plates = RedisUtils.get(self.__redisManager.getRedis(), "forbidden_plate_list") + if plates: + self.forbidden_plates = json.loads(plates) + + def add_plate(self, plate): + """ + 娣诲姞鏉垮潡 + :param plate: + :return: + """ + if plate in self.forbidden_plates: + return + self.forbidden_plates.append(plate) + RedisUtils.setex_async(self.__db, "forbidden_plate_list",tool.get_expire(), json.dumps( self.forbidden_plates)) + + def remove_plate(self, plate): + """ + 绉婚櫎鏉垮潡 + :param plate: + :return: + """ + if plate not in self.forbidden_plates: + return + self.forbidden_plates.remove(plate) + RedisUtils.setex_async(self.__db, "forbidden_plate_list", tool.get_expire(), json.dumps(self.forbidden_plates)) + + def list_plates(self): + """ + 鍒楀嚭鎵�鏈夋澘鍧� + :return: + """ + return self.forbidden_plates + + def is_plate_forbidden(self, plate): + """ + 鍒ゆ柇鏉垮潡鏄惁琚姝� + :param plate: + :return: + """ + return plate in self.forbidden_plates + + +if __name__ == '__main__': + print(ForbiddenPlatesManager().list_plates()) -- Gitblit v1.8.0