Files
zhenxun_bot/zhenxun/models/bot_message_store.py
T

56 lines
1.6 KiB
Python
Raw Normal View History

2025-06-16 09:21:41 +08:00
from tortoise import fields
from zhenxun.services.db_context import Model
from zhenxun.utils.enum import BotSentType
from ._bot_message_buffer import append_bot_message_store_record
2025-06-16 09:21:41 +08:00
class BotMessageStore(Model):
id = fields.IntField(pk=True, generated=True, auto_increment=True)
"""自增id"""
bot_id = fields.CharField(255, null=True)
"""bot id"""
user_id = fields.CharField(255, null=True)
"""目标id"""
group_id = fields.CharField(255, null=True)
"""群组id"""
sent_type = fields.CharEnumField(BotSentType)
"""类型"""
text = fields.TextField(null=True)
"""文本内容"""
plain_text = fields.TextField(null=True)
"""纯文本"""
platform = fields.CharField(255, null=True)
"""平台"""
create_time = fields.DatetimeField(auto_now_add=True)
"""创建时间"""
class Meta: # pyright: ignore [reportIncompatibleVariableOverride]
table = "bot_message_store"
table_description = "Bot发送消息列表"
@classmethod
async def append_buffered(
cls,
*,
bot_id: str | None = None,
user_id: str | None = None,
group_id: str | None = None,
sent_type: BotSentType,
text: str | None = None,
plain_text: str | None = None,
platform: str | None = None,
) -> None:
await append_bot_message_store_record(
cls(
bot_id=bot_id,
user_id=user_id,
group_id=group_id,
sent_type=sent_type,
text=text,
plain_text=plain_text,
platform=platform,
)
)