"""2.0.4

Revision ID: a73f2dbf5c09
Revises: e2dbe1421fa4
Create Date: 2024-10-16 15:05:01.775429

"""

from alembic import op
import sqlalchemy as sa

# revision identifiers, used by Alembic.
revision = 'a73f2dbf5c09'
down_revision = 'e2dbe1421fa4'
branch_labels = None
depends_on = None


def upgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    # 初始化下载优先规则
    systemconfig = sa.table(
        "systemconfig",
        sa.column("key", sa.String()),
        sa.column("value", sa.JSON()),
    )
    connection = op.get_bind()
    key = "TorrentsPriority"
    value = ["torrent", "upload", "seeder"]
    row = connection.execute(
        sa.select(systemconfig.c.value).where(systemconfig.c.key == key)
    ).first()
    if row and row[0] != value:
        connection.execute(
            systemconfig.update().where(systemconfig.c.key == key).values(
                value=value
            )
        )
    elif not row:
        connection.execute(systemconfig.insert().values(key=key, value=value))
    # ### end Alembic commands ###


def downgrade() -> None:
    pass
