"""Add homepage wanfa category recommendations. Revision ID: 0018_home_wanfa_recommendations Revises: 0017_home_content """ from alembic import op import sqlalchemy as sa from sqlalchemy import inspect revision = "0018_home_wanfa_recommendations" down_revision = "0017_home_content" branch_labels = None depends_on = None def upgrade() -> None: bind = op.get_bind() if "HomeWanfaRecommendation" in set(inspect(bind).get_table_names()): return op.create_table( "HomeWanfaRecommendation", sa.Column("id", sa.String(), nullable=False), sa.Column("categoryId", sa.String(), nullable=False), sa.Column("isActive", sa.Boolean(), nullable=False, server_default=sa.true()), sa.Column("sortOrder", sa.Integer(), nullable=False, server_default="0"), sa.Column("createdAt", sa.DateTime(), nullable=False), sa.Column("updatedAt", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint(["categoryId"], ["WanfaCategory.id"], ondelete="RESTRICT"), sa.PrimaryKeyConstraint("id"), sa.UniqueConstraint("categoryId", name="uq_HomeWanfaRecommendation_categoryId"), ) op.create_index("ix_HomeWanfaRecommendation_categoryId", "HomeWanfaRecommendation", ["categoryId"]) op.create_index("ix_HomeWanfaRecommendation_isActive", "HomeWanfaRecommendation", ["isActive"]) op.create_index("ix_HomeWanfaRecommendation_sortOrder", "HomeWanfaRecommendation", ["sortOrder"]) def downgrade() -> None: bind = op.get_bind() if "HomeWanfaRecommendation" in set(inspect(bind).get_table_names()): op.drop_table("HomeWanfaRecommendation")