"""Add DemoSignup

Revision ID: 4e464a40e60a
Revises: df694c2fc8cd
Create Date: 2025-11-14
"""

from alembic import op
import sqlalchemy as sa

# revision identifiers, used by Alembic.
revision = '4e464a40e60a'
down_revision = 'df694c2fc8cd'
branch_labels = None
depends_on = None


def upgrade():
    op.create_table(
        'demo_signup',
        sa.Column('id', sa.Integer(), primary_key=True),
        sa.Column('company_name', sa.String(length=255), nullable=False),
        sa.Column('contact_name', sa.String(length=255), nullable=False),
        sa.Column('work_email', sa.String(length=255), nullable=False),
        sa.Column('phone', sa.String(length=50)),
        sa.Column('website', sa.String(length=255)),
        sa.Column('employee_count', sa.String(length=50)),
        sa.Column('message', sa.Text()),
        sa.Column('status', sa.String(length=20), nullable=False, server_default='pending'),
        sa.Column('created_at', sa.DateTime(), nullable=True),
        sa.Column('approved_at', sa.DateTime(), nullable=True),
        sa.Column('approved_by_id', sa.Integer(), nullable=True),
        sa.Column('demo_company_id', sa.Integer(), nullable=True),
        sa.ForeignKeyConstraint(['approved_by_id'], ['employee.id']),
        sa.ForeignKeyConstraint(['demo_company_id'], ['demo_company.id']),
    )
    # 🚫 NOTE: intentionally NOT touching dashboard_widgets / fk_dw_dash here


def downgrade():
    op.drop_table('demo_signup')