"""empty message Revision ID: 8856126b6658 Revises: Create Date: 2020-03-06 09:49:37.872516 """ from alembic import op import sqlalchemy as sa from sqlalchemy.dialects import postgresql # revision identifiers, used by Alembic. revision = '8856126b6658' down_revision = None branch_labels = None depends_on = None def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.create_table('user', sa.Column('id', sa.Integer(), nullable=False), sa.Column('uid', sa.String(), nullable=True), sa.Column('email_address', sa.String(), nullable=True), sa.Column('display_name', sa.String(), nullable=True), sa.Column('affiliation', sa.String(), nullable=True), sa.Column('eppn', sa.String(), nullable=True), sa.Column('first_name', sa.String(), nullable=True), sa.Column('last_name', sa.String(), nullable=True), sa.Column('title', sa.String(), nullable=True), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('uid') ) op.create_table('workflow_spec', sa.Column('id', sa.String(), nullable=False), sa.Column('name', sa.String(), nullable=True), sa.Column('display_name', sa.String(), nullable=True), sa.Column('description', sa.Text(), nullable=True), sa.Column('primary_process_id', sa.String(), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('study', sa.Column('id', sa.Integer(), nullable=False), sa.Column('title', sa.String(), nullable=True), sa.Column('last_updated', sa.DateTime(timezone=True), nullable=True), sa.Column('protocol_builder_status', sa.Enum('DRAFT', 'IN_PROCESS', 'IN_REVIEW', 'REVIEW_COMPLETE', 'INACTIVE', name='protocolbuilderstatus'), nullable=True), sa.Column('primary_investigator_id', sa.String(), nullable=True), sa.Column('sponsor', sa.String(), nullable=True), sa.Column('hsr_number', sa.String(), nullable=True), sa.Column('ind_number', sa.String(), nullable=True), sa.Column('user_uid', sa.String(), nullable=False), sa.Column('investigator_uids', sa.ARRAY(sa.String()), nullable=True), sa.Column('inactive', sa.Boolean(), nullable=True), sa.Column('requirements', sa.ARRAY(sa.Integer()), nullable=True), sa.ForeignKeyConstraint(['user_uid'], ['user.uid'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('workflow', sa.Column('id', sa.Integer(), nullable=False), sa.Column('bpmn_workflow_json', sa.JSON(), nullable=True), sa.Column('status', sa.Enum('new', 'user_input_required', 'waiting', 'complete', name='workflowstatus'), nullable=True), sa.Column('study_id', sa.Integer(), nullable=True), sa.Column('workflow_spec_id', sa.String(), nullable=True), sa.Column('spec_version', sa.String(), nullable=True), sa.ForeignKeyConstraint(['study_id'], ['study.id'], ), sa.ForeignKeyConstraint(['workflow_spec_id'], ['workflow_spec.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('file', sa.Column('id', sa.Integer(), nullable=False), sa.Column('name', sa.String(), nullable=True), sa.Column('type', sa.Enum('bpmn', 'csv', 'dmn', 'doc', 'docx', 'gif', 'jpg', 'md', 'pdf', 'png', 'ppt', 'pptx', 'rtf', 'svg', 'svg_xml', 'txt', 'xls', 'xlsx', 'xml', 'zip', name='filetype'), nullable=True), sa.Column('primary', sa.Boolean(), nullable=True), sa.Column('content_type', sa.String(), nullable=True), sa.Column('workflow_spec_id', sa.String(), nullable=True), sa.Column('workflow_id', sa.Integer(), nullable=True), sa.Column('study_id', sa.Integer(), nullable=True), sa.Column('task_id', sa.String(), nullable=True), sa.Column('form_field_key', sa.String(), nullable=True), sa.Column('latest_version', sa.Integer(), nullable=True), sa.ForeignKeyConstraint(['study_id'], ['study.id'], ), sa.ForeignKeyConstraint(['workflow_id'], ['workflow.id'], ), sa.ForeignKeyConstraint(['workflow_spec_id'], ['workflow_spec.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('file_data', sa.Column('id', sa.Integer(), nullable=False), sa.Column('md5_hash', postgresql.UUID(as_uuid=True), nullable=False), sa.Column('data', sa.LargeBinary(), nullable=True), sa.Column('version', sa.Integer(), nullable=True), sa.Column('last_updated', sa.DateTime(timezone=True), nullable=True), sa.Column('file_model_id', sa.Integer(), nullable=True), sa.ForeignKeyConstraint(['file_model_id'], ['file.id'], ), sa.PrimaryKeyConstraint('id') ) # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### op.drop_table('file_data') op.drop_table('file') op.drop_table('workflow') op.drop_table('study') op.drop_table('workflow_spec') op.drop_table('user') # ### end Alembic commands ###