mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
70 lines
2.4 KiB
Python
70 lines
2.4 KiB
Python
# from fastapi import APIRouter
|
|
# from pydantic.error_wrappers import ValidationError
|
|
|
|
# from services.log import logger
|
|
# from utils.manager import group_manager
|
|
# from utils.utils import get_bot
|
|
|
|
# from ..base_model import Group, GroupResult, Result, Task
|
|
# from ..models.params import UpdateGroup
|
|
# from ..utils import authentication
|
|
|
|
# router = APIRouter()
|
|
|
|
|
|
# @router.get("/get_group", dependencies=[authentication()])
|
|
# async def _() -> Result:
|
|
# """
|
|
# 获取群信息
|
|
# """
|
|
# group_list_result = []
|
|
# try:
|
|
# group_info = {}
|
|
# if bot := get_bot():
|
|
# group_list = await bot.get_group_list()
|
|
# for g in group_list:
|
|
# group_info[g["group_id"]] = Group(**g)
|
|
# group_data = group_manager.get_data()
|
|
# for group_id in group_data.group_manager:
|
|
# task_list = []
|
|
# data = group_manager[group_id].dict()
|
|
# for tn, status in data["group_task_status"].items():
|
|
# task_list.append(
|
|
# Task(
|
|
# **{
|
|
# "name": tn,
|
|
# "nameZh": group_manager.get_task_data().get(tn) or tn,
|
|
# "status": status,
|
|
# }
|
|
# )
|
|
# )
|
|
# data["task"] = task_list
|
|
# if x := group_info.get(int(group_id)):
|
|
# data["group"] = x
|
|
# else:
|
|
# continue
|
|
# group_list_result.append(GroupResult(**data))
|
|
# except Exception as e:
|
|
# logger.error("调用API错误", "/get_group", e=e)
|
|
# return Result.fail(f"{type(e)}: {e}")
|
|
# return Result.ok(group_list_result, "拿到了新鲜出炉的数据!")
|
|
|
|
|
|
# @router.post("/update_group", dependencies=[authentication()])
|
|
# async def _(group: UpdateGroup) -> Result:
|
|
# """
|
|
# 修改群信息
|
|
# """
|
|
# try:
|
|
# group_id = group.group_id
|
|
# group_manager.set_group_level(group_id, group.level)
|
|
# if group.status:
|
|
# group_manager.turn_on_group_bot_status(group_id)
|
|
# else:
|
|
# group_manager.shutdown_group_bot_status(group_id)
|
|
# group_manager.save()
|
|
# except Exception as e:
|
|
# logger.error("调用API错误", "/get_group", e=e)
|
|
# return Result.fail(f"{type(e)}: {e}")
|
|
# return Result.ok(info="已完成记录!")
|