"""migracion_sistema_papiloscopico Revision ID: a946075b6c2c Revises: 04e47df0b26f Create Date: 2026-05-21 19:06:40.586192 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = 'a946075b6c2c' down_revision = '04e47df0b26f' branch_labels = None depends_on = None def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.create_table('origen_huellas', sa.Column('id', sa.Integer(), nullable=False), sa.Column('descripcion', sa.String(length=255), nullable=False), sa.Column('lado', sa.String(length=50), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('personas', sa.Column('cod_id', sa.Integer(), nullable=False), sa.Column('cod_nombre', sa.String(length=255), nullable=False), sa.Column('fecha_nacimiento', sa.Date(), nullable=True), sa.Column('sexo', sa.String(length=1), nullable=True), sa.PrimaryKeyConstraint('cod_id') ) op.create_table('puntos_caracteristicos', sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), sa.Column('nombre', sa.String(length=255), nullable=False), sa.Column('foto', sa.LargeBinary(), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('tipos_f', sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), sa.Column('nombre', sa.String(length=255), nullable=False), sa.Column('foto', sa.LargeBinary(), nullable=True), sa.Column('descripcion', sa.Text(), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('huellas', sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), sa.Column('descripcion', sa.String(length=255), nullable=True), sa.Column('origen_hd', sa.String(length=255), nullable=True), sa.Column('foto', sa.LargeBinary(), nullable=True), sa.Column('persona_cod_id', sa.Integer(), nullable=False), sa.Column('origen_huella_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['origen_huella_id'], ['origen_huellas.id'], ondelete='RESTRICT'), sa.ForeignKeyConstraint(['persona_cod_id'], ['personas.cod_id'], ondelete='CASCADE'), sa.PrimaryKeyConstraint('id') ) op.create_table('subclasificaciones', sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), sa.Column('nombre', sa.String(length=255), nullable=False), sa.Column('tipo_f_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['tipo_f_id'], ['tipos_f.id'], ondelete='RESTRICT'), sa.PrimaryKeyConstraint('id') ) op.create_table('fichas_clasificacion', sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), sa.Column('huella_id', sa.Integer(), nullable=False), sa.Column('subclasificacion_id', sa.Integer(), nullable=False), sa.Column('tipos_f_id', sa.Integer(), nullable=False), sa.Column('fecha', sa.Date(), nullable=False), sa.ForeignKeyConstraint(['huella_id'], ['huellas.id'], ondelete='CASCADE'), sa.ForeignKeyConstraint(['subclasificacion_id'], ['subclasificaciones.id'], ondelete='RESTRICT'), sa.ForeignKeyConstraint(['tipos_f_id'], ['tipos_f.id'], ondelete='RESTRICT'), sa.PrimaryKeyConstraint('id') ) op.create_table('huella_punto_caracteristico', sa.Column('huella_id', sa.Integer(), nullable=False), sa.Column('punto_id', sa.Integer(), nullable=False), sa.Column('x', sa.Numeric(precision=10, scale=6), nullable=False), sa.Column('y', sa.Numeric(precision=10, scale=6), nullable=False), sa.Column('angulo', sa.Numeric(precision=5, scale=2), nullable=False), sa.ForeignKeyConstraint(['huella_id'], ['huellas.id'], ondelete='CASCADE'), sa.ForeignKeyConstraint(['punto_id'], ['puntos_caracteristicos.id'], ondelete='CASCADE'), sa.PrimaryKeyConstraint('huella_id', 'punto_id') ) # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### op.drop_table('huella_punto_caracteristico') op.drop_table('fichas_clasificacion') op.drop_table('subclasificaciones') op.drop_table('huellas') op.drop_table('tipos_f') op.drop_table('puntos_caracteristicos') op.drop_table('personas') op.drop_table('origen_huellas') # ### end Alembic commands ###