From 5e00605dfb2c4b1c8d6e7a2ad82c21ab2b0ef3b6 Mon Sep 17 00:00:00 2001 From: XuChenXu <91937041+ChenXu233@users.noreply.github.com> Date: Mon, 25 Nov 2024 21:18:09 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E7=BB=93=E6=9E=84=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 1 + nonebot_plugin_dialectlist/__init__.py | 21 +++++++++++++-------- nonebot_plugin_dialectlist/config.py | 2 +- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 73b2a1c..af26d75 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -19,6 +19,7 @@ "pygal", "sqlalchemy", "timecost", + "uninfo", "userinfo", "whereclause", "xaxis", diff --git a/nonebot_plugin_dialectlist/__init__.py b/nonebot_plugin_dialectlist/__init__.py index ec92208..972f114 100644 --- a/nonebot_plugin_dialectlist/__init__.py +++ b/nonebot_plugin_dialectlist/__init__.py @@ -95,15 +95,16 @@ b_cmd = on_alconna( "看看B话", Args["at", [str, At], Field(completion=lambda: "请想要查询的人的QQ号")], Option("-g|--group_id", Args["group_id?", str]), - Option("-k|--keyword", Args["keyword?", str]) + Option("-k|--keyword", Args["keyword?", str]), ), aliases={"kkb"}, use_cmd_start=True, ) + @b_cmd.handle() async def handle_b_cmd( - at:Match[str|At], + at: Match[str | At], group_id: Match[str], keyword: Match[str], uninfo: Uninfo, @@ -116,10 +117,10 @@ async def handle_b_cmd( gid = group_id.result else: gid = session.id2 - + if not gid: await b_cmd.finish("请指定群号。") - + if keyword.available: keywords = keyword.result else: @@ -137,9 +138,13 @@ async def handle_b_cmd( d = msg_counter(messages, keywords) rank = got_rank(d) if not rank: - await b_cmd.finish(f"该用户在群“{uninfo.scene.name}”关于“{keyword}”的B话数量为0。") - - await saa.Text(f"该用户在群“{uninfo.scene.name}”关于“{keyword}”的B话数量为{rank[0][1]}。").send(reply=True) + await b_cmd.finish( + f"该用户在群“{uninfo.scene.name}”关于“{keyword}”的B话数量为0。" + ) + + await saa.Text( + f"该用户在群“{uninfo.scene.name}”关于“{keyword}”的B话数量为{rank[0][1]}。" + ).send(reply=True) rank_cmd = on_alconna( @@ -357,7 +362,7 @@ async def handle_rank( msg += suffix if not msg: await saa.Text("你把可视化都关了哪来的排行榜?").finish() - + if plugin_config.aggregate_transmission: await saa.AggregatedMessageFactory([msg]).finish() else: diff --git a/nonebot_plugin_dialectlist/config.py b/nonebot_plugin_dialectlist/config.py index 6f5a609..57467d2 100644 --- a/nonebot_plugin_dialectlist/config.py +++ b/nonebot_plugin_dialectlist/config.py @@ -13,7 +13,7 @@ class ScopedConfig(BaseModel): counting_cache: bool = False # 计数缓存(能够提高回复速度) excluded_people: List[str] = [] # 排除的人的QQ号 use_user_info_cache: bool = False # 是否使用用户信息缓存 - aggregate_transmission:bool = False # 是否聚合转发消息 + aggregate_transmission: bool = False # 是否聚合转发消息 timezone: Optional[str] = "Asia/Shanghai" # 时区,影响统计时间 string_suffix: str = "统计花费时间:{timecost}秒" # 消息格式后缀 template_path: str = "./template/rank_template.j2" # 模板路径