"""Database Creation Revision ID: 53fd6f2b93a4 Revises: Create Date: 2024-08-20 12:30:52.435668 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision: str = '53fd6f2b93a4' down_revision: Union[str, None] = None branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: # ### commands auto generated by Alembic - please adjust! ### op.create_table('users', sa.Column('id', sa.Integer(), nullable=False), sa.Column('email', sa.String(), nullable=False), sa.Column('username', sa.String(), nullable=False), sa.Column('hashed_password', sa.String(), nullable=False), sa.Column('role', sa.Integer(), server_default='0', nullable=False), sa.Column('black_phoenix', sa.Boolean(), server_default='false', nullable=False), sa.Column('avatar_image', sa.String(), server_default='https://images.black-phoenix.ru/static/images/%D1%82%D1%8B%20%D1%83%D0%B6%D0%B5%20%D0%BF%D0%B5%D1%88%D0%BA%D0%B0%20BP.png', nullable=False), sa.Column('date_of_birth', sa.Date(), nullable=False), sa.Column('date_of_registration', sa.Date(), server_default=sa.text('now()'), nullable=False), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('email'), sa.UniqueConstraint('username') ) op.create_table('chat', sa.Column('id', sa.Integer(), nullable=False), sa.Column('created_by', sa.Integer(), nullable=False), sa.Column('chat_for', sa.Integer(), nullable=True), sa.Column('chat_name', sa.String(), nullable=False), sa.Column('avatar_image', sa.String(), nullable=False), sa.Column('visibility', sa.Boolean(), server_default='true', nullable=False), sa.ForeignKeyConstraint(['chat_for'], ['users.id'], ), sa.ForeignKeyConstraint(['created_by'], ['users.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('user_avatar', sa.Column('id', sa.Integer(), nullable=False), sa.Column('user_id', sa.Integer(), nullable=False), sa.Column('avatar_image', sa.String(), nullable=False), sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('pinned_chat', sa.Column('user_id', sa.Integer(), nullable=False), sa.Column('chat_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['chat_id'], ['chat.id'], ), sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), sa.PrimaryKeyConstraint('user_id', 'chat_id') ) op.create_table('pinned_message', sa.Column('chat_id', sa.Integer(), nullable=True), sa.Column('message_id', sa.Uuid(), nullable=False), sa.Column('user_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['chat_id'], ['chat.id'], ), sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), sa.PrimaryKeyConstraint('message_id', 'user_id') ) op.create_table('user_chat', sa.Column('user_id', sa.Integer(), nullable=False), sa.Column('chat_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['chat_id'], ['chat.id'], ), sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), sa.PrimaryKeyConstraint('user_id', 'chat_id') ) # ### end Alembic commands ### def downgrade() -> None: # ### commands auto generated by Alembic - please adjust! ### op.drop_table('user_chat') op.drop_table('pinned_message') op.drop_table('pinned_chat') op.drop_table('user_avatar') op.drop_table('chat') op.drop_table('users') # ### end Alembic commands ###