"""empty message

Revision ID: 27
Revises: 26
Create Date: 2020-03-04 10:51:17.559416

"""
from alembic import op
import sqlalchemy as sa

# revision identifiers, used by Alembic.
revision = '27'
down_revision = '26'
branch_labels = None
depends_on = None


def upgrade():
    op.add_column("action_plan", sa.Column("action", sa.UnicodeText(), nullable=True))
    op.add_column('action_plan', sa.Column('solution_id', sa.String(length=20), nullable=True))
    op.add_column('action_plan', sa.Column('plan_type', sa.String(length=20), nullable=True))
    op.add_column("session", sa.Column("migrated", sa.DateTime(), nullable=True))
    op.create_index(op.f('ix_action_plan_plan_type'), 'action_plan', ['plan_type'], unique=False)
    op.execute("UPDATE action_plan SET plan_type = 'measure_custom'")
    op.execute("""
UPDATE action_plan ap
    SET "action" = CASE
    WHEN ap.prevention_plan is not NULL THEN ap.action_plan || E'\n' || ap.prevention_plan
    ELSE ap.action_plan END""")
    op.alter_column('action_plan', 'plan_type', nullable=False)


def downgrade():
    op.drop_index(op.f('ix_action_plan_plan_type'), table_name='action_plan')
    op.drop_column('action_plan', 'solution_id')
    op.drop_column('action_plan', 'plan_type')
    op.drop_column('action_plan', 'action')
    op.drop_column('session', 'migrated')
