"""change_campaign_and_moment_relation_to_PO Revision ID: 1d810cfcceec Revises: 8d48d33caa58 Create Date: 2021-03-11 07:35:45.619475 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = '1d810cfcceec' down_revision = '8d48d33caa58' branch_labels = None depends_on = None def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.add_column('ArtistMoment', sa.Column('purchase_order_id', sa.BigInteger(), nullable=True)) op.drop_constraint('uq_PRSProjectBudget_external_key', 'ArtistMoment', type_='unique') op.create_index(op.f('ix_ArtistMoment_purchase_order_id'), 'ArtistMoment', ['purchase_order_id'], unique=False) op.create_foreign_key(op.f('fk_ArtistMoment_purchase_order_id_PRSPurchaseOrder'), 'ArtistMoment', 'PRSPurchaseOrder', ['purchase_order_id'], ['id']) op.drop_column('ArtistMoment', 'po_number') op.add_column('Campaign', sa.Column('purchase_order_id', sa.BigInteger(), nullable=True)) op.create_index(op.f('ix_Campaign_purchase_order_id'), 'Campaign', ['purchase_order_id'], unique=False) op.create_foreign_key(op.f('fk_Campaign_purchase_order_id_PRSPurchaseOrder'), 'Campaign', 'PRSPurchaseOrder', ['purchase_order_id'], ['id']) op.drop_column('Campaign', 'po_number') op.drop_index('ix_GRASProject_external_id', table_name='GRASProject') op.drop_constraint('uq_GRASProject_external_id_prs_project_code', 'GRASProject', type_='unique') op.create_unique_constraint(op.f('uq_PRSProjectBudget_external_key'), 'PRSProjectBudget', ['external_key']) op.create_foreign_key(op.f('fk_PRSProjectBudget_prs_project_code_GRASProject'), 'PRSProjectBudget', 'GRASProject', ['prs_project_code'], ['prs_project_code']) op.drop_column('PRSProjectBudget', 'po_number') op.drop_constraint('fk_PRSPurchaseOrder_campaign_id_Campaign', 'PRSPurchaseOrder', type_='foreignkey') op.drop_constraint('fk_PRSPurchaseOrder_provider_id_CampaignProvider', 'PRSPurchaseOrder', type_='foreignkey') op.create_foreign_key(op.f('fk_PRSPurchaseOrder_provider_id_CampaignProvider'), 'PRSPurchaseOrder', 'CampaignProvider', ['provider_id'], ['id'], ondelete='CASCADE') op.drop_column('PRSPurchaseOrder', 'campaign_id') op.create_unique_constraint('uq_RawPRSProjects_sub_project_cd', 'RawPRSProjects', ['sub_project_cd']) # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### op.drop_constraint('uq_RawPRSProjects_sub_project_cd', 'RawPRSProjects', type_='unique') op.add_column('PRSPurchaseOrder', sa.Column('campaign_id', sa.BIGINT(), autoincrement=False, nullable=True)) op.drop_constraint(op.f('fk_PRSPurchaseOrder_provider_id_CampaignProvider'), 'PRSPurchaseOrder', type_='foreignkey') op.create_foreign_key('fk_PRSPurchaseOrder_provider_id_CampaignProvider', 'PRSPurchaseOrder', 'CampaignProvider', ['provider_id'], ['id']) op.create_foreign_key('fk_PRSPurchaseOrder_campaign_id_Campaign', 'PRSPurchaseOrder', 'Campaign', ['campaign_id'], ['id']) op.add_column('PRSProjectBudget', sa.Column('po_number', sa.BIGINT(), autoincrement=False, nullable=True)) op.drop_constraint(op.f('fk_PRSProjectBudget_prs_project_code_GRASProject'), 'PRSProjectBudget', type_='foreignkey') op.drop_constraint('uq_GRASProject_external_id', 'GRASProjectCampaign', type_='unique') op.create_unique_constraint('uq_GRASProject_external_id_prs_project_code', 'GRASProject', ['external_id', 'prs_project_code']) op.create_index('ix_GRASProject_external_id', 'GRASProject', ['external_id'], unique=False) op.add_column('Campaign', sa.Column('po_number', sa.BIGINT(), autoincrement=False, nullable=True)) op.drop_constraint(op.f('fk_Campaign_purchase_order_id_PRSPurchaseOrder'), 'Campaign', type_='foreignkey') op.drop_index(op.f('ix_Campaign_purchase_order_id'), table_name='Campaign') op.drop_column('Campaign', 'purchase_order_id') op.add_column('ArtistMoment', sa.Column('po_number', sa.BIGINT(), autoincrement=False, nullable=True)) op.drop_constraint(op.f('fk_ArtistMoment_purchase_order_id_PRSPurchaseOrder'), 'ArtistMoment', type_='foreignkey') op.drop_index(op.f('ix_ArtistMoment_purchase_order_id'), table_name='ArtistMoment') op.create_unique_constraint('uq_PRSProjectBudget_external_key', 'ArtistMoment', ['external_key']) op.drop_column('ArtistMoment', 'purchase_order_id') # ### end Alembic commands ###