mirror of
https://github.com/suyiiyii/nonebot-bison.git
synced 2025-06-04 02:26:11 +08:00
* ⬆️ auto update by pre-commit hooks updates: - [github.com/astral-sh/ruff-pre-commit: v0.0.292 → v0.1.9](https://github.com/astral-sh/ruff-pre-commit/compare/v0.0.292...v0.1.9) - [github.com/pycqa/isort: 5.12.0 → 5.13.2](https://github.com/pycqa/isort/compare/5.12.0...5.13.2) - [github.com/psf/black: 23.9.1 → 23.12.1](https://github.com/psf/black/compare/23.9.1...23.12.1) - [github.com/pre-commit/mirrors-prettier: v3.0.3 → v4.0.0-alpha.8](https://github.com/pre-commit/mirrors-prettier/compare/v3.0.3...v4.0.0-alpha.8) - [github.com/pre-commit/mirrors-eslint: v8.50.0 → v9.0.0-alpha.0](https://github.com/pre-commit/mirrors-eslint/compare/v8.50.0...v9.0.0-alpha.0) * 💄 auto fix by pre-commit hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
"""map user
|
|
|
|
Revision ID: a5466912fad0
|
|
Revises: 632b8086bc2b
|
|
Create Date: 2023-03-20 01:14:42.623789
|
|
|
|
"""
|
|
|
|
import sqlalchemy as sa
|
|
from alembic import op
|
|
from sqlalchemy.orm import Session
|
|
from sqlalchemy.ext.automap import automap_base
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = "a5466912fad0"
|
|
down_revision = "632b8086bc2b"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
Base = automap_base()
|
|
Base.prepare(op.get_bind())
|
|
User = Base.classes.nonebot_bison_user
|
|
with Session(op.get_bind()) as sess:
|
|
users = sess.scalars(sa.select(User)).all()
|
|
for user in users:
|
|
if user.type == "group":
|
|
user.user_target = {"platform_type": "QQ Group", "group_id": user.uid}
|
|
elif user.type == "private":
|
|
user.user_target = {"platform_type": "QQ Private", "user_id": user.uid}
|
|
else:
|
|
sess.delete(user)
|
|
sess.add_all(users)
|
|
sess.commit()
|
|
|
|
|
|
def downgrade() -> None:
|
|
Base = automap_base()
|
|
Base.prepare(op.get_bind())
|
|
User = Base.classes.nonebot_bison_user
|
|
with Session(op.get_bind()) as sess:
|
|
users = sess.scalars(sa.select(User)).all()
|
|
for user in users:
|
|
if user.user_target["platform_type"] == "QQ Group":
|
|
user.uid = user.user_target["group_id"]
|
|
user.type = "group"
|
|
else:
|
|
user.uid = user.user_target["user_id"]
|
|
user.type = "private"
|
|
sess.add_all(users)
|
|
sess.commit()
|