"""seed_fuid_report

Revision ID: 0f5a1b2c3d4e
Revises: b2c3d4e5f6a7
Create Date: 2026-07-28 14:00:00.000000

"""
from typing import Sequence, Union

from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision: str = '0f5a1b2c3d4e'
down_revision: Union[str, Sequence[str], None] = 'b2c3d4e5f6a7'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
    """Inserta el reporte interno FUID (Formato Único de Inventario Documental)."""
    op.execute("""
        INSERT INTO reportes (name, code, description, active, type_report, created_at)
        VALUES (
            'FUID (Formato Único de Inventario Documental)',
            'fuid',
            'Reporte en Excel y PDF del Formato Único de Inventario Documental según lineamientos del Archivo General de la Nación (AGN). Estructura TRD de 3 niveles: dependencia, serie documental, subserie documental. Incluye: códigos TRD, fechas extremas, total de folios, soporte y notas. Excluye archivos index.xml del conteo.',
            true,
            1,
            now()
        )
        ON CONFLICT (code) DO NOTHING
    """)


def downgrade() -> None:
    """Elimina el reporte FUID."""
    op.execute("DELETE FROM reportes WHERE code = 'fuid'")
