更新注释内容
This commit is contained in:
parent
cb33aa470e
commit
851d66d594
@ -21,8 +21,7 @@ class MongoManage:
|
||||
def connect_to_database(self, path: str, db_name: str) -> None:
|
||||
"""
|
||||
连接 mongodb 数据库
|
||||
|
||||
:param path: mongodb 链接地址
|
||||
:param path: mongodb 连接地址
|
||||
:param db_name: 数据库名称
|
||||
:return:
|
||||
"""
|
||||
@ -54,7 +53,6 @@ class MongoManage:
|
||||
def close_database_connection(self) -> None:
|
||||
"""
|
||||
关闭 mongodb 数据库连接
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.client.close()
|
||||
@ -62,7 +60,6 @@ class MongoManage:
|
||||
def create_data(self, collection: str, data: dict) -> InsertOneResult:
|
||||
"""
|
||||
创建单个数据
|
||||
|
||||
:param collection: 集合
|
||||
:param data: 数据
|
||||
"""
|
||||
@ -86,12 +83,12 @@ class MongoManage:
|
||||
) -> dict | None:
|
||||
"""
|
||||
获取单个数据,默认使用 ID 查询,否则使用关键词查询
|
||||
|
||||
:param collection: 集合
|
||||
:param _id: 数据 ID
|
||||
:param v_return_none: 是否返回空 None,否则抛出异常,默认抛出异常
|
||||
:param is_object_id: 是否为 ObjectId
|
||||
:param v_schema: 指定使用的序列化对象
|
||||
:return:
|
||||
"""
|
||||
if _id and is_object_id:
|
||||
kwargs["_id"] = ObjectId(_id)
|
||||
@ -108,6 +105,11 @@ class MongoManage:
|
||||
def put_data(self, collection: str, _id: str, data: dict, is_object_id: bool = False) -> UpdateResult:
|
||||
"""
|
||||
更新数据
|
||||
:param collection: 集合
|
||||
:param _id: 编号
|
||||
:param data: 更新数据内容
|
||||
:param is_object_id: _id 是否为 ObjectId 类型
|
||||
:return:
|
||||
"""
|
||||
new_data = {'$set': data}
|
||||
result = self.db[collection].update_one({'_id': ObjectId(_id) if is_object_id else _id}, new_data)
|
||||
@ -121,6 +123,8 @@ class MongoManage:
|
||||
def filter_condition(cls, **kwargs) -> dict:
|
||||
"""
|
||||
过滤条件
|
||||
:param kwargs: 过滤条件
|
||||
:return:
|
||||
"""
|
||||
params = {}
|
||||
for k, v in kwargs.items():
|
||||
|
@ -11,8 +11,7 @@ class RedisManage:
|
||||
def connect_to_database(self, path: str) -> None:
|
||||
"""
|
||||
连接 redis 数据库
|
||||
|
||||
:param path: redis 链接地址
|
||||
:param path: redis 连接地址
|
||||
:return:
|
||||
"""
|
||||
self.rd = redis.from_url(path)
|
||||
@ -20,7 +19,7 @@ class RedisManage:
|
||||
|
||||
def test_connect(self) -> None:
|
||||
"""
|
||||
测试链接
|
||||
测试连接
|
||||
:return:
|
||||
"""
|
||||
try:
|
||||
@ -37,7 +36,6 @@ class RedisManage:
|
||||
def close_database_connection(self) -> None:
|
||||
"""
|
||||
关闭 redis 连接
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.rd.close()
|
||||
@ -45,7 +43,6 @@ class RedisManage:
|
||||
def subscribe(self, channel: str):
|
||||
"""
|
||||
订阅
|
||||
|
||||
:param channel: 频道
|
||||
:return:
|
||||
"""
|
||||
|
@ -34,7 +34,7 @@ class Scheduler:
|
||||
def start(self, listener: bool = True) -> None:
|
||||
"""
|
||||
创建调度器
|
||||
|
||||
:param listener: 是否注册事件监听器
|
||||
:return:
|
||||
"""
|
||||
self.scheduler = BackgroundScheduler()
|
||||
@ -47,7 +47,6 @@ class Scheduler:
|
||||
def __get_mongodb_job_store(self) -> MongoDBJobStore:
|
||||
"""
|
||||
获取 MongoDB Job Store
|
||||
|
||||
:return: MongoDB Job Store
|
||||
"""
|
||||
self.db = get_database()
|
||||
@ -63,7 +62,6 @@ class Scheduler:
|
||||
) -> None | Job:
|
||||
"""
|
||||
date触发器用于在指定的日期和时间触发一次任务。它适用于需要在特定时间点执行一次的任务,例如执行一次备份操作。
|
||||
|
||||
:param job_class: 类路径
|
||||
:param trigger: 触发条件
|
||||
:param name: 任务名称
|
||||
@ -88,7 +86,6 @@ class Scheduler:
|
||||
) -> None | Job:
|
||||
"""
|
||||
通过 cron 表达式添加定时任务
|
||||
|
||||
:param job_class: 类路径
|
||||
:param expression: cron 表达式,六位或七位,分别表示秒、分钟、小时、天、月、星期几、年
|
||||
:param start_date: 触发器的开始日期时间。可选参数,默认为 None。
|
||||
@ -116,7 +113,6 @@ class Scheduler:
|
||||
def add_date_job(self, job_class: str, expression: str, name: str = None, args: tuple = (), **kwargs) -> None | Job:
|
||||
"""
|
||||
date触发器用于在指定的日期和时间触发一次任务。它适用于需要在特定时间点执行一次的任务,例如执行一次备份操作。
|
||||
|
||||
:param job_class: 类路径
|
||||
:param expression: date
|
||||
:param name: 任务名称
|
||||
@ -140,7 +136,6 @@ class Scheduler:
|
||||
) -> None | Job:
|
||||
"""
|
||||
date触发器用于在指定的日期和时间触发一次任务。它适用于需要在特定时间点执行一次的任务,例如执行一次备份操作。
|
||||
|
||||
:param job_class: 类路径
|
||||
:param expression:interval 表达式,分别为:秒、分、时、天、周,例如,设置 10 * * * * 表示每隔 10 秒执行一次任务。
|
||||
:param end_date: 表示任务的结束时间,可以设置为 datetime 对象或者字符串。
|
||||
@ -170,7 +165,6 @@ class Scheduler:
|
||||
def run_job(self, job_class: str, args: tuple = (), **kwargs) -> None:
|
||||
"""
|
||||
立即执行一次任务,但不会执行监听器,只适合只需要执行任务,不需要记录的任务
|
||||
|
||||
:param job_class: 类路径
|
||||
:param args: 类路径
|
||||
:return: 类实例
|
||||
@ -181,7 +175,6 @@ class Scheduler:
|
||||
def remove_job(self, name: str) -> None:
|
||||
"""
|
||||
删除任务
|
||||
|
||||
:param name: 任务名称
|
||||
:return:
|
||||
"""
|
||||
@ -193,7 +186,6 @@ class Scheduler:
|
||||
def get_job(self, name: str) -> Job:
|
||||
"""
|
||||
获取任务
|
||||
|
||||
:param name: 任务名称
|
||||
:return:
|
||||
"""
|
||||
@ -202,7 +194,6 @@ class Scheduler:
|
||||
def has_job(self, name: str) -> bool:
|
||||
"""
|
||||
判断任务是否存在
|
||||
|
||||
:param name: 任务名称
|
||||
:return:
|
||||
"""
|
||||
@ -214,7 +205,6 @@ class Scheduler:
|
||||
def get_jobs(self) -> List[Job]:
|
||||
"""
|
||||
获取所有任务
|
||||
|
||||
:return:
|
||||
"""
|
||||
return self.scheduler.get_jobs()
|
||||
@ -222,7 +212,6 @@ class Scheduler:
|
||||
def get_job_names(self) -> List[str]:
|
||||
"""
|
||||
获取所有任务
|
||||
|
||||
:return:
|
||||
"""
|
||||
jobs = self.scheduler.get_jobs()
|
||||
@ -231,7 +220,6 @@ class Scheduler:
|
||||
def __import_module(self, expression: str):
|
||||
"""
|
||||
反射模块
|
||||
|
||||
:param expression: 类路径
|
||||
:return: 类实例
|
||||
"""
|
||||
@ -253,7 +241,6 @@ class Scheduler:
|
||||
def __parse_cron_expression(expression: str) -> tuple:
|
||||
"""
|
||||
解析 cron 表达式
|
||||
|
||||
:param expression: cron 表达式,支持六位或七位,分别表示秒、分钟、小时、天、月、星期几、年
|
||||
:return: 解析后的秒、分钟、小时、天、月、星期几、年字段的元组
|
||||
"""
|
||||
@ -272,7 +259,6 @@ class Scheduler:
|
||||
def __parse_interval_expression(expression: str) -> tuple:
|
||||
"""
|
||||
解析 interval 表达式
|
||||
|
||||
:param expression: interval 表达式,分别为:秒、分、时、天、周,例如,设置 10 * * * * 表示每隔 10 秒执行一次任务。
|
||||
:return:
|
||||
"""
|
||||
@ -289,7 +275,6 @@ class Scheduler:
|
||||
def __parse_string_to_class(cls, expression: str) -> tuple:
|
||||
"""
|
||||
使用正则表达式匹配类路径和参数
|
||||
|
||||
:param expression: 表达式
|
||||
:return:
|
||||
"""
|
||||
@ -313,7 +298,6 @@ class Scheduler:
|
||||
def __parse_arguments(args_str) -> list:
|
||||
"""
|
||||
解析类路径参数字符串
|
||||
|
||||
:param args_str: 类参数字符串
|
||||
:return:
|
||||
"""
|
||||
@ -341,7 +325,6 @@ class Scheduler:
|
||||
def shutdown(self) -> None:
|
||||
"""
|
||||
关闭调度器
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.scheduler.shutdown()
|
||||
|
@ -29,7 +29,6 @@ class ScheduledTask:
|
||||
def add_job(self, exec_strategy: str, job_params: dict) -> None:
|
||||
"""
|
||||
添加定时任务
|
||||
|
||||
:param exec_strategy: 执行策略
|
||||
:param job_params: 执行参数
|
||||
:return:
|
||||
@ -62,7 +61,6 @@ class ScheduledTask:
|
||||
def error_record(self, name: str, error_info: str) -> None:
|
||||
"""
|
||||
添加任务失败记录,并且将任务状态改为 False
|
||||
|
||||
:param name: 任务编号
|
||||
:param error_info: 报错信息
|
||||
:return:
|
||||
@ -92,7 +90,6 @@ class ScheduledTask:
|
||||
def run(self) -> None:
|
||||
"""
|
||||
启动监听订阅消息(阻塞)
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.start_mongo()
|
||||
@ -122,7 +119,6 @@ class ScheduledTask:
|
||||
def start_mongo(self) -> None:
|
||||
"""
|
||||
启动 mongo
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.mongo = get_mongo()
|
||||
@ -131,7 +127,6 @@ class ScheduledTask:
|
||||
def start_scheduler(self) -> None:
|
||||
"""
|
||||
启动定时任务
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.scheduler = Scheduler()
|
||||
@ -141,7 +136,6 @@ class ScheduledTask:
|
||||
def start_redis(self) -> None:
|
||||
"""
|
||||
启动 redis
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.rd = get_redis()
|
||||
@ -152,7 +146,6 @@ class ScheduledTask:
|
||||
# pycharm 执行停止,该函数无法正常被执行,怀疑是因为阻塞导致或 pycharm 的强制退出导致
|
||||
# 报错导致得退出,会被执行
|
||||
关闭程序
|
||||
|
||||
:return:
|
||||
"""
|
||||
self.mongo.close_database_connection()
|
||||
|
@ -18,7 +18,6 @@ class Test:
|
||||
def main(self) -> str:
|
||||
"""
|
||||
主入口函数
|
||||
|
||||
:return:
|
||||
"""
|
||||
print('{}, 定时任务测试实例,参数为: {}, {}'.format(datetime.datetime.now(), self.name, self.age))
|
||||
|
Loading…
x
Reference in New Issue
Block a user