1
0
forked from bot/app

pacman和profile适配satori

This commit is contained in:
Expliyh
2024-05-16 21:28:18 +08:00
parent eaf57f2c33
commit 4e6532ff0d
3 changed files with 19 additions and 12 deletions

View File

@ -5,6 +5,7 @@ import aiofiles
import nonebot.plugin
from nonebot.adapters import satori
from liteyuki.utils import satori_utils
from liteyuki.utils.base.data import LiteModel
from liteyuki.utils.base.data_manager import GlobalPlugin, Group, User, group_db, plugin_db, user_db
from liteyuki.utils.base.ly_typing import T_MessageEvent
@ -139,11 +140,12 @@ def set_plugin_session_enable(event: T_MessageEvent, plugin_name: str, enable: b
Returns:
"""
if event.message_type == "group":
session = group_db.where_one(Group(), "group_id = ?", str(event.group_id),
default=Group(group_id=str(event.group_id)))
if satori_utils.get_message_type(event) == "group":
session = group_db.where_one(Group(), "group_id = ?", str(satori_utils.get_group_id(event)),
default=Group(group_id=str(satori_utils.get_group_id(event))))
else:
session = user_db.where_one(User(), "user_id = ?", str(event.user_id), default=User(user_id=str(event.user_id)))
session = user_db.where_one(User(), "user_id = ?", str(satori_utils.get_user_id(event)),
default=User(user_id=str(satori_utils.get_user_id(event))))
default_enable = get_plugin_default_enable(plugin_name)
if default_enable:
if enable:
@ -156,12 +158,12 @@ def set_plugin_session_enable(event: T_MessageEvent, plugin_name: str, enable: b
else:
session.enabled_plugins.remove(plugin_name)
if event.message_type == "group":
__group_data[str(event.group_id)] = session
if satori_utils.get_message_type(event) == "group":
__group_data[str(satori_utils.get_group_id(event))] = session
print(session)
group_db.save(session)
else:
__user_data[str(event.user_id)] = session
__user_data[str(satori_utils.get_user_id(event))] = session
user_db.save(session)

View File

@ -9,6 +9,7 @@ from liteyuki.utils.base.language import Language, change_user_lang, get_all_lan
from liteyuki.utils.base.ly_typing import T_Bot, T_MessageEvent
from liteyuki.utils.message.message import MarkdownMessage as md
from .const import representative_timezones_list
from ...utils import satori_utils
require("nonebot_plugin_alconna")
from nonebot_plugin_alconna import Alconna, Args, Arparma, Subcommand, on_alconna
@ -41,12 +42,13 @@ class Profile(LiteModel):
@profile_alc.handle()
async def _(result: Arparma, event: T_MessageEvent, bot: T_Bot):
user: User = user_db.where_one(User(), "user_id = ?", event.user_id, default=User(user_id=str(event.user_id)))
ulang = get_user_lang(str(event.user_id))
user: User = user_db.where_one(User(), "user_id = ?", satori_utils.get_user_id(event),
default=User(user_id=str(satori_utils.get_user_id(event))))
ulang = get_user_lang(str(satori_utils.get_user_id(event)))
if result.subcommands.get("set"):
if result.subcommands["set"].args.get("value"):
# 对合法性进行校验后设置
r = set_profile(result.args["key"], result.args["value"], str(event.user_id))
r = set_profile(result.args["key"], result.args["value"], str(satori_utils.get_user_id(event)))
if r:
user.profile[result.args["key"]] = result.args["value"]
user_db.save(user) # 数据库保存