"""Add service_block_zones join table for open zones per service block.

Revision ID: 0018_add_service_block_zones
Revises: 0017_add_operator_comment_to_reservation
Create Date: 2026-03-09
"""

import sqlalchemy as sa

from alembic import op

revision = "0018_add_service_block_zones"
down_revision = "0017_add_operator_comment_to_reservation"
branch_labels = None
depends_on = None


def upgrade() -> None:
    op.create_table(
        "service_block_zones",
        sa.Column(
            "service_block_id",
            sa.String(),
            sa.ForeignKey("service_block.id", ondelete="CASCADE"),
            nullable=False,
        ),
        sa.Column(
            "zone_id", sa.String(), sa.ForeignKey("zone.id", ondelete="CASCADE"), nullable=False
        ),
        sa.PrimaryKeyConstraint("service_block_id", "zone_id"),
    )


def downgrade() -> None:
    op.drop_table("service_block_zones")
