api-admim/alembic/versions/shared/2bc15d1e557d_initial_migrat...

80 lines
3.7 KiB
Python

"""Initial Migration Shared
Revision ID: 2bc15d1e557d
Revises:
Create Date: 2024-11-30 17:40:09.765054
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
import fastapi_users_db_sqlalchemy
# revision identifiers, used by Alembic.
revision: str = '2bc15d1e557d'
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('inquilinos',
sa.Column('nome', sa.String(length=100), nullable=False),
sa.Column('cpf_cnpj', sa.String(length=14), nullable=False),
sa.Column('pessoa_celular', sa.String(length=20), nullable=True),
sa.Column('uuid', sa.UUID(), nullable=False),
sa.PrimaryKeyConstraint('uuid', name=op.f('pk_ct_inquilinos')),
sa.UniqueConstraint('cpf_cnpj', name=op.f('uq_ct_inquilinos_cpf_cnpj'))
)
op.create_table('rbac_papeis',
sa.Column('nome', sa.String(length=50), nullable=False),
sa.Column('uuid', sa.UUID(), nullable=False),
sa.PrimaryKeyConstraint('uuid', name=op.f('pk_ct_rbac_papeis')),
sa.UniqueConstraint('nome', name=op.f('uq_ct_rbac_papeis_nome'))
)
op.create_table('rbac_permissoes',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('nome', sa.String(length=50), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_ct_rbac_permissoes')),
sa.UniqueConstraint('nome', name=op.f('uq_ct_rbac_permissoes_nome'))
)
op.create_table('rbac_papel_permissoes',
sa.Column('papel_uuid', sa.UUID(), nullable=False),
sa.Column('permissao_id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['papel_uuid'], ['shared.rbac_papeis.uuid'], name=op.f('fk_ct_rbac_papel_permissoes_papel_uuid_rbac_papeis')),
sa.ForeignKeyConstraint(['permissao_id'], ['shared.rbac_permissoes.id'], name=op.f('fk_ct_rbac_papel_permissoes_permissao_id_rbac_permissoes')),
sa.PrimaryKeyConstraint('papel_uuid', 'permissao_id', name=op.f('pk_ct_rbac_papel_permissoes'))
)
op.create_table('rbac_usuarios',
sa.Column('fk_inquilino_uuid', sa.UUID(), nullable=False),
sa.Column('id', fastapi_users_db_sqlalchemy.generics.GUID(), nullable=False),
sa.Column('email', sa.String(length=320), nullable=False),
sa.Column('hashed_password', sa.String(length=1024), nullable=False),
sa.Column('is_active', sa.Boolean(), nullable=False),
sa.Column('is_superuser', sa.Boolean(), nullable=False),
sa.Column('is_verified', sa.Boolean(), nullable=False),
sa.ForeignKeyConstraint(['fk_inquilino_uuid'], ['shared.inquilinos.uuid'], name=op.f('fk_ct_rbac_usuarios_fk_inquilino_uuid_inquilinos'), ondelete='CASCADE'),
sa.PrimaryKeyConstraint('id', name=op.f('pk_ct_rbac_usuarios'))
)
op.create_table('rbac_papeis_usuario',
sa.Column('user_uuid', sa.UUID(), nullable=False),
sa.Column('papel_uuid', sa.UUID(), nullable=False),
sa.ForeignKeyConstraint(['papel_uuid'], ['shared.rbac_papeis.uuid'], name=op.f('fk_ct_rbac_papeis_usuario_papel_uuid_rbac_papeis')),
sa.ForeignKeyConstraint(['user_uuid'], ['shared.rbac_usuarios.id'], name=op.f('fk_ct_rbac_papeis_usuario_user_uuid_rbac_usuarios')),
sa.PrimaryKeyConstraint('user_uuid', 'papel_uuid', name=op.f('pk_ct_rbac_papeis_usuario'))
)
# ### end Alembic commands ###
def downgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.drop_table('rbac_papeis_usuario')
op.drop_table('rbac_usuarios')
op.drop_table('rbac_papel_permissoes')
op.drop_table('rbac_permissoes')
op.drop_table('rbac_papeis')
op.drop_table('inquilinos')
# ### end Alembic comman