diff options
Diffstat (limited to 'ATRI/plugins/manage/modules/request.py')
-rw-r--r-- | ATRI/plugins/manage/modules/request.py | 102 |
1 files changed, 61 insertions, 41 deletions
diff --git a/ATRI/plugins/manage/modules/request.py b/ATRI/plugins/manage/modules/request.py index 762e918..a09b721 100644 --- a/ATRI/plugins/manage/modules/request.py +++ b/ATRI/plugins/manage/modules/request.py @@ -9,7 +9,7 @@ from ATRI.service import Service as sv from ATRI.exceptions import ReadFileError, FormatError -ESSENTIAL_DIR = Path(".") / "ATRI" / "data" / "database" / "essential" +ESSENTIAL_DIR = Path('.') / 'ATRI' / 'data' / 'database' / 'essential' __doc__ = """ @@ -19,13 +19,16 @@ __doc__ = """ 查看申请列表 """ -req_list = sv.on_command(cmd="申请列表", docs=__doc__, permission=SUPERUSER) - +req_list = sv.on_command( + cmd="申请列表", + docs=__doc__, + permission=SUPERUSER +) @req_list.handle() async def _req_list(bot: Bot, event: MessageEvent) -> None: - path_f = ESSENTIAL_DIR / "request_friend.json" - path_g = ESSENTIAL_DIR / "request_group.json" + path_f = ESSENTIAL_DIR / 'request_friend.json' + path_g = ESSENTIAL_DIR / 'request_group.json' data_f, data_g = dict() try: data_f = json.loads(path_f.read_bytes()) @@ -35,7 +38,7 @@ async def _req_list(bot: Bot, event: MessageEvent) -> None: data_g = json.loads(path_g.read_bytes()) except ReadFileError: msg_g = "[读取文件失败]" - + msg_f = str() for i in data_f.keys(): msg_f += f"{i} | {data_f[i]['user_id']} | {data_f[i]['comment']}\n" @@ -43,65 +46,82 @@ async def _req_list(bot: Bot, event: MessageEvent) -> None: msg_g = str() for i in data_g.keys(): msg_g += f"{i} | {data_g[i]['sub_type']} | {data_g[i]['user_id']} | {data_g[i]['comment']}\n" - - msg = "好友/群申请列表如下:\n" "· 好友:\n" f"{msg_f}" "· 群:\n" f"{msg_g}" + + msg = ( + "好友/群申请列表如下:\n" + "· 好友:\n" + f"{msg_f}" + "· 群:\n" + f"{msg_g}" + ) await req_list.finish(msg) -req_deal = sv.on_regex(r"[同意|拒绝][好友|群]申请", permission=SUPERUSER) - +req_deal = sv.on_regex( + r'(同意|拒绝)(好友|群)申请', + permission=SUPERUSER +) @req_deal.handle() async def _req_deal(bot: Bot, event: MessageEvent) -> None: - msg = str(event.message).split(" ") - arg = re.findall(r"[同意|拒绝][好友|群]申请", msg[0]) + msg = str(event.message).split(' ') + arg = re.findall(r'(同意|拒绝)(好友|群)申请', msg[0])[0] app = arg[0] _type = arg[1] - + if not msg[1]: - await req_deal.finish(f"正确用法!速看\n{app}{_type}申请 (reqid)") - - path = ESSENTIAL_DIR / "request_group.json" - data_g = dict() - try: - data_g = json.loads(path.read_bytes()) - except FileExistsError: - await req_deal.finish("读取群数据失败,可能并没有请求...") - + await req_deal.finish(f'正确用法!速看\n{app}{_type}申请 (reqid)') + reqid = msg[1] if app == "同意": if _type == "好友": try: - await bot.set_friend_add_request(flag=reqid, approve=True) - await req_deal.finish("完成~!已同意申请") + await bot.set_friend_add_request(flag=reqid, + approve=True) + await req_deal.finish('完成~!已同意申请') except FormatError: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') elif _type == "群": + path = ESSENTIAL_DIR / "request_group.json" + data_g = dict() try: - await bot.set_group_add_request( - flag=reqid, sub_type=data_g[reqid]["sub_type"], approve=True - ) - await req_deal.finish("完成~!已同意申请") + data_g = json.loads(path.read_bytes()) + except FileExistsError: + await req_deal.finish("读取群数据失败,可能并没有请求...") + + try: + await bot.set_group_add_request(flag=reqid, + sub_type=data_g[reqid]['sub_type'], + approve=True) + await req_deal.finish('完成~!已同意申请') except FormatError: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') else: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') elif app == "拒绝": if _type == "好友": try: - await bot.set_friend_add_request(flag=reqid, approve=False) - await req_deal.finish("完成~!已拒绝申请") + await bot.set_friend_add_request(flag=reqid, + approve=False) + await req_deal.finish('完成~!已拒绝申请') except FormatError: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') elif _type == "群": + path = ESSENTIAL_DIR / "request_group.json" + data_g = dict() + try: + data_g = json.loads(path.read_bytes()) + except FileExistsError: + await req_deal.finish("读取群数据失败,可能并没有请求...") + try: - await bot.set_group_add_request( - flag=reqid, sub_type=data_g[reqid]["sub_type"], approve=False - ) - await req_deal.finish("完成~!已拒绝申请") + await bot.set_group_add_request(flag=reqid, + sub_type=data_g[reqid]['sub_type'], + approve=False) + await req_deal.finish('完成~!已拒绝申请') except FormatError: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') else: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') else: - await req_deal.finish("请检查输入的值是否正确——!") + await req_deal.finish('请检查输入的值是否正确——!') |