Files
zhenxun_bot/zhenxun/models/statistics.py
T

49 lines
1.5 KiB
Python
Raw Normal View History

2026-04-18 23:42:10 +08:00
from typing import ClassVar
2024-05-27 16:09:24 +08:00
from tortoise import fields
from zhenxun.services.db_context import Model
from zhenxun.services.db_context.schema_ops import AlterColumnType, RenameColumn
2024-05-27 16:09:24 +08:00
class Statistics(Model):
id = fields.IntField(pk=True, generated=True, auto_increment=True)
"""自增id"""
user_id = fields.CharField(255)
"""用户id"""
group_id = fields.CharField(255, null=True)
"""群聊id"""
plugin_name = fields.CharField(255)
"""插件名称"""
create_time = fields.DatetimeField(auto_now_add=True)
2024-05-27 16:09:24 +08:00
"""添加日期"""
2024-10-03 23:56:17 +08:00
bot_id = fields.CharField(255, null=True)
"""Bot Id"""
2024-05-27 16:09:24 +08:00
2025-01-07 14:36:22 +08:00
class Meta: # pyright: ignore [reportIncompatibleVariableOverride]
2024-05-27 16:09:24 +08:00
table = "statistics"
table_description = "插件调用统计数据库"
2026-04-18 23:42:10 +08:00
indexes: ClassVar = [
("user_id", "plugin_name"),
("group_id", "plugin_name"),
("plugin_name", "create_time"),
("user_id", "create_time"),
]
2024-05-27 16:09:24 +08:00
@classmethod
async def _run_script(cls):
return [
RenameColumn("statistics", "user_qq", "user_id"),
2024-10-03 23:56:17 +08:00
# 将user_qq改为user_id
AlterColumnType(
"statistics",
"user_id",
{"postgres": "character varying(255)", "mysql": "VARCHAR(255)"},
),
AlterColumnType(
"statistics",
"group_id",
{"postgres": "character varying(255)", "mysql": "VARCHAR(255)"},
),
2024-05-27 16:09:24 +08:00
]