# ERP Suite - Sistema ERP Multi-Vertical

## Descripción

Suite ERP/CRM/POS con soporte para múltiples verticales de negocio, diseñado para SaaS simple autocontratado y proyectos integrales personalizados.

**Estado General:** En desarrollo activo
**Migrado desde:** workspace-erp-inmobiliaria (Diciembre 2025)

## Verticales Soportados

| Vertical | Estado | Descripción |
|----------|--------|-------------|
| **ERP Core** | 60% | Base genérica reutilizable (autenticación, usuarios, catálogos) |
| **Construcción** | 35% | Gestión de proyectos de construcción, INFONAVIT, presupuestos |
| **Vidrio Templado** | 0% | Producción, calidad, trazabilidad de lotes |
| **Mecánicas Diesel** | 0% | Talleres, diagnósticos, reparaciones, refacciones |
| **Retail** | 0% | Punto de venta, inventario |
| **Clínicas** | 0% | Gestión de pacientes, citas |

## Stack Tecnológico

| Capa | Tecnología |
|------|------------|
| **Backend** | Node.js 20+, Express.js, TypeScript 5.3+, TypeORM |
| **Frontend Web** | React 18, Vite, TypeScript, Tailwind CSS |
| **Frontend Mobile** | React Native |
| **Base de Datos** | PostgreSQL 15+ con RLS (Row-Level Security) |
| **Autenticación** | JWT, bcryptjs |
| **Validación** | Zod, class-validator |

## Estructura del Proyecto (Autocontenida por Proyecto)

**Cada proyecto (erp-core y cada vertical) es autocontenido** con su propia documentación y sistema de orquestación para trazabilidad completa.

```
erp-suite/
├── apps/
│   ├── erp-core/                    # ERP Base (60-70% compartido)
│   │   ├── backend/                 # Node.js + Express + TypeScript
│   │   ├── frontend/                # React + Vite + Tailwind
│   │   ├── database/                # PostgreSQL DDL, migrations, seeds
│   │   ├── docs/                    # Documentación PROPIA del core
│   │   └── orchestration/           # Sistema de agentes PROPIO
│   │       ├── 00-guidelines/CONTEXTO-PROYECTO.md
│   │       ├── trazas/              # Historial de tareas por agente
│   │       ├── estados/             # Estado de agentes
│   │       └── PROXIMA-ACCION.md
│   │
│   ├── verticales/
│   │   ├── construccion/            # Vertical INFONAVIT (35%)
│   │   │   ├── backend/
│   │   │   ├── frontend/
│   │   │   ├── database/
│   │   │   ├── docs/                # 403+ docs migrados (5.9 MB)
│   │   │   │   ├── 01-fase-alcance-inicial/   # 15 módulos MAI-*
│   │   │   │   ├── 02-fase-enterprise/        # 3 épicas MAE-*
│   │   │   │   └── 02-modelado/               # Schemas SQL
│   │   │   └── orchestration/       # Sistema de agentes PROPIO
│   │   │       ├── 00-guidelines/CONTEXTO-PROYECTO.md
│   │   │       ├── trazas/
│   │   │       ├── estados/
│   │   │       └── PROXIMA-ACCION.md
│   │   │
│   │   ├── vidrio-templado/         # Vertical (0%)
│   │   │   ├── docs/
│   │   │   └── orchestration/
│   │   │
│   │   ├── mecanicas-diesel/        # Vertical (0%)
│   │   │   ├── docs/
│   │   │   └── orchestration/
│   │   │
│   │   ├── retail/                  # Vertical Punto de Venta
│   │   └── clinicas/                # Vertical Clínicas
│   │
│   ├── saas/                        # Capa SaaS (billing)
│   └── shared-libs/                 # Librerías compartidas
│
├── docs/                            # Documentación GENERAL del suite
│   ├── 00-overview/                 # Visión general, arquitectura
│   ├── 01-requerimientos/           # Requerimientos transversales
│   └── ...
│
└── orchestration/                   # Orquestación GENERAL del suite
    ├── 00-guidelines/
    └── legacy-reference/            # Sistema migrado (referencia)
```

### Estructura de Cada Proyecto (Patrón Autocontenido)

Cada proyecto sigue esta estructura estándar:

```
{proyecto}/
├── backend/                    # Código backend
├── frontend/                   # Código frontend
├── database/                   # DDL, migrations, seeds
├── docs/                       # Documentación PROPIA
│   ├── 00-vision-general/
│   ├── 01-fase-mvp/
│   ├── 02-modelado/
│   └── 90-transversal/
└── orchestration/              # Sistema de agentes PROPIO
    ├── 00-guidelines/
    │   └── CONTEXTO-PROYECTO.md    # Contexto específico
    ├── trazas/                     # Historial por agente
    │   ├── TRAZA-TAREAS-BACKEND.md
    │   ├── TRAZA-TAREAS-FRONTEND.md
    │   └── TRAZA-TAREAS-DATABASE.md
    ├── estados/
    │   └── ESTADO-AGENTES.json
    └── PROXIMA-ACCION.md           # Siguiente tarea
```

## Módulos ERP Construcción (Migrados)

### Fase 1: Alcance Inicial (15 módulos)
| Código | Módulo | Descripción |
|--------|--------|-------------|
| MAI-001 | Fundamentos | Autenticación, usuarios, roles, permisos |
| MAI-002 | Proyectos | Gestión de proyectos y estructura |
| MAI-003 | Presupuestos | Presupuestos y control de costos |
| MAI-004 | Compras | Compras e inventarios |
| MAI-005 | Control de Obra | Avances y recursos |
| MAI-006 | Reportes | Analytics y reportería |
| MAI-007 | RRHH | Recursos humanos y asistencias |
| MAI-008 | Estimaciones | Estimaciones y facturación |
| MAI-009 | Calidad | Calidad y postventa |
| MAI-010 | CRM | CRM Derechohabientes |
| MAI-011 | INFONAVIT | Integración INFONAVIT |
| MAI-012 | Contratos | Contratos y subcontratos |
| MAI-013 | Administración | Seguridad y administración |
| MAI-018 | Preconstrucción | Licitaciones |

### Fase 2: Enterprise (3 épicas - 210 SP)
| Código | Épica | Story Points |
|--------|-------|--------------|
| MAE-014 | Finanzas y Controlling de Obra | 80 SP |
| MAE-015 | Activos, Maquinaria y Mantenimiento | 70 SP |
| MAE-016 | Gestión Documental (DMS) | 60 SP |

### Fase 3: Avanzada
| Código | Épica |
|--------|-------|
| MAA-017 | Seguridad HSE (Health, Safety & Environment) |

## Arquitectura

### Modelo de Reutilización
- **erp-core:** 60-70% del código base compartido
- **verticales:** Extensiones específicas por giro de negocio
- **saas:** Capa de autocontratación y billing multi-tenant

### Schemas de Base de Datos (PostgreSQL)
| Schema | Descripción |
|--------|-------------|
| `auth_management` | Autenticación, usuarios, roles, permisos |
| `project_management` | Proyectos, desarrollos, fases, viviendas |
| `financial_management` | Presupuestos, estimaciones, costos |
| `purchasing_management` | Compras, proveedores, inventarios |
| `construction_management` | Avances, recursos, materiales |
| `quality_management` | Inspecciones, pruebas, no conformidades |
| `infonavit_management` | Integración INFONAVIT |

### Orden de Desarrollo Recomendado
1. **Fase 1:** ERP Genérico (erp-core) - Base compartida
2. **Fase 2:** ERP Construcción (vertical) - Más avanzado
3. **Fase 3:** ERP Vidrio Templado (vertical)
4. **Fase 4:** Demás verticales según demanda

## Patrones de Referencia

Los patrones de diseno estan basados en Odoo:
- `knowledge-base/patterns/PATRON-CORE-ODOO.md`
- `knowledge-base/patterns/PATRON-INVENTARIO-ODOO.md`
- `knowledge-base/patterns/PATRON-CONTABILIDAD-ODOO.md`

## Directivas y Documentacion

### Principio Fundamental
> **"Primero documentar, despues desarrollar"**

Toda la documentacion debe existir ANTES de iniciar cualquier desarrollo.

### Directivas ERP Core

| Directiva | Proposito |
|-----------|-----------|
| `DIRECTIVA-DOCUMENTACION-PRE-DESARROLLO.md` | Documentar antes de desarrollar |
| `DIRECTIVA-PATRONES-ODOO.md` | Patrones de diseno basados en Odoo |
| `DIRECTIVA-HERENCIA-MODULOS.md` | Como las verticales extienden el core |
| `DIRECTIVA-MULTI-TENANT.md` | Aislamiento por tenant_id |
| `DIRECTIVA-EXTENSION-VERTICALES.md` | Arquitectura de extensiones |
| `ESTANDARES-API-REST-GENERICO.md` | APIs REST consistentes |

Ubicacion: `apps/erp-core/orchestration/directivas/`

### Herencia de Directivas

```
CORE (Global)                    → /home/isem/workspace/core/orchestration/directivas/
    ↓ hereda
ERP-CORE                         → apps/erp-core/orchestration/directivas/
    ↓ hereda
VERTICALES                       → apps/verticales/{vertical}/orchestration/directivas/
```

### Estructura de Documentacion

Ver: `docs/ESTRUCTURA-DOCUMENTACION-ERP.md`

```
docs/
├── 00-vision-general/           # Vision y arquitectura
├── 01-requerimientos/           # RF y RNF por modulo
├── 02-modelado/                 # ERD, DDL, especificaciones
├── 03-user-stories/             # Historias por modulo
├── 04-test-plans/               # Planes de prueba
└── 90-transversal/              # Seguridad, multi-tenancy
```

## Inicio Rápido

```bash
# === ERP CORE ===
# Ver contexto del proyecto
cat apps/erp-core/orchestration/00-guidelines/CONTEXTO-PROYECTO.md

# Ver siguiente tarea
cat apps/erp-core/orchestration/PROXIMA-ACCION.md

# Instalar dependencias
cd apps/erp-core/backend && npm install
cd apps/erp-core/frontend && npm install

# === VERTICAL CONSTRUCCIÓN ===
# Ver contexto del proyecto
cat apps/verticales/construccion/orchestration/00-guidelines/CONTEXTO-PROYECTO.md

# Ver siguiente tarea
cat apps/verticales/construccion/orchestration/PROXIMA-ACCION.md

# Ver documentación (403+ archivos)
ls apps/verticales/construccion/docs/

# Ver módulos de Fase 1
ls apps/verticales/construccion/docs/01-fase-alcance-inicial/

# === TRAZAS DE AGENTES ===
# Ver historial de tareas por agente
cat apps/erp-core/orchestration/trazas/TRAZA-TAREAS-BACKEND.md
cat apps/verticales/construccion/orchestration/trazas/TRAZA-TAREAS-BACKEND.md

# Ver estado de agentes
cat apps/erp-core/orchestration/estados/ESTADO-AGENTES.json
```

## Migración Completada

Este proyecto incluye código y documentación migrada desde:
- `/home/isem/workspace-old/wsl-ubuntu/workspace/workspace-erp-inmobiliaria/`

### Contenido Migrado
- **403 archivos Markdown** de documentación técnica
- **11 archivos SQL** (DDL, RLS policies)
- **Código fuente** de backend, frontend y database
- **Sistema de orquestación** legacy (referencia)

### Verticales Migradas
- `erp-construccion` → `apps/verticales/construccion/`
- `erp-generic` → `apps/erp-core/`
- `erp-vidrio-templado` → `apps/verticales/vidrio-templado/`
- `erp-mecanicas-diesel` → `apps/verticales/mecanicas-diesel/`

---
*Proyecto parte del workspace de Fábrica de Software con Agentes IA - Sistema NEXUS*
