# FASE 1: Análisis Inicial - ERP Construcción **Proyecto:** erp-construccion **Fecha:** 2026-01-04 **Estado:** Completado **Objetivo:** Propagación FASE-8 ERP-Core --- ## 1. Inventario de Archivos DDL ### 1.1 Archivos Existentes | Archivo | Líneas | Tablas | Schema | |---------|--------|--------|--------| | 01-construction-schema-ddl.sql | 903 | 24 | construction | | 02-hr-schema-ddl.sql | 156 | 3 | hr (extensión) | | 03-hse-schema-ddl.sql | 1,268 | 58 | hse | | 04-estimates-schema-ddl.sql | 415 | 8 | estimates | | 05-infonavit-schema-ddl.sql | 413 | 8 | infonavit | | 06-inventory-ext-schema-ddl.sql | 213 | 4 | inventory (extensión) | | 07-purchase-ext-schema-ddl.sql | 227 | 5 | purchase (extensión) | | **TOTAL** | **3,595** | **110** | **7 schemas** | ### 1.2 Schemas por Tipo | Tipo | Schemas | Tablas | |------|---------|--------| | Propios | construction, hse, estimates, infonavit | 98 | | Extensiones de Core | hr, inventory, purchase | 12 | --- ## 2. Inventario de Orchestration ### 2.1 Archivos Clave | Archivo | Descripción | Estado | |---------|-------------|--------| | `00-guidelines/HERENCIA-ERP-CORE.md` | Herencia del core v1.2.0 | Activo | | `00-guidelines/HERENCIA-SPECS-ERP-CORE.md` | Specs heredadas | Activo | | `referencias/DEPENDENCIAS-ERP-CORE.yml` | Dependencias detalladas | Activo | | `inventarios/DATABASE_INVENTORY.yml` | Inventario de BD | Activo | ### 2.2 Estado de Documentación - [x] HERENCIA-ERP-CORE.md actualizado (v1.2.0) - [x] DEPENDENCIAS-ERP-CORE.yml completo - [x] PROJECT-STATUS.md presente - [ ] **PENDIENTE:** Referencias a FASE-8 del core --- ## 3. Análisis de Herencia Actual ### 3.1 Versión de ERP-Core Referenciada ```yaml version_actual: "1.2.0" version_fase8: "FASE-8 (2026-01-04)" gap_version: "Requiere actualización" ``` ### 3.2 Módulos Heredados del Core | Módulo Core | Uso | Nivel Herencia | |-------------|-----|----------------| | Auth | Autenticación JWT/OAuth | 100% | | Users | Gestión de usuarios | 100% | | Roles | RBAC, guards | 100% | | Tenants | Multi-tenancy | Extendido | | Catalogs | Catálogos base | Extendido | | Financial | Contabilidad | Extendido | | Inventory | Productos, stock | Extendido | | Purchase | Órdenes compra | Extendido | | Projects | Proyectos, tareas | Extendido | | HR | Empleados | Extendido | --- ## 4. Mapeo de Schemas vs Correcciones FASE-8 ### 4.1 Correcciones Aplicables | ID Core | Elemento | Aplicable | Schema Destino | Adaptación | |---------|----------|-----------|----------------|------------| | COR-035 | payment_term_lines | ✅ Sí | financial | Términos de pago obra | | COR-036 | incoterms | ✅ Sí | financial | Para importaciones | | COR-037 | payment_methods | ✅ Sí | financial | Métodos pago anticipo | | COR-038 | reconcile_models | ⚠️ Parcial | financial | Conciliación estimaciones | | COR-039 | journal_entries fields | ✅ Sí | financial | Campos adicionales | | COR-040 | packages | ✅ Sí | inventory | Paquetes materiales | | COR-041 | putaway_rules | ⚠️ Parcial | inventory | Ubicación almacén obra | | COR-042 | storage_categories | ✅ Sí | inventory | Categorías almacén | | COR-043 | product fields | ✅ Sí | inventory | Campos materiales | | COR-044 | removal_strategies | ✅ Sí | inventory | FIFO materiales | | COR-045 | product_supplierinfo | ✅ Sí | purchase | Proveedores materiales | | COR-046 | PO fields | ✅ Sí | purchase | Campos OC obra | | COR-047 | action_create_stock_moves | ✅ Sí | purchase | Stock desde OC | | COR-048 | SO fields | ❌ No aplica | - | No hay ventas | | COR-049 | action_confirm | ❌ No aplica | - | No hay ventas | | COR-050 | get_pricelist_price | ❌ No aplica | - | No hay ventas | | COR-051 | convert_lead_to_opportunity | ❌ No aplica | - | No hay CRM ventas | | COR-052 | Lead/Opp fields | ❌ No aplica | - | No hay CRM ventas | | COR-053 | action_set_lost | ❌ No aplica | - | No hay CRM ventas | | COR-054 | action_set_won | ❌ No aplica | - | No hay CRM ventas | | COR-055 | CRM tags | ❌ No aplica | - | No hay CRM ventas | | COR-056 | project_collaborators | ✅ Sí | projects | Colaboradores obra | | COR-057 | project fields | ✅ Sí | construction | Campos proyecto obra | | COR-058 | task_count trigger | ✅ Sí | construction | Conteo partidas | | COR-059 | project_ratings | ⚠️ Parcial | construction | Calificación obra | | COR-060 | burndown_chart_data | ✅ Sí | construction | Avance de obra | | COR-061 | employee fields | ✅ Sí | hr | Campos empleado obra | | COR-062 | work_locations | ✅ Sí | hr | Ubicaciones de obra | | COR-063 | skills system | ✅ Sí | hr | Habilidades cuadrillas | | COR-064 | expense system | ✅ Sí | hr | Gastos residentes | | COR-065 | resume_lines | ⚠️ Parcial | hr | Experiencia obra | | COR-066 | payslip basics | ✅ Sí | hr | Nómina destajo | ### 4.2 Resumen de Aplicabilidad | Categoría | Cantidad | Porcentaje | |-----------|----------|------------| | Aplicables directamente | 18 | 56% | | Aplicables con adaptación | 6 | 19% | | No aplicables | 8 | 25% | | **Total correcciones** | **32** | **100%** | --- ## 5. Dependencias Identificadas ### 5.1 Dependencias con ERP-Core ```yaml dependencias_criticas: - auth.tenants: "Todas las tablas construcción" - auth.users: "Auditoría, created_by" - core.partners: "Contratistas, proveedores" - core.currencies: "Moneda de obra" - core.countries: "País de proyecto" - financial.accounts: "Cuentas contables" - inventory.products: "Materiales" - inventory.locations: "Almacenes obra" - hr.employees: "Personal de obra" ``` ### 5.2 Dependencias Internas ```yaml dependencias_construccion: - construction.fraccionamientos: "Base para todos" - construction.proyectos: "Agrupa obras" - hse.* depende de: "construction.fraccionamientos" - estimates.* depende de: "construction.presupuestos" ``` --- ## 6. Módulos Específicos del Giro ### 6.1 Adaptaciones Requeridas para Construcción | Módulo Core | Adaptación Construcción | |-------------|------------------------| | Projects | → Obras, fraccionamientos, etapas | | HR Skills | → Habilidades de cuadrilla (albañil, plomero, etc.) | | HR Expenses | → Gastos de residentes de obra | | Inventory Packages | → Paquetes de materiales | | Work Locations | → Ubicaciones de obra (frente, almacén) | | Burndown | → Avance de obra (% físico vs programado) | ### 6.2 Elementos Nuevos para Construcción | Elemento | Descripción | |----------|-------------| | construction.skill_types | Tipos: Albañilería, Plomería, Electricidad | | construction.work_locations | Frentes de obra, almacenes temporales | | construction.burndown_data | Avance físico y financiero | --- ## 7. Archivos a Modificar/Crear ### 7.1 DDL a Modificar | Archivo | Acción | Correcciones | |---------|--------|--------------| | 02-hr-schema-ddl.sql | Agregar | COR-061 a COR-066 adaptados | | 06-inventory-ext-schema-ddl.sql | Agregar | COR-040 a COR-044 adaptados | | 07-purchase-ext-schema-ddl.sql | Agregar | COR-045 a COR-047 | ### 7.2 Archivos a Crear | Archivo | Contenido | |---------|-----------| | 08-financial-ext-schema-ddl.sql | COR-035 a COR-039 | | 09-projects-ext-schema-ddl.sql | COR-056 a COR-060 adaptados | | migrations/20260104_fase8_construccion.sql | Migración consolidada | | seeds/construccion-skill-types.sql | Seed habilidades construcción | ### 7.3 Documentación a Actualizar | Documento | Cambio | |-----------|--------| | HERENCIA-ERP-CORE.md | Agregar referencia FASE-8 | | DEPENDENCIAS-ERP-CORE.yml | Actualizar versión | | DATABASE_INVENTORY.yml | Agregar nuevas tablas | --- ## 8. Riesgos Identificados | Riesgo | Impacto | Mitigación | |--------|---------|------------| | FK a tablas core que no existen | Alto | Verificar existencia antes | | Conflicto schemas hr/construction | Medio | Prefijo claro | | Datos existentes incompatibles | Medio | Script migración cuidadoso | | RLS policy conflicts | Bajo | Usar mismo patrón | --- ## 9. Próximos Pasos 1. **FASE 2:** Análisis detallado de cada corrección aplicable 2. **FASE 3:** Plan de implementación con adaptaciones 3. **FASE 4:** Validación del plan contra este análisis 4. **FASE 5:** Análisis de dependencias detallado 5. **FASE 6:** Refinamiento del plan 6. **FASE 7:** Ejecución 7. **FASE 8:** Validación final --- ## 10. Métricas de Análisis | Métrica | Valor | |---------|-------| | Archivos DDL existentes | 7 | | Tablas existentes | 110 | | Correcciones aplicables | 24 (75%) | | Nuevos archivos requeridos | 4 | | Archivos a modificar | 3 | | Documentos a actualizar | 3 | --- **Estado:** FASE 1 COMPLETADA **Siguiente:** FASE 2 - Análisis Detallado **Fecha:** 2026-01-04