From 38ab872dd846a4137c153aea2d9e9ba90aa58cd5 Mon Sep 17 00:00:00 2001 From: shoucandanghehe Date: Sun, 9 Jun 2024 04:24:48 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=97=83=EF=B8=8F=20=E6=B7=BB=E5=8A=A0=20TE?= =?UTF-8?q?TRIOUserConfig?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...95e989cc6_add_tetrio_user_configuration.py | 44 +++++++++++++++++++ .../games/tetrio/api/models.py | 5 +++ 2 files changed, 49 insertions(+) create mode 100644 nonebot_plugin_tetris_stats/config/migrations/a1195e989cc6_add_tetrio_user_configuration.py diff --git a/nonebot_plugin_tetris_stats/config/migrations/a1195e989cc6_add_tetrio_user_configuration.py b/nonebot_plugin_tetris_stats/config/migrations/a1195e989cc6_add_tetrio_user_configuration.py new file mode 100644 index 0000000..a06e030 --- /dev/null +++ b/nonebot_plugin_tetris_stats/config/migrations/a1195e989cc6_add_tetrio_user_configuration.py @@ -0,0 +1,44 @@ +"""Add TETRIO user configuration + +迁移 ID: a1195e989cc6 +父迁移: b15844837693 +创建时间: 2024-06-09 04:20:07.819194 + +""" + +from __future__ import annotations + +from typing import TYPE_CHECKING + +import sqlalchemy as sa +from alembic import op + +if TYPE_CHECKING: + from collections.abc import Sequence + +revision: str = 'a1195e989cc6' +down_revision: str | Sequence[str] | None = 'b15844837693' +branch_labels: str | Sequence[str] | None = None +depends_on: str | Sequence[str] | None = None + + +def upgrade(name: str = '') -> None: + if name: + return + # ### commands auto generated by Alembic - please adjust! ### + op.create_table( + 'nonebot_plugin_tetris_stats_tetriouserconfig', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('query_template', sa.String(length=2), nullable=False), + sa.PrimaryKeyConstraint('id', name=op.f('pk_nonebot_plugin_tetris_stats_tetriouserconfig')), + info={'bind_key': 'nonebot_plugin_tetris_stats'}, + ) + # ### end Alembic commands ### + + +def downgrade(name: str = '') -> None: + if name: + return + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('nonebot_plugin_tetris_stats_tetriouserconfig') + # ### end Alembic commands ### diff --git a/nonebot_plugin_tetris_stats/games/tetrio/api/models.py b/nonebot_plugin_tetris_stats/games/tetrio/api/models.py index b85f0d5..22b0658 100644 --- a/nonebot_plugin_tetris_stats/games/tetrio/api/models.py +++ b/nonebot_plugin_tetris_stats/games/tetrio/api/models.py @@ -15,3 +15,8 @@ class TETRIOHistoricalData(MappedAsDataclass, Model): api_type: Mapped[Literal['User Info', 'User Records']] = mapped_column(String(16), index=True) data: Mapped[SuccessModel] = mapped_column(PydanticType(get_model=[SuccessModel.__subclasses__], models=set())) update_time: Mapped[datetime] = mapped_column(DateTime, index=True) + + +class TETRIOUserConfig(MappedAsDataclass, Model): + id: Mapped[int] = mapped_column(init=False, primary_key=True) + query_template: Mapped[Literal['v1', 'v2']] = mapped_column(String(2))