Initial commit - erp-vidrio-templado
This commit is contained in:
commit
1d39436fed
118
.env.example
Normal file
118
.env.example
Normal file
@ -0,0 +1,118 @@
|
||||
# ===========================================
|
||||
# VIDRIO TEMPLADO - Variables de Entorno
|
||||
# ===========================================
|
||||
# Copiar este archivo a .env y configurar valores
|
||||
# Puertos según DEVENV-PORTS.md
|
||||
|
||||
# -------------------------------------------
|
||||
# BASE DE DATOS POSTGRESQL
|
||||
# -------------------------------------------
|
||||
DB_HOST=localhost
|
||||
DB_PORT=5434
|
||||
DB_NAME=vidrio_templado_db
|
||||
DB_USER=vidrio_user
|
||||
DB_PASSWORD=vidrio_secret_2025
|
||||
|
||||
# URL de conexion completa
|
||||
DATABASE_URL=postgresql://${DB_USER}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_NAME}
|
||||
|
||||
# -------------------------------------------
|
||||
# SCHEMAS DE BASE DE DATOS
|
||||
# -------------------------------------------
|
||||
# Schemas heredados de erp-core
|
||||
DB_SCHEMA_AUTH=auth
|
||||
DB_SCHEMA_CORE=core
|
||||
DB_SCHEMA_INVENTORY=inventory
|
||||
|
||||
# Schemas propios de vidrio-templado
|
||||
DB_SCHEMA_GLASS=glass
|
||||
DB_SCHEMA_PRODUCTION=production
|
||||
DB_SCHEMA_QUALITY=quality
|
||||
DB_SCHEMA_LOGISTICS=logistics
|
||||
|
||||
# -------------------------------------------
|
||||
# APLICACION
|
||||
# -------------------------------------------
|
||||
APP_NAME=vidrio-templado
|
||||
APP_ENV=development
|
||||
APP_PORT=3031
|
||||
APP_URL=http://localhost:3031
|
||||
|
||||
# -------------------------------------------
|
||||
# FRONTEND
|
||||
# -------------------------------------------
|
||||
FRONTEND_PORT=3030
|
||||
FRONTEND_URL=http://localhost:3030
|
||||
|
||||
# -------------------------------------------
|
||||
# AUTENTICACION JWT
|
||||
# -------------------------------------------
|
||||
JWT_SECRET=your_jwt_secret_here_change_in_production
|
||||
JWT_EXPIRES_IN=24h
|
||||
JWT_REFRESH_EXPIRES_IN=7d
|
||||
|
||||
# -------------------------------------------
|
||||
# MULTI-TENANT
|
||||
# -------------------------------------------
|
||||
TENANT_ID_HEADER=X-Tenant-ID
|
||||
TENANT_ID_PARAM=tenant_id
|
||||
|
||||
# -------------------------------------------
|
||||
# ALMACENAMIENTO DE ARCHIVOS
|
||||
# -------------------------------------------
|
||||
STORAGE_TYPE=local
|
||||
STORAGE_PATH=./uploads
|
||||
# Para S3:
|
||||
# STORAGE_TYPE=s3
|
||||
# AWS_ACCESS_KEY_ID=
|
||||
# AWS_SECRET_ACCESS_KEY=
|
||||
# AWS_REGION=us-east-1
|
||||
# AWS_S3_BUCKET=vidrio-templado-files
|
||||
|
||||
# -------------------------------------------
|
||||
# NOTIFICACIONES
|
||||
# -------------------------------------------
|
||||
# Email (SMTP)
|
||||
SMTP_HOST=smtp.gmail.com
|
||||
SMTP_PORT=587
|
||||
SMTP_USER=
|
||||
SMTP_PASSWORD=
|
||||
SMTP_FROM=noreply@vidrio-templado.com
|
||||
|
||||
# -------------------------------------------
|
||||
# FACTURACION ELECTRONICA (SAT)
|
||||
# -------------------------------------------
|
||||
SAT_ENVIRONMENT=sandbox
|
||||
SAT_RFC=
|
||||
SAT_CER_PATH=./certs/csd.cer
|
||||
SAT_KEY_PATH=./certs/csd.key
|
||||
SAT_KEY_PASSWORD=
|
||||
|
||||
# -------------------------------------------
|
||||
# LOGGING
|
||||
# -------------------------------------------
|
||||
LOG_LEVEL=debug
|
||||
LOG_FORMAT=json
|
||||
|
||||
# -------------------------------------------
|
||||
# REDIS (Cache y Colas)
|
||||
# -------------------------------------------
|
||||
REDIS_HOST=localhost
|
||||
REDIS_PORT=6381
|
||||
REDIS_PASSWORD=
|
||||
|
||||
# -------------------------------------------
|
||||
# CORS
|
||||
# -------------------------------------------
|
||||
CORS_ORIGIN=http://localhost:3030,http://localhost:3031
|
||||
|
||||
# -------------------------------------------
|
||||
# PRODUCCION (Específico de Vidrio)
|
||||
# -------------------------------------------
|
||||
# Nesting/Optimización de corte
|
||||
NESTING_ALGORITHM=guillotine
|
||||
NESTING_MAX_WASTE_PERCENT=15
|
||||
|
||||
# Control de hornos
|
||||
FURNACE_DEFAULT_TEMP_CELSIUS=620
|
||||
FURNACE_ALARM_THRESHOLD=50
|
||||
31
INVENTARIO.yml
Normal file
31
INVENTARIO.yml
Normal file
@ -0,0 +1,31 @@
|
||||
# Inventario generado por EPIC-008
|
||||
proyecto: erp-vidrio-templado
|
||||
fecha: "2026-01-04"
|
||||
generado_por: "inventory-project.sh v1.0.0"
|
||||
|
||||
inventario:
|
||||
docs:
|
||||
total: 19
|
||||
por_tipo:
|
||||
markdown: 19
|
||||
yaml: 0
|
||||
json: 0
|
||||
orchestration:
|
||||
total: 23
|
||||
por_tipo:
|
||||
markdown: 14
|
||||
yaml: 9
|
||||
json: 0
|
||||
|
||||
problemas:
|
||||
archivos_obsoletos: 0
|
||||
referencias_antiguas: 0
|
||||
simco_faltantes:
|
||||
- _MAP.md en docs/
|
||||
- PROJECT-STATUS.md
|
||||
|
||||
estado_simco:
|
||||
herencia_simco: true
|
||||
contexto_proyecto: true
|
||||
map_docs: false
|
||||
project_status: false
|
||||
144
PROJECT-STATUS.md
Normal file
144
PROJECT-STATUS.md
Normal file
@ -0,0 +1,144 @@
|
||||
# ESTADO DEL PROYECTO - ERP Vidrio Templado
|
||||
|
||||
**Proyecto:** ERP Vidrio Templado (Proyecto Independiente)
|
||||
**Estado:** 📋 En planificación
|
||||
**Progreso:** 25%
|
||||
**Última actualización:** 2025-12-08
|
||||
|
||||
---
|
||||
|
||||
## 📊 RESUMEN EJECUTIVO
|
||||
|
||||
| Área | Estado | Descripción |
|
||||
|------|--------|-------------|
|
||||
| **Documentación** | 🟡 Inicial | 8 módulos definidos, estructura base |
|
||||
| **DDL/Schemas** | ❌ No iniciado | Pendiente diseño de BD |
|
||||
| **Backend** | ❌ No iniciado | Pendiente desarrollo |
|
||||
| **Frontend** | ❌ No iniciado | Pendiente desarrollo |
|
||||
|
||||
---
|
||||
|
||||
## 📋 MÓDULOS DEFINIDOS (8)
|
||||
|
||||
| Código | Nombre | Descripción | Reutilización | Estado |
|
||||
|--------|--------|-------------|---------------|--------|
|
||||
| VT-001 | Fundamentos | Auth, Users, Tenants | 100% core | PLANIFICADO |
|
||||
| VT-002 | Cotizaciones | Cotizador por m² | 30% core | PLANIFICADO |
|
||||
| VT-003 | Producción | Órdenes de producción | 20% core | PLANIFICADO |
|
||||
| VT-004 | Inventario | Stock vidrio/MP | 70% core | PLANIFICADO |
|
||||
| VT-005 | Corte | Optimización nesting | 0% (nuevo) | PLANIFICADO |
|
||||
| VT-006 | Templado | Control de hornos | 0% (nuevo) | PLANIFICADO |
|
||||
| VT-007 | Calidad | QC y certificaciones | 40% core | PLANIFICADO |
|
||||
| VT-008 | Despacho | Logística entregas | 50% core | PLANIFICADO |
|
||||
|
||||
**Story Points Estimados:** 259 SP (detallado en épicas)
|
||||
|
||||
---
|
||||
|
||||
## 🏭 DOMINIO DE NEGOCIO
|
||||
|
||||
### Proceso de Producción
|
||||
```
|
||||
Cotización → Orden Producción → Corte → Templado → QC → Despacho
|
||||
```
|
||||
|
||||
### Productos
|
||||
- Vidrio templado (varios espesores: 4mm, 6mm, 8mm, 10mm, 12mm)
|
||||
- Vidrio laminado
|
||||
- Vidrio insulado
|
||||
- Espejo
|
||||
- Grabados y sandblasting
|
||||
|
||||
### Características Específicas
|
||||
- Cotización por dimensiones (alto × ancho)
|
||||
- Optimización de corte (nesting)
|
||||
- Control de hornos de templado
|
||||
- Pruebas de fragmentación
|
||||
- Trazabilidad de lotes
|
||||
|
||||
---
|
||||
|
||||
## 📁 ESTRUCTURA DE DOCUMENTACIÓN
|
||||
|
||||
```
|
||||
docs/
|
||||
├── 00-vision-general/
|
||||
│ └── VISION-VIDRIO.md ✅
|
||||
├── 02-definicion-modulos/
|
||||
│ ├── INDICE-MODULOS.md ✅
|
||||
│ ├── VT-001-fundamentos/README.md ✅
|
||||
│ ├── VT-002-cotizaciones/README.md ✅
|
||||
│ ├── VT-003-produccion/README.md ✅
|
||||
│ ├── VT-004-inventario/README.md ✅
|
||||
│ ├── VT-005-corte/README.md ✅
|
||||
│ ├── VT-006-templado/README.md ✅
|
||||
│ ├── VT-007-calidad/README.md ✅
|
||||
│ └── VT-008-despacho/README.md ✅
|
||||
└── 08-epicas/
|
||||
└── EPIC-VT-001-fundamentos.md ✅
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 PRÓXIMOS PASOS
|
||||
|
||||
### Fase 1: Documentación Detallada
|
||||
1. [ ] Crear épicas completas (EPIC-VT-002 a 008)
|
||||
2. [ ] Documentar User Stories por módulo
|
||||
3. [ ] Definir requerimientos funcionales (RF)
|
||||
4. [ ] Crear especificaciones técnicas (ET)
|
||||
|
||||
### Fase 2: Diseño de Base de Datos
|
||||
5. [ ] Diseñar schemas de BD
|
||||
6. [ ] Implementar DDL
|
||||
7. [ ] Documentar modelo de datos
|
||||
|
||||
### Fase 3: Desarrollo
|
||||
8. [ ] Implementar backend (TypeScript/Express)
|
||||
9. [ ] Implementar frontend (React)
|
||||
10. [ ] Testing
|
||||
|
||||
---
|
||||
|
||||
## 📈 MÉTRICAS
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| Módulos definidos | 8 |
|
||||
| Épicas creadas | 8/8 ✅ |
|
||||
| User Stories | 0 (pendiente) |
|
||||
| Story Points | 259 |
|
||||
| Archivos MD | 29 |
|
||||
| Archivos SQL | 0 |
|
||||
| Archivos TS | 0 |
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ ARQUITECTURA
|
||||
|
||||
**Tipo:** Proyecto Independiente (fork conceptual del ERP-Core)
|
||||
|
||||
**Patrones a reutilizar del ERP-Core:**
|
||||
- Multi-tenancy con RLS (para franquicias)
|
||||
- Estructura de autenticación
|
||||
- Patrones de inventario
|
||||
- Sistema de cotizaciones base
|
||||
|
||||
**Módulos 100% nuevos:**
|
||||
- VT-005: Corte (algoritmo de nesting)
|
||||
- VT-006: Templado (control de hornos)
|
||||
|
||||
**Opera de forma autónoma:** No requiere ERP-Core instalado
|
||||
|
||||
---
|
||||
|
||||
## 🔗 REFERENCIAS
|
||||
|
||||
- Índice de módulos: `docs/02-definicion-modulos/INDICE-MODULOS.md`
|
||||
- Visión: `docs/00-vision-general/VISION-VIDRIO.md`
|
||||
- SPECS heredadas: `orchestration/00-guidelines/HERENCIA-SPECS-CORE.md`
|
||||
- Directivas: `orchestration/directivas/`
|
||||
|
||||
---
|
||||
|
||||
**Última actualización:** 2025-12-08
|
||||
62
README.md
Normal file
62
README.md
Normal file
@ -0,0 +1,62 @@
|
||||
# ERP Vidrio Templado - Vertical de Producción
|
||||
|
||||
## Descripción
|
||||
|
||||
Vertical especializada del ERP Suite para empresas de producción de vidrio templado. **Extiende erp-core** con módulos específicos para gestión de producción, control de calidad, y trazabilidad de lotes.
|
||||
|
||||
**Estado:** En planificación (0%)
|
||||
**Versión:** 0.1.0
|
||||
**Base:** Extiende erp-core (60-70%)
|
||||
|
||||
## Estructura del Proyecto
|
||||
|
||||
```
|
||||
vidrio-templado/
|
||||
├── backend/ # Extensiones backend específicas
|
||||
├── frontend/ # UI especializada
|
||||
├── database/ # DDL y migrations específicos
|
||||
├── docs/ # Documentación del proyecto
|
||||
│ ├── 00-vision-general/
|
||||
│ ├── 01-fase-mvp/
|
||||
│ ├── 02-modelado/
|
||||
│ └── 90-transversal/
|
||||
└── orchestration/ # Sistema de agentes NEXUS
|
||||
├── 00-guidelines/
|
||||
│ └── CONTEXTO-PROYECTO.md
|
||||
├── trazas/
|
||||
├── estados/
|
||||
└── PROXIMA-ACCION.md
|
||||
```
|
||||
|
||||
## Módulos Específicos Planificados
|
||||
|
||||
| Módulo | Descripción | Prioridad |
|
||||
|--------|-------------|-----------|
|
||||
| Órdenes de Producción | Gestión de órdenes de corte y templado | Alta |
|
||||
| Control de Calidad | Testing de resistencia y conformidad | Alta |
|
||||
| Inventario Materia Prima | Stock de vidrio crudo, químicos | Alta |
|
||||
| Gestión de Hornos | Control de maquinaria y mantenimiento | Media |
|
||||
| Trazabilidad de Lotes | Seguimiento desde MP hasta PT | Media |
|
||||
| Cotizaciones | Cotizador con cálculo automático | Media |
|
||||
|
||||
## Schemas Planificados
|
||||
|
||||
| Schema | Descripción |
|
||||
|--------|-------------|
|
||||
| `production_management` | Órdenes, procesos, tiempos |
|
||||
| `quality_management` | Pruebas, certificaciones |
|
||||
| `inventory_management` | Extendido para vidrio |
|
||||
|
||||
## Documentación
|
||||
|
||||
- **Contexto:** `orchestration/00-guidelines/CONTEXTO-PROYECTO.md`
|
||||
- **Próxima acción:** `orchestration/PROXIMA-ACCION.md`
|
||||
- **Trazas de agentes:** `orchestration/trazas/`
|
||||
|
||||
## Dependencias
|
||||
|
||||
- **Requiere:** erp-core completado
|
||||
- **Referencia:** Patrones de construcción aplicables
|
||||
|
||||
---
|
||||
*Proyecto parte de ERP Suite - Fábrica de Software con Agentes IA*
|
||||
191
database/HERENCIA-ERP-CORE.md
Normal file
191
database/HERENCIA-ERP-CORE.md
Normal file
@ -0,0 +1,191 @@
|
||||
# Herencia de Base de Datos - ERP Core -> Vidrio Templado
|
||||
|
||||
**Fecha:** 2025-12-08
|
||||
**Versión:** 1.0
|
||||
**Vertical:** Vidrio Templado
|
||||
**Nivel:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## RESUMEN
|
||||
|
||||
La vertical de Vidrio Templado hereda los schemas base del ERP Core y extiende con schemas específicos del dominio de producción de vidrio.
|
||||
|
||||
**Ubicación DDL Core:** `apps/erp-core/database/ddl/`
|
||||
|
||||
---
|
||||
|
||||
## ARQUITECTURA DE HERENCIA
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ ERP CORE (Base) │
|
||||
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
||||
│ │ auth │ │ core │ │financial│ │inventory│ │ purchase │ │
|
||||
│ │ 26 tbl │ │ 12 tbl │ │ 15 tbl │ │ 15 tbl │ │ 8 tbl │ │
|
||||
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
|
||||
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
||||
│ │ sales │ │analytics│ │ system │ │
|
||||
│ │ 6 tbl │ │ 5 tbl │ │ 10 tbl │ │
|
||||
│ └─────────┘ └─────────┘ └─────────┘ │
|
||||
│ TOTAL: ~97 tablas heredadas │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
│
|
||||
│ HEREDA
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ VIDRIO TEMPLADO (Extensiones) │
|
||||
│ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │
|
||||
│ │ production │ │ quality │ │ glass │ │
|
||||
│ │ management │ │ control │ │ inventory │ │
|
||||
│ │ (hornos) │ │ (inspección) │ │ (lotes) │ │
|
||||
│ └───────────────┘ └───────────────┘ └───────────────┘ │
|
||||
│ EXTENSIONES: ~25 tablas (planificadas) │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## SCHEMAS HEREDADOS DEL CORE
|
||||
|
||||
| Schema | Tablas | Uso en Vidrio Templado |
|
||||
|--------|--------|------------------------|
|
||||
| `auth` | 26 | Autenticación, usuarios, roles, permisos |
|
||||
| `core` | 12 | Partners (clientes), catálogos |
|
||||
| `financial` | 15 | Facturas, cuentas contables |
|
||||
| `inventory` | 15 | Base para materia prima y producto terminado |
|
||||
| `purchase` | 8 | Compras de materiales |
|
||||
| `sales` | 6 | Cotizaciones, órdenes de venta |
|
||||
| `analytics` | 5 | Centros de costo |
|
||||
| `system` | 10 | Mensajes, notificaciones |
|
||||
|
||||
**Total heredado:** ~97 tablas
|
||||
|
||||
---
|
||||
|
||||
## SCHEMAS ESPECÍFICOS DE VIDRIO TEMPLADO (Planificados)
|
||||
|
||||
### 1. Schema `production` (estimado 10+ tablas)
|
||||
|
||||
**Propósito:** Gestión de producción y hornos de templado
|
||||
|
||||
```sql
|
||||
-- Tablas principales planificadas:
|
||||
production.production_orders -- Órdenes de producción
|
||||
production.production_lines -- Líneas de producción (hornos)
|
||||
production.work_orders -- Órdenes de trabajo
|
||||
production.cutting_plans -- Planes de corte
|
||||
production.oven_schedules -- Programación de hornos
|
||||
production.temperature_logs -- Registros de temperatura
|
||||
```
|
||||
|
||||
### 2. Schema `quality` (estimado 8+ tablas)
|
||||
|
||||
**Propósito:** Control de calidad y trazabilidad
|
||||
|
||||
```sql
|
||||
-- Tablas principales planificadas:
|
||||
quality.inspections -- Inspecciones de calidad
|
||||
quality.defect_types -- Catálogo de defectos
|
||||
quality.quality_tests -- Pruebas de calidad
|
||||
quality.certifications -- Certificaciones de producto
|
||||
quality.non_conformities -- No conformidades
|
||||
```
|
||||
|
||||
### 3. Schema `glass` (estimado 7+ tablas)
|
||||
|
||||
**Propósito:** Inventario especializado de vidrio
|
||||
|
||||
```sql
|
||||
-- Extiende: inventory schema del core
|
||||
glass.glass_types -- Tipos de vidrio
|
||||
glass.glass_lots -- Lotes de producción
|
||||
glass.glass_dimensions -- Dimensiones estándar
|
||||
glass.raw_materials -- Materia prima
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## SPECS DEL CORE APLICABLES
|
||||
|
||||
**Documento detallado:** `orchestration/00-guidelines/HERENCIA-SPECS-CORE.md`
|
||||
|
||||
### Correcciones de DDL Core (2025-12-08)
|
||||
|
||||
El DDL del ERP-Core fue corregido para resolver FK inválidas:
|
||||
|
||||
1. **stock_valuation_layers**: Campos `journal_entry_id` y `journal_entry_line_id` (antes `account_move_*`)
|
||||
2. **stock_move_consume_rel**: Nueva tabla de trazabilidad (antes `move_line_consume_rel`)
|
||||
3. **category_stock_accounts**: FK corregida a `core.product_categories`
|
||||
4. **product_categories**: ALTERs ahora apuntan a schema `core`
|
||||
|
||||
### SPECS Obligatorias
|
||||
|
||||
| Spec Core | Aplicación en Vidrio Templado | SP | Estado |
|
||||
|-----------|------------------------------|----:|--------|
|
||||
| SPEC-SISTEMA-SECUENCIAS | Foliado de órdenes y lotes | 8 | ✅ DDL LISTO |
|
||||
| SPEC-VALORACION-INVENTARIO | Costeo de materia prima y producto | 21 | ✅ DDL LISTO |
|
||||
| SPEC-SEGURIDAD-API-KEYS-PERMISOS | Control de acceso | 31 | ✅ DDL LISTO |
|
||||
| SPEC-TRAZABILIDAD-LOTES-SERIES | Lotes de producción de vidrio | 13 | ✅ DDL LISTO |
|
||||
| SPEC-PRICING-RULES | Precios por dimensiones y tipo | 8 | PENDIENTE |
|
||||
| SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN | Control de producción | 13 | PENDIENTE |
|
||||
| SPEC-MAIL-THREAD-TRACKING | Historial de órdenes | 13 | PENDIENTE |
|
||||
| SPEC-WIZARD-TRANSIENT-MODEL | Wizards de corte y templado | 8 | PENDIENTE |
|
||||
|
||||
### SPECS Opcionales
|
||||
|
||||
| Spec Core | Decisión | Razón |
|
||||
|-----------|----------|-------|
|
||||
| SPEC-INVENTARIOS-CICLICOS | EVALUAR | Útil para materia prima |
|
||||
| SPEC-FIRMA-ELECTRONICA-NOM151 | EVALUAR | Certificados de calidad |
|
||||
|
||||
### SPECS No Aplican
|
||||
|
||||
| Spec Core | Razón |
|
||||
|-----------|-------|
|
||||
| SPEC-INTEGRACION-CALENDAR | No requiere calendario externo |
|
||||
| SPEC-CONSOLIDACION-FINANCIERA | Negocio de una sola planta |
|
||||
|
||||
---
|
||||
|
||||
## ORDEN DE EJECUCIÓN DDL (Futuro)
|
||||
|
||||
```bash
|
||||
# PASO 1: Cargar ERP Core (base)
|
||||
cd apps/erp-core/database
|
||||
./scripts/reset-database.sh --force
|
||||
|
||||
# PASO 2: Cargar extensiones de Vidrio Templado
|
||||
cd apps/verticales/vidrio-templado/database
|
||||
psql $DATABASE_URL -f init/00-extensions.sql
|
||||
psql $DATABASE_URL -f init/01-create-schemas.sql
|
||||
psql $DATABASE_URL -f init/02-production-tables.sql
|
||||
psql $DATABASE_URL -f init/03-quality-tables.sql
|
||||
psql $DATABASE_URL -f init/04-glass-inventory.sql
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## MAPEO DE NOMENCLATURA
|
||||
|
||||
| Core | Vidrio Templado |
|
||||
|------|-----------------|
|
||||
| `core.partners` | Clientes, proveedores |
|
||||
| `inventory.products` | Producto terminado base |
|
||||
| `inventory.locations` | Almacenes de vidrio |
|
||||
| `sales.sale_orders` | Pedidos de vidrio |
|
||||
| `purchase.purchase_orders` | Compras de materia prima |
|
||||
|
||||
---
|
||||
|
||||
## REFERENCIAS
|
||||
|
||||
- ERP Core DDL: `apps/erp-core/database/ddl/`
|
||||
- ERP Core README: `apps/erp-core/database/README.md`
|
||||
- Directivas: `orchestration/directivas/`
|
||||
- Inventarios: `orchestration/inventarios/`
|
||||
|
||||
---
|
||||
|
||||
**Documento de herencia oficial**
|
||||
**Última actualización:** 2025-12-08
|
||||
90
database/README.md
Normal file
90
database/README.md
Normal file
@ -0,0 +1,90 @@
|
||||
# Base de Datos - ERP Vidrio Templado
|
||||
|
||||
## Resumen
|
||||
|
||||
| Aspecto | Valor |
|
||||
|---------|-------|
|
||||
| **Schema principal** | `vidrio` |
|
||||
| **Tablas específicas** | 14 |
|
||||
| **ENUMs** | 5 |
|
||||
| **Hereda de ERP-Core** | 144 tablas (12 schemas) |
|
||||
|
||||
## Prerequisitos
|
||||
|
||||
1. **ERP-Core instalado** con todos sus schemas
|
||||
2. **Extensiones PostgreSQL**: pg_trgm
|
||||
|
||||
## Orden de Ejecución DDL
|
||||
|
||||
```bash
|
||||
# 1. Instalar ERP-Core primero
|
||||
cd apps/erp-core/database
|
||||
./scripts/reset-database.sh
|
||||
|
||||
# 2. Instalar extensión Vidrio Templado
|
||||
cd apps/verticales/vidrio-templado/database
|
||||
psql $DATABASE_URL -f init/00-extensions.sql
|
||||
psql $DATABASE_URL -f init/01-create-schemas.sql
|
||||
psql $DATABASE_URL -f init/02-rls-functions.sql
|
||||
psql $DATABASE_URL -f init/03-vidrio-tables.sql
|
||||
```
|
||||
|
||||
## Tablas Implementadas
|
||||
|
||||
### Schema: vidrio (14 tablas)
|
||||
|
||||
| Tabla | Módulo | Descripción |
|
||||
|-------|--------|-------------|
|
||||
| glass_catalog | VT-001 | Catálogo de tipos de vidrio |
|
||||
| process_catalog | VT-001 | Catálogo de procesos |
|
||||
| production_orders | VT-002 | Órdenes de producción |
|
||||
| production_lines | VT-002 | Líneas de producción |
|
||||
| furnaces | VT-003 | Hornos de templado |
|
||||
| furnace_batches | VT-003 | Lotes en horno |
|
||||
| cutting_machines | VT-003 | Máquinas de corte |
|
||||
| quality_tests | VT-004 | Tipos de prueba de calidad |
|
||||
| quality_inspections | VT-004 | Inspecciones de calidad |
|
||||
| quality_test_results | VT-004 | Resultados de pruebas |
|
||||
| glass_lots | VT-005 | Lotes de vidrio |
|
||||
| lot_consumption | VT-005 | Consumo de lotes |
|
||||
| quotations | VT-006 | Cotizaciones |
|
||||
| quotation_lines | VT-006 | Líneas de cotización |
|
||||
|
||||
## ENUMs
|
||||
|
||||
| Enum | Valores |
|
||||
|------|---------|
|
||||
| glass_type | clear, tinted, reflective, low_e, laminated, tempered |
|
||||
| production_status | draft, scheduled, in_progress, cutting, tempering, quality_check, completed, cancelled |
|
||||
| furnace_status | idle, preheating, heating, cooling, maintenance |
|
||||
| inspection_result | pending, passed, failed, conditional |
|
||||
| quotation_status | draft, sent, approved, rejected, expired |
|
||||
|
||||
## Row Level Security
|
||||
|
||||
Todas las tablas tienen RLS con:
|
||||
```sql
|
||||
tenant_id = current_setting('app.current_tenant_id', true)::UUID
|
||||
```
|
||||
|
||||
## Funciones Específicas
|
||||
|
||||
### vidrio.calculate_area_m2(width_mm, height_mm)
|
||||
Calcula el área en metros cuadrados a partir de dimensiones en milímetros.
|
||||
|
||||
```sql
|
||||
SELECT vidrio.calculate_area_m2(1500, 2000);
|
||||
-- Resultado: 3.00 m²
|
||||
```
|
||||
|
||||
## Consideraciones Especiales
|
||||
|
||||
- **Cálculos de área**: Siempre en m² para costeo
|
||||
- **Trazabilidad**: Lotes vinculados a piezas producidas
|
||||
- **Control de calidad**: Pruebas obligatorias antes de entrega
|
||||
- **Capacidad hornos**: Máximo área por batch configurable
|
||||
|
||||
## Referencias
|
||||
|
||||
- [HERENCIA-ERP-CORE.md](../orchestration/00-guidelines/HERENCIA-ERP-CORE.md)
|
||||
- [DATABASE_INVENTORY.yml](../orchestration/inventarios/DATABASE_INVENTORY.yml)
|
||||
23
database/init/00-extensions.sql
Normal file
23
database/init/00-extensions.sql
Normal file
@ -0,0 +1,23 @@
|
||||
-- ============================================================================
|
||||
-- EXTENSIONES PostgreSQL - ERP Vidrio Templado
|
||||
-- ============================================================================
|
||||
-- Versión: 1.0.0
|
||||
-- Fecha: 2025-12-09
|
||||
-- Prerequisito: ERP-Core debe estar instalado
|
||||
-- ============================================================================
|
||||
|
||||
-- Verificar que ERP-Core esté instalado
|
||||
DO $$
|
||||
BEGIN
|
||||
IF NOT EXISTS (SELECT 1 FROM pg_namespace WHERE nspname = 'auth') THEN
|
||||
RAISE EXCEPTION 'ERP-Core no instalado. Ejecutar primero DDL de erp-core.';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
-- Extensión para cálculos geométricos (áreas de vidrio)
|
||||
-- Ya debería estar en ERP-Core, pero por si acaso
|
||||
CREATE EXTENSION IF NOT EXISTS pg_trgm;
|
||||
|
||||
-- ============================================================================
|
||||
-- FIN EXTENSIONES
|
||||
-- ============================================================================
|
||||
15
database/init/01-create-schemas.sql
Normal file
15
database/init/01-create-schemas.sql
Normal file
@ -0,0 +1,15 @@
|
||||
-- ============================================================================
|
||||
-- SCHEMAS - ERP Vidrio Templado
|
||||
-- ============================================================================
|
||||
-- Versión: 1.0.0
|
||||
-- Fecha: 2025-12-09
|
||||
-- ============================================================================
|
||||
|
||||
-- Schema principal para operaciones de vidrio templado
|
||||
CREATE SCHEMA IF NOT EXISTS vidrio;
|
||||
|
||||
COMMENT ON SCHEMA vidrio IS 'Schema para operaciones de manufactura de vidrio templado';
|
||||
|
||||
-- ============================================================================
|
||||
-- FIN SCHEMAS
|
||||
-- ============================================================================
|
||||
30
database/init/02-rls-functions.sql
Normal file
30
database/init/02-rls-functions.sql
Normal file
@ -0,0 +1,30 @@
|
||||
-- ============================================================================
|
||||
-- FUNCIONES RLS - ERP Vidrio Templado
|
||||
-- ============================================================================
|
||||
-- Versión: 1.0.0
|
||||
-- Fecha: 2025-12-09
|
||||
-- Nota: Usa las funciones de contexto de ERP-Core (auth schema)
|
||||
-- ============================================================================
|
||||
|
||||
-- Las funciones principales están en ERP-Core:
|
||||
-- auth.get_current_tenant_id()
|
||||
-- auth.get_current_user_id()
|
||||
-- auth.get_current_company_id()
|
||||
|
||||
-- Función para calcular área de vidrio en m2
|
||||
CREATE OR REPLACE FUNCTION vidrio.calculate_area_m2(
|
||||
width_mm DECIMAL,
|
||||
height_mm DECIMAL
|
||||
)
|
||||
RETURNS DECIMAL AS $$
|
||||
BEGIN
|
||||
RETURN (width_mm / 1000.0) * (height_mm / 1000.0);
|
||||
END;
|
||||
$$ LANGUAGE plpgsql IMMUTABLE;
|
||||
|
||||
COMMENT ON FUNCTION vidrio.calculate_area_m2 IS
|
||||
'Calcula el área en metros cuadrados a partir de dimensiones en milímetros';
|
||||
|
||||
-- ============================================================================
|
||||
-- FIN FUNCIONES RLS
|
||||
-- ============================================================================
|
||||
716
database/init/03-vidrio-tables.sql
Normal file
716
database/init/03-vidrio-tables.sql
Normal file
@ -0,0 +1,716 @@
|
||||
-- ============================================================================
|
||||
-- TABLAS VIDRIO TEMPLADO - ERP Vidrio
|
||||
-- ============================================================================
|
||||
-- Módulos: VT-001 (Producción), VT-002 (Calidad), VT-003 (Inventario),
|
||||
-- VT-004 (Maquinaria), VT-005 (Trazabilidad), VT-006 (Cotizaciones)
|
||||
-- Versión: 1.0.0
|
||||
-- Fecha: 2025-12-09
|
||||
-- ============================================================================
|
||||
-- PREREQUISITOS:
|
||||
-- 1. ERP-Core instalado (auth, core, inventory, sales)
|
||||
-- 2. Schema vidrio creado
|
||||
-- ============================================================================
|
||||
|
||||
-- ============================================================================
|
||||
-- TYPES (ENUMs)
|
||||
-- ============================================================================
|
||||
|
||||
DO $$ BEGIN
|
||||
CREATE TYPE vidrio.glass_type AS ENUM (
|
||||
'clear', 'tinted', 'reflective', 'low_e', 'laminated', 'tempered', 'insulated'
|
||||
);
|
||||
EXCEPTION WHEN duplicate_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
CREATE TYPE vidrio.production_status AS ENUM (
|
||||
'draft', 'scheduled', 'cutting', 'processing', 'tempering', 'quality_check', 'completed', 'cancelled'
|
||||
);
|
||||
EXCEPTION WHEN duplicate_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
CREATE TYPE vidrio.quality_result AS ENUM (
|
||||
'pending', 'passed', 'failed', 'conditional'
|
||||
);
|
||||
EXCEPTION WHEN duplicate_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
CREATE TYPE vidrio.furnace_status AS ENUM (
|
||||
'idle', 'heating', 'ready', 'in_use', 'cooling', 'maintenance'
|
||||
);
|
||||
EXCEPTION WHEN duplicate_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
CREATE TYPE vidrio.edge_type AS ENUM (
|
||||
'flat_polished', 'beveled', 'pencil', 'ogee', 'waterfall', 'raw'
|
||||
);
|
||||
EXCEPTION WHEN duplicate_object THEN NULL; END $$;
|
||||
|
||||
-- ============================================================================
|
||||
-- CATÁLOGOS BASE
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: glass_catalog (Catálogo de tipos de vidrio)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.glass_catalog (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
-- Identificación
|
||||
code VARCHAR(30) NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
description TEXT,
|
||||
|
||||
-- Tipo y características
|
||||
glass_type vidrio.glass_type NOT NULL,
|
||||
thickness_mm DECIMAL(5,2) NOT NULL, -- 3, 4, 5, 6, 8, 10, 12, 15, 19 mm
|
||||
color VARCHAR(50),
|
||||
|
||||
-- Propiedades físicas
|
||||
weight_per_m2 DECIMAL(8,3), -- kg/m2
|
||||
max_width_mm INTEGER,
|
||||
max_height_mm INTEGER,
|
||||
|
||||
-- Precios base
|
||||
price_per_m2 DECIMAL(12,2),
|
||||
cost_per_m2 DECIMAL(12,2),
|
||||
|
||||
-- Control
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
|
||||
-- Auditoría
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_glass_catalog_code UNIQUE (tenant_id, code)
|
||||
);
|
||||
|
||||
-- Tabla: process_catalog (Catálogo de procesos)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.process_catalog (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
code VARCHAR(30) NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
description TEXT,
|
||||
|
||||
-- Tipo de proceso
|
||||
process_type VARCHAR(50) NOT NULL, -- cutting, edging, drilling, tempering, laminating
|
||||
|
||||
-- Costos
|
||||
cost_per_unit DECIMAL(12,2),
|
||||
cost_per_m2 DECIMAL(12,2),
|
||||
time_minutes INTEGER,
|
||||
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_process_catalog_code UNIQUE (tenant_id, code)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- PRODUCCIÓN (VT-001)
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: production_orders (Órdenes de producción)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.production_orders (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
-- Número de orden
|
||||
order_number VARCHAR(30) NOT NULL,
|
||||
|
||||
-- Referencias
|
||||
sale_order_id UUID, -- FK a sales.sale_orders (ERP Core)
|
||||
customer_id UUID, -- FK a core.partners (ERP Core)
|
||||
|
||||
-- Estado
|
||||
status vidrio.production_status NOT NULL DEFAULT 'draft',
|
||||
|
||||
-- Fechas
|
||||
order_date DATE NOT NULL DEFAULT CURRENT_DATE,
|
||||
due_date DATE NOT NULL,
|
||||
start_date TIMESTAMPTZ,
|
||||
end_date TIMESTAMPTZ,
|
||||
|
||||
-- Prioridad
|
||||
priority INTEGER DEFAULT 5 CHECK (priority BETWEEN 1 AND 10),
|
||||
|
||||
-- Totales
|
||||
total_pieces INTEGER DEFAULT 0,
|
||||
total_area_m2 DECIMAL(12,4) DEFAULT 0,
|
||||
completed_pieces INTEGER DEFAULT 0,
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
internal_notes TEXT,
|
||||
|
||||
-- Auditoría
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
deleted_at TIMESTAMPTZ,
|
||||
deleted_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_production_orders_number UNIQUE (tenant_id, order_number)
|
||||
);
|
||||
|
||||
-- Tabla: production_lines (Piezas de producción)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.production_lines (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
production_order_id UUID NOT NULL REFERENCES vidrio.production_orders(id) ON DELETE CASCADE,
|
||||
|
||||
-- Identificación de pieza
|
||||
line_number INTEGER NOT NULL,
|
||||
piece_code VARCHAR(50),
|
||||
|
||||
-- Tipo de vidrio
|
||||
glass_catalog_id UUID NOT NULL REFERENCES vidrio.glass_catalog(id),
|
||||
|
||||
-- Dimensiones (en mm)
|
||||
width_mm DECIMAL(8,2) NOT NULL,
|
||||
height_mm DECIMAL(8,2) NOT NULL,
|
||||
quantity INTEGER NOT NULL DEFAULT 1,
|
||||
|
||||
-- Área calculada
|
||||
area_m2 DECIMAL(12,6) GENERATED ALWAYS AS (
|
||||
(width_mm / 1000.0) * (height_mm / 1000.0) * quantity
|
||||
) STORED,
|
||||
|
||||
-- Acabados
|
||||
edge_type vidrio.edge_type DEFAULT 'flat_polished',
|
||||
has_holes BOOLEAN DEFAULT FALSE,
|
||||
hole_count INTEGER DEFAULT 0,
|
||||
has_cutouts BOOLEAN DEFAULT FALSE,
|
||||
|
||||
-- Estado
|
||||
status vidrio.production_status DEFAULT 'draft',
|
||||
|
||||
-- Lote de producción
|
||||
lot_id UUID,
|
||||
furnace_batch_id UUID,
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
drawing_url VARCHAR(500),
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- MAQUINARIA (VT-004)
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: furnaces (Hornos de templado)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.furnaces (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
code VARCHAR(30) NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
|
||||
-- Capacidad
|
||||
max_width_mm INTEGER NOT NULL,
|
||||
max_height_mm INTEGER NOT NULL,
|
||||
min_thickness_mm DECIMAL(4,2),
|
||||
max_thickness_mm DECIMAL(4,2),
|
||||
|
||||
-- Estado
|
||||
status vidrio.furnace_status DEFAULT 'idle',
|
||||
current_temperature INTEGER,
|
||||
|
||||
-- Mantenimiento
|
||||
last_maintenance_date DATE,
|
||||
next_maintenance_date DATE,
|
||||
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_furnaces_code UNIQUE (tenant_id, code)
|
||||
);
|
||||
|
||||
-- Tabla: furnace_batches (Lotes de hornada)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.furnace_batches (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
furnace_id UUID NOT NULL REFERENCES vidrio.furnaces(id),
|
||||
|
||||
-- Identificación
|
||||
batch_number VARCHAR(30) NOT NULL,
|
||||
|
||||
-- Tiempos
|
||||
start_time TIMESTAMPTZ NOT NULL,
|
||||
end_time TIMESTAMPTZ,
|
||||
|
||||
-- Parámetros
|
||||
temperature INTEGER NOT NULL, -- Temperatura objetivo
|
||||
cycle_time_minutes INTEGER, -- Tiempo de ciclo
|
||||
|
||||
-- Conteo
|
||||
pieces_count INTEGER DEFAULT 0,
|
||||
pieces_passed INTEGER DEFAULT 0,
|
||||
pieces_failed INTEGER DEFAULT 0,
|
||||
|
||||
-- Operador
|
||||
operator_id UUID REFERENCES auth.users(id),
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_furnace_batches_number UNIQUE (tenant_id, batch_number)
|
||||
);
|
||||
|
||||
-- Tabla: cutting_machines (Máquinas de corte)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.cutting_machines (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
code VARCHAR(30) NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
machine_type VARCHAR(50), -- manual, semi_auto, cnc
|
||||
|
||||
-- Capacidad
|
||||
max_width_mm INTEGER,
|
||||
max_height_mm INTEGER,
|
||||
|
||||
-- Estado
|
||||
is_active BOOLEAN NOT NULL DEFAULT TRUE,
|
||||
|
||||
-- Mantenimiento
|
||||
last_maintenance_date DATE,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_cutting_machines_code UNIQUE (tenant_id, code)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- CALIDAD (VT-002)
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: quality_tests (Pruebas de calidad)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.quality_tests (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
code VARCHAR(30) NOT NULL,
|
||||
name VARCHAR(100) NOT NULL,
|
||||
description TEXT,
|
||||
|
||||
-- Tipo de prueba
|
||||
test_type VARCHAR(50) NOT NULL, -- visual, fragmentation, impact, heat_soak
|
||||
|
||||
-- Parámetros
|
||||
min_value DECIMAL(12,4),
|
||||
max_value DECIMAL(12,4),
|
||||
unit VARCHAR(20),
|
||||
|
||||
is_mandatory BOOLEAN DEFAULT TRUE,
|
||||
is_active BOOLEAN DEFAULT TRUE,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_quality_tests_code UNIQUE (tenant_id, code)
|
||||
);
|
||||
|
||||
-- Tabla: quality_inspections (Inspecciones de calidad)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.quality_inspections (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
-- Referencia
|
||||
production_line_id UUID REFERENCES vidrio.production_lines(id),
|
||||
furnace_batch_id UUID REFERENCES vidrio.furnace_batches(id),
|
||||
|
||||
-- Número
|
||||
inspection_number VARCHAR(30) NOT NULL,
|
||||
inspection_date TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
|
||||
-- Resultado general
|
||||
result vidrio.quality_result NOT NULL DEFAULT 'pending',
|
||||
|
||||
-- Inspector
|
||||
inspector_id UUID NOT NULL REFERENCES auth.users(id),
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
rejection_reason TEXT,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_quality_inspections_number UNIQUE (tenant_id, inspection_number)
|
||||
);
|
||||
|
||||
-- Tabla: quality_test_results (Resultados de pruebas)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.quality_test_results (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
inspection_id UUID NOT NULL REFERENCES vidrio.quality_inspections(id) ON DELETE CASCADE,
|
||||
test_id UUID NOT NULL REFERENCES vidrio.quality_tests(id),
|
||||
|
||||
-- Resultado
|
||||
result vidrio.quality_result NOT NULL,
|
||||
measured_value DECIMAL(12,4),
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
photo_url VARCHAR(500),
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- TRAZABILIDAD (VT-005)
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: glass_lots (Lotes de vidrio crudo)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.glass_lots (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
-- Identificación
|
||||
lot_number VARCHAR(30) NOT NULL,
|
||||
glass_catalog_id UUID NOT NULL REFERENCES vidrio.glass_catalog(id),
|
||||
|
||||
-- Proveedor
|
||||
supplier_id UUID, -- FK a core.partners (ERP Core)
|
||||
supplier_lot VARCHAR(50),
|
||||
purchase_order_id UUID, -- FK a purchase.purchase_orders (ERP Core)
|
||||
|
||||
-- Recepción
|
||||
receipt_date DATE NOT NULL,
|
||||
quantity_sheets INTEGER NOT NULL,
|
||||
quantity_remaining INTEGER NOT NULL,
|
||||
|
||||
-- Dimensiones del lote
|
||||
sheet_width_mm INTEGER,
|
||||
sheet_height_mm INTEGER,
|
||||
|
||||
-- Calidad
|
||||
quality_certificate VARCHAR(100),
|
||||
inspection_status vidrio.quality_result DEFAULT 'pending',
|
||||
|
||||
-- Fechas
|
||||
expiry_date DATE,
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_glass_lots_number UNIQUE (tenant_id, lot_number)
|
||||
);
|
||||
|
||||
-- Tabla: lot_consumption (Consumo de lotes)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.lot_consumption (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
glass_lot_id UUID NOT NULL REFERENCES vidrio.glass_lots(id),
|
||||
production_line_id UUID NOT NULL REFERENCES vidrio.production_lines(id),
|
||||
|
||||
quantity_sheets INTEGER NOT NULL DEFAULT 1,
|
||||
consumption_date TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- COTIZACIONES (VT-006)
|
||||
-- ============================================================================
|
||||
|
||||
-- Tabla: quotations (Cotizaciones de vidrio)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.quotations (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
|
||||
-- Número
|
||||
quotation_number VARCHAR(30) NOT NULL,
|
||||
|
||||
-- Cliente
|
||||
customer_id UUID NOT NULL, -- FK a core.partners (ERP Core)
|
||||
contact_name VARCHAR(200),
|
||||
contact_email VARCHAR(255),
|
||||
contact_phone VARCHAR(20),
|
||||
|
||||
-- Estado
|
||||
status VARCHAR(20) NOT NULL DEFAULT 'draft', -- draft, sent, confirmed, cancelled, expired
|
||||
|
||||
-- Fechas
|
||||
quotation_date DATE NOT NULL DEFAULT CURRENT_DATE,
|
||||
valid_until DATE NOT NULL,
|
||||
|
||||
-- Proyecto/Obra
|
||||
project_name VARCHAR(200),
|
||||
project_location VARCHAR(255),
|
||||
|
||||
-- Totales
|
||||
subtotal DECIMAL(14,2) DEFAULT 0,
|
||||
discount_percent DECIMAL(5,2) DEFAULT 0,
|
||||
discount_amount DECIMAL(14,2) DEFAULT 0,
|
||||
tax_amount DECIMAL(14,2) DEFAULT 0,
|
||||
total DECIMAL(14,2) DEFAULT 0,
|
||||
|
||||
-- Conversión
|
||||
sale_order_id UUID, -- FK a sales.sale_orders cuando se confirma
|
||||
|
||||
-- Notas
|
||||
notes TEXT,
|
||||
terms_conditions TEXT,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id),
|
||||
updated_at TIMESTAMPTZ,
|
||||
updated_by UUID REFERENCES auth.users(id),
|
||||
|
||||
CONSTRAINT uq_quotations_number UNIQUE (tenant_id, quotation_number)
|
||||
);
|
||||
|
||||
-- Tabla: quotation_lines (Líneas de cotización)
|
||||
CREATE TABLE IF NOT EXISTS vidrio.quotation_lines (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
tenant_id UUID NOT NULL REFERENCES auth.tenants(id) ON DELETE CASCADE,
|
||||
quotation_id UUID NOT NULL REFERENCES vidrio.quotations(id) ON DELETE CASCADE,
|
||||
|
||||
-- Tipo de vidrio
|
||||
glass_catalog_id UUID NOT NULL REFERENCES vidrio.glass_catalog(id),
|
||||
|
||||
-- Dimensiones
|
||||
width_mm DECIMAL(8,2) NOT NULL,
|
||||
height_mm DECIMAL(8,2) NOT NULL,
|
||||
quantity INTEGER NOT NULL DEFAULT 1,
|
||||
|
||||
-- Área
|
||||
area_m2 DECIMAL(12,6) GENERATED ALWAYS AS (
|
||||
(width_mm / 1000.0) * (height_mm / 1000.0) * quantity
|
||||
) STORED,
|
||||
|
||||
-- Acabados
|
||||
edge_type vidrio.edge_type DEFAULT 'flat_polished',
|
||||
has_holes BOOLEAN DEFAULT FALSE,
|
||||
hole_count INTEGER DEFAULT 0,
|
||||
has_cutouts BOOLEAN DEFAULT FALSE,
|
||||
|
||||
-- Precios
|
||||
price_per_m2 DECIMAL(12,2) NOT NULL,
|
||||
processing_cost DECIMAL(12,2) DEFAULT 0,
|
||||
subtotal DECIMAL(14,2) NOT NULL,
|
||||
|
||||
-- Descripción
|
||||
description TEXT,
|
||||
|
||||
-- Orden
|
||||
sequence INTEGER DEFAULT 1,
|
||||
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
created_by UUID REFERENCES auth.users(id)
|
||||
);
|
||||
|
||||
-- ============================================================================
|
||||
-- ÍNDICES
|
||||
-- ============================================================================
|
||||
|
||||
-- Glass catalog
|
||||
CREATE INDEX IF NOT EXISTS idx_glass_catalog_tenant ON vidrio.glass_catalog(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_glass_catalog_type ON vidrio.glass_catalog(glass_type);
|
||||
|
||||
-- Process catalog
|
||||
CREATE INDEX IF NOT EXISTS idx_process_catalog_tenant ON vidrio.process_catalog(tenant_id);
|
||||
|
||||
-- Production orders
|
||||
CREATE INDEX IF NOT EXISTS idx_production_orders_tenant ON vidrio.production_orders(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_orders_status ON vidrio.production_orders(status);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_orders_customer ON vidrio.production_orders(customer_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_orders_date ON vidrio.production_orders(order_date);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_orders_due ON vidrio.production_orders(due_date);
|
||||
|
||||
-- Production lines
|
||||
CREATE INDEX IF NOT EXISTS idx_production_lines_tenant ON vidrio.production_lines(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_lines_order ON vidrio.production_lines(production_order_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_lines_glass ON vidrio.production_lines(glass_catalog_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_production_lines_status ON vidrio.production_lines(status);
|
||||
|
||||
-- Furnaces
|
||||
CREATE INDEX IF NOT EXISTS idx_furnaces_tenant ON vidrio.furnaces(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_furnaces_status ON vidrio.furnaces(status);
|
||||
|
||||
-- Furnace batches
|
||||
CREATE INDEX IF NOT EXISTS idx_furnace_batches_tenant ON vidrio.furnace_batches(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_furnace_batches_furnace ON vidrio.furnace_batches(furnace_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_furnace_batches_date ON vidrio.furnace_batches(start_time);
|
||||
|
||||
-- Quality inspections
|
||||
CREATE INDEX IF NOT EXISTS idx_quality_inspections_tenant ON vidrio.quality_inspections(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_quality_inspections_result ON vidrio.quality_inspections(result);
|
||||
|
||||
-- Glass lots
|
||||
CREATE INDEX IF NOT EXISTS idx_glass_lots_tenant ON vidrio.glass_lots(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_glass_lots_glass ON vidrio.glass_lots(glass_catalog_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_glass_lots_supplier ON vidrio.glass_lots(supplier_id);
|
||||
|
||||
-- Quotations
|
||||
CREATE INDEX IF NOT EXISTS idx_quotations_tenant ON vidrio.quotations(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_quotations_customer ON vidrio.quotations(customer_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_quotations_status ON vidrio.quotations(status);
|
||||
CREATE INDEX IF NOT EXISTS idx_quotations_date ON vidrio.quotations(quotation_date);
|
||||
|
||||
-- Quotation lines
|
||||
CREATE INDEX IF NOT EXISTS idx_quotation_lines_tenant ON vidrio.quotation_lines(tenant_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_quotation_lines_quotation ON vidrio.quotation_lines(quotation_id);
|
||||
|
||||
-- ============================================================================
|
||||
-- ROW LEVEL SECURITY
|
||||
-- ============================================================================
|
||||
|
||||
ALTER TABLE vidrio.glass_catalog ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.process_catalog ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.production_orders ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.production_lines ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.furnaces ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.furnace_batches ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.cutting_machines ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.quality_tests ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.quality_inspections ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.quality_test_results ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.glass_lots ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.lot_consumption ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.quotations ENABLE ROW LEVEL SECURITY;
|
||||
ALTER TABLE vidrio.quotation_lines ENABLE ROW LEVEL SECURITY;
|
||||
|
||||
-- Políticas de aislamiento por tenant
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_glass_catalog ON vidrio.glass_catalog;
|
||||
CREATE POLICY tenant_isolation_glass_catalog ON vidrio.glass_catalog
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_process_catalog ON vidrio.process_catalog;
|
||||
CREATE POLICY tenant_isolation_process_catalog ON vidrio.process_catalog
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_production_orders ON vidrio.production_orders;
|
||||
CREATE POLICY tenant_isolation_production_orders ON vidrio.production_orders
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_production_lines ON vidrio.production_lines;
|
||||
CREATE POLICY tenant_isolation_production_lines ON vidrio.production_lines
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_furnaces ON vidrio.furnaces;
|
||||
CREATE POLICY tenant_isolation_furnaces ON vidrio.furnaces
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_furnace_batches ON vidrio.furnace_batches;
|
||||
CREATE POLICY tenant_isolation_furnace_batches ON vidrio.furnace_batches
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_cutting_machines ON vidrio.cutting_machines;
|
||||
CREATE POLICY tenant_isolation_cutting_machines ON vidrio.cutting_machines
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_quality_tests ON vidrio.quality_tests;
|
||||
CREATE POLICY tenant_isolation_quality_tests ON vidrio.quality_tests
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_quality_inspections ON vidrio.quality_inspections;
|
||||
CREATE POLICY tenant_isolation_quality_inspections ON vidrio.quality_inspections
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_quality_test_results ON vidrio.quality_test_results;
|
||||
CREATE POLICY tenant_isolation_quality_test_results ON vidrio.quality_test_results
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_glass_lots ON vidrio.glass_lots;
|
||||
CREATE POLICY tenant_isolation_glass_lots ON vidrio.glass_lots
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_lot_consumption ON vidrio.lot_consumption;
|
||||
CREATE POLICY tenant_isolation_lot_consumption ON vidrio.lot_consumption
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_quotations ON vidrio.quotations;
|
||||
CREATE POLICY tenant_isolation_quotations ON vidrio.quotations
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
DO $$ BEGIN
|
||||
DROP POLICY IF EXISTS tenant_isolation_quotation_lines ON vidrio.quotation_lines;
|
||||
CREATE POLICY tenant_isolation_quotation_lines ON vidrio.quotation_lines
|
||||
FOR ALL USING (tenant_id = current_setting('app.current_tenant_id', true)::UUID);
|
||||
EXCEPTION WHEN undefined_object THEN NULL; END $$;
|
||||
|
||||
-- ============================================================================
|
||||
-- COMENTARIOS
|
||||
-- ============================================================================
|
||||
|
||||
COMMENT ON TABLE vidrio.glass_catalog IS 'Catálogo de tipos de vidrio';
|
||||
COMMENT ON TABLE vidrio.process_catalog IS 'Catálogo de procesos de manufactura';
|
||||
COMMENT ON TABLE vidrio.production_orders IS 'Órdenes de producción';
|
||||
COMMENT ON TABLE vidrio.production_lines IS 'Piezas individuales de producción';
|
||||
COMMENT ON TABLE vidrio.furnaces IS 'Hornos de templado';
|
||||
COMMENT ON TABLE vidrio.furnace_batches IS 'Lotes de hornada';
|
||||
COMMENT ON TABLE vidrio.cutting_machines IS 'Máquinas de corte';
|
||||
COMMENT ON TABLE vidrio.quality_tests IS 'Catálogo de pruebas de calidad';
|
||||
COMMENT ON TABLE vidrio.quality_inspections IS 'Inspecciones de calidad';
|
||||
COMMENT ON TABLE vidrio.quality_test_results IS 'Resultados de pruebas';
|
||||
COMMENT ON TABLE vidrio.glass_lots IS 'Lotes de vidrio crudo (trazabilidad)';
|
||||
COMMENT ON TABLE vidrio.lot_consumption IS 'Consumo de lotes en producción';
|
||||
COMMENT ON TABLE vidrio.quotations IS 'Cotizaciones de vidrio';
|
||||
COMMENT ON TABLE vidrio.quotation_lines IS 'Piezas cotizadas';
|
||||
|
||||
-- ============================================================================
|
||||
-- FIN TABLAS VIDRIO
|
||||
-- Total: 14 tablas, 5 ENUMs
|
||||
-- ============================================================================
|
||||
104
docs/00-vision-general/VISION-VIDRIO.md
Normal file
104
docs/00-vision-general/VISION-VIDRIO.md
Normal file
@ -0,0 +1,104 @@
|
||||
# Visión General - ERP Vidrio Templado
|
||||
|
||||
**Versión:** 1.0
|
||||
**Fecha:** 2025-12-08
|
||||
**Nivel:** 2B.2 (Vertical)
|
||||
|
||||
---
|
||||
|
||||
## Propósito del Sistema
|
||||
|
||||
Sistema ERP especializado para empresas de manufactura de vidrio templado, laminado y procesado. Gestiona todo el ciclo desde la cotización hasta el despacho, incluyendo control de producción, optimización de corte, control de hornos de templado y gestión de calidad.
|
||||
|
||||
---
|
||||
|
||||
## Dominio del Negocio
|
||||
|
||||
### Procesos Principales
|
||||
|
||||
1. **Cotización y Ventas**
|
||||
- Cotización por dimensiones, tipo de vidrio y acabados
|
||||
- Cálculo automático de precios por m²
|
||||
- Gestión de clientes y arquitectos
|
||||
|
||||
2. **Producción**
|
||||
- Órdenes de producción
|
||||
- Optimización de corte (nesting)
|
||||
- Control de hornos de templado
|
||||
- Programación de producción
|
||||
|
||||
3. **Inventario**
|
||||
- Control de materia prima (láminas de vidrio)
|
||||
- Trazabilidad de lotes
|
||||
- Gestión de producto terminado
|
||||
|
||||
4. **Control de Calidad**
|
||||
- Inspecciones de producto
|
||||
- Pruebas de fragmentación
|
||||
- Certificaciones
|
||||
|
||||
5. **Despacho**
|
||||
- Logística de entrega
|
||||
- Instalación (opcional)
|
||||
|
||||
---
|
||||
|
||||
## Tipos de Vidrio Manejados
|
||||
|
||||
| Tipo | Descripción |
|
||||
|------|-------------|
|
||||
| Templado | Tratamiento térmico para resistencia |
|
||||
| Laminado | Capas con PVB/EVA |
|
||||
| Insulado | Cámaras de aire |
|
||||
| Curvo | Templado con curvatura |
|
||||
| Esmerilado | Acabado mate |
|
||||
| Serigrafiado | Con diseños impresos |
|
||||
|
||||
---
|
||||
|
||||
## Arquitectura de Módulos
|
||||
|
||||
```
|
||||
VT-001 Fundamentos → Auth, Users, Tenants (hereda 100% core)
|
||||
VT-002 Cotizaciones → Cotizador de vidrio (30% core)
|
||||
VT-003 Producción → Órdenes de producción (20% core)
|
||||
VT-004 Inventario → Stock de vidrio (70% core)
|
||||
VT-005 Corte → Optimización de corte (0% core - nuevo)
|
||||
VT-006 Templado → Control de hornos (0% core - nuevo)
|
||||
VT-007 Calidad → Inspecciones, QC (40% core)
|
||||
VT-008 Despacho → Logística (50% core)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Stack Tecnológico
|
||||
|
||||
- **Backend:** NestJS + TypeORM + PostgreSQL
|
||||
- **Frontend:** React + TypeScript + Vite
|
||||
- **Base de Datos:** PostgreSQL 15+ (hereda ERP Core)
|
||||
- **Extensiones:** PostGIS (dimensiones)
|
||||
|
||||
---
|
||||
|
||||
## Métricas Objetivo
|
||||
|
||||
| Métrica | Valor Objetivo |
|
||||
|---------|----------------|
|
||||
| Módulos | 8 |
|
||||
| Tablas Específicas | ~25 |
|
||||
| Tablas Heredadas | ~97 |
|
||||
| Story Points Est. | ~200 |
|
||||
|
||||
---
|
||||
|
||||
## Referencias
|
||||
|
||||
- ERP Core: `apps/erp-core/`
|
||||
- Herencia DB: `database/HERENCIA-ERP-CORE.md`
|
||||
- SPECS del Core: `HERENCIA-SPECS-CORE.md`
|
||||
- Inventarios: `orchestration/inventarios/`
|
||||
|
||||
---
|
||||
|
||||
**Documento de visión oficial**
|
||||
**Última actualización:** 2025-12-08
|
||||
154
docs/02-definicion-modulos/INDICE-MODULOS.md
Normal file
154
docs/02-definicion-modulos/INDICE-MODULOS.md
Normal file
@ -0,0 +1,154 @@
|
||||
# Índice de Módulos - ERP Vidrio Templado
|
||||
|
||||
**Versión:** 1.0
|
||||
**Fecha:** 2025-12-08
|
||||
**Total Módulos:** 8
|
||||
|
||||
---
|
||||
|
||||
## Resumen
|
||||
|
||||
| Código | Nombre | Descripción | Reutilización Core | Estado |
|
||||
|--------|--------|-------------|-------------------|--------|
|
||||
| VT-001 | Fundamentos | Auth, Users, Tenants | 100% | PLANIFICADO |
|
||||
| VT-002 | Cotizaciones | Cotizador de vidrio | 30% | PLANIFICADO |
|
||||
| VT-003 | Producción | Órdenes de producción | 20% | PLANIFICADO |
|
||||
| VT-004 | Inventario | Stock de vidrio y materia prima | 70% | PLANIFICADO |
|
||||
| VT-005 | Corte | Optimización de corte | 0% | PLANIFICADO |
|
||||
| VT-006 | Templado | Control de hornos | 0% | PLANIFICADO |
|
||||
| VT-007 | Calidad | Control de calidad | 40% | PLANIFICADO |
|
||||
| VT-008 | Despacho | Logística y entregas | 50% | PLANIFICADO |
|
||||
|
||||
---
|
||||
|
||||
## Detalle por Módulo
|
||||
|
||||
### VT-001: Fundamentos
|
||||
|
||||
**Herencia:** 100% del core (MGN-001 a MGN-004)
|
||||
**Propósito:** Autenticación, usuarios, roles, multi-tenancy
|
||||
|
||||
- Usuarios del sistema (operadores, supervisores, gerentes)
|
||||
- Roles y permisos por planta
|
||||
- Multi-tenancy para franquicias
|
||||
|
||||
### VT-002: Cotizaciones
|
||||
|
||||
**Herencia:** 30% del core (sales)
|
||||
**Propósito:** Cotización de productos de vidrio
|
||||
|
||||
- Cotizador por dimensiones (alto × ancho)
|
||||
- Tipos de vidrio y espesores
|
||||
- Cálculo de precios por m²
|
||||
- Acabados y procesamientos adicionales
|
||||
- Generación de PDF para cliente
|
||||
|
||||
### VT-003: Producción
|
||||
|
||||
**Herencia:** 20% del core (projects)
|
||||
**Propósito:** Gestión de órdenes de producción
|
||||
|
||||
- Órdenes de producción
|
||||
- Estados: borrador → programado → corte → templado → QC → terminado
|
||||
- Asignación de recursos
|
||||
- Tiempos de producción
|
||||
|
||||
### VT-004: Inventario
|
||||
|
||||
**Herencia:** 70% del core (inventory)
|
||||
**Propósito:** Control de materia prima y producto terminado
|
||||
|
||||
- Láminas de vidrio (materia prima)
|
||||
- Control de lotes por proveedor
|
||||
- Producto terminado
|
||||
- Merma y desperdicio
|
||||
- Alertas de reorden
|
||||
|
||||
### VT-005: Corte
|
||||
|
||||
**Herencia:** 0% - Módulo nuevo
|
||||
**Propósito:** Optimización de corte de vidrio
|
||||
|
||||
- Algoritmo de nesting para optimizar cortes
|
||||
- Planes de corte
|
||||
- Reducción de desperdicio
|
||||
- Integración con máquinas CNC (futuro)
|
||||
|
||||
### VT-006: Templado
|
||||
|
||||
**Herencia:** 0% - Módulo nuevo
|
||||
**Propósito:** Control de hornos de templado
|
||||
|
||||
- Programación de hornos
|
||||
- Parámetros de templado (temperatura, tiempo, velocidad)
|
||||
- Registro de ciclos de templado
|
||||
- Mantenimiento preventivo de hornos
|
||||
|
||||
### VT-007: Calidad
|
||||
|
||||
**Herencia:** 40% del core (system)
|
||||
**Propósito:** Control de calidad
|
||||
|
||||
- Inspecciones de producto
|
||||
- Pruebas de fragmentación
|
||||
- No conformidades
|
||||
- Certificaciones de producto
|
||||
- Trazabilidad de defectos
|
||||
|
||||
### VT-008: Despacho
|
||||
|
||||
**Herencia:** 50% del core (inventory, sales)
|
||||
**Propósito:** Logística de entregas
|
||||
|
||||
- Programación de entregas
|
||||
- Rutas de entrega
|
||||
- Confirmación de recepción
|
||||
- Instalación (opcional)
|
||||
- Evidencia fotográfica
|
||||
|
||||
---
|
||||
|
||||
## Dependencias entre Módulos
|
||||
|
||||
```
|
||||
VT-001 (Fundamentos)
|
||||
↓
|
||||
VT-002 (Cotizaciones) ←→ VT-004 (Inventario)
|
||||
↓
|
||||
VT-003 (Producción)
|
||||
↓
|
||||
VT-005 (Corte) → VT-006 (Templado)
|
||||
↓
|
||||
VT-007 (Calidad)
|
||||
↓
|
||||
VT-008 (Despacho)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Story Points Estimados
|
||||
|
||||
| Módulo | SP Backend | SP Frontend | SP Total |
|
||||
|--------|-----------|-------------|----------|
|
||||
| VT-001 | 0 (hereda) | 0 (hereda) | 0 |
|
||||
| VT-002 | 21 | 13 | 34 |
|
||||
| VT-003 | 21 | 13 | 34 |
|
||||
| VT-004 | 13 | 8 | 21 |
|
||||
| VT-005 | 34 | 13 | 47 |
|
||||
| VT-006 | 21 | 13 | 34 |
|
||||
| VT-007 | 13 | 8 | 21 |
|
||||
| VT-008 | 13 | 8 | 21 |
|
||||
| **Total** | **136** | **76** | **212** |
|
||||
|
||||
---
|
||||
|
||||
## Referencias
|
||||
|
||||
- Documentación por módulo: `VT-XXX-nombre/README.md`
|
||||
- SPECS heredadas: `orchestration/00-guidelines/HERENCIA-SPECS-CORE.md`
|
||||
- Visión: `00-vision-general/VISION-VIDRIO.md`
|
||||
|
||||
---
|
||||
|
||||
**Índice de módulos oficial**
|
||||
**Última actualización:** 2025-12-08
|
||||
21
docs/02-definicion-modulos/VT-001-fundamentos/README.md
Normal file
21
docs/02-definicion-modulos/VT-001-fundamentos/README.md
Normal file
@ -0,0 +1,21 @@
|
||||
# VT-001: Fundamentos
|
||||
|
||||
**Módulo:** Fundamentos
|
||||
**Herencia:** 100% del ERP Core
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Módulo base que hereda completamente del ERP Core. Proporciona autenticación, gestión de usuarios, roles y multi-tenancy.
|
||||
|
||||
## Componentes Heredados
|
||||
- MGN-001: Auth (JWT, OAuth2, 2FA)
|
||||
- MGN-002: Users (CRUD, perfiles)
|
||||
- MGN-003: Roles (RBAC)
|
||||
- MGN-004: Tenants (Multi-tenancy, RLS)
|
||||
|
||||
## Configuración Específica
|
||||
- Roles por defecto: Operador, Supervisor, Gerente, Administrador
|
||||
- Permisos por módulo de vidrio
|
||||
|
||||
## Referencias
|
||||
- ERP Core: `apps/erp-core/`
|
||||
26
docs/02-definicion-modulos/VT-002-cotizaciones/README.md
Normal file
26
docs/02-definicion-modulos/VT-002-cotizaciones/README.md
Normal file
@ -0,0 +1,26 @@
|
||||
# VT-002: Cotizaciones
|
||||
|
||||
**Módulo:** Cotizaciones de Vidrio
|
||||
**Herencia:** 30% del ERP Core (sales)
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Cotizador especializado para productos de vidrio. Calcula precios por dimensiones, tipo de vidrio, espesor y acabados.
|
||||
|
||||
## Funcionalidades
|
||||
- Cotización por dimensiones (alto × ancho × espesor)
|
||||
- Catálogo de tipos de vidrio
|
||||
- Acabados y procesamientos adicionales
|
||||
- Cálculo automático de precios por m²
|
||||
- Generación de PDF
|
||||
- Conversión a orden de producción
|
||||
|
||||
## Entidades
|
||||
- `quotes.quotes` - Cotizaciones
|
||||
- `quotes.quote_lines` - Líneas de cotización
|
||||
- `quotes.glass_types` - Tipos de vidrio
|
||||
- `quotes.finishes` - Acabados disponibles
|
||||
|
||||
## SPECS Aplicables
|
||||
- SPEC-PRICING-RULES
|
||||
- SPEC-MAIL-THREAD-TRACKING
|
||||
33
docs/02-definicion-modulos/VT-003-produccion/README.md
Normal file
33
docs/02-definicion-modulos/VT-003-produccion/README.md
Normal file
@ -0,0 +1,33 @@
|
||||
# VT-003: Producción
|
||||
|
||||
**Módulo:** Órdenes de Producción
|
||||
**Herencia:** 20% del ERP Core (projects)
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Gestión de órdenes de producción desde la cotización aprobada hasta el producto terminado.
|
||||
|
||||
## Funcionalidades
|
||||
- Creación de órdenes desde cotizaciones
|
||||
- Estados de producción
|
||||
- Asignación de recursos
|
||||
- Programación de producción
|
||||
- Seguimiento de tiempos
|
||||
|
||||
## Estados del Flujo
|
||||
1. `draft` - Borrador
|
||||
2. `scheduled` - Programado
|
||||
3. `cutting` - En corte
|
||||
4. `tempering` - En templado
|
||||
5. `quality` - Control de calidad
|
||||
6. `done` - Terminado
|
||||
7. `delivered` - Entregado
|
||||
|
||||
## Entidades
|
||||
- `production.production_orders` - Órdenes de producción
|
||||
- `production.production_lines` - Líneas de horno
|
||||
- `production.work_orders` - Órdenes de trabajo
|
||||
|
||||
## SPECS Aplicables
|
||||
- SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN
|
||||
- SPEC-TAREAS-RECURRENTES
|
||||
27
docs/02-definicion-modulos/VT-004-inventario/README.md
Normal file
27
docs/02-definicion-modulos/VT-004-inventario/README.md
Normal file
@ -0,0 +1,27 @@
|
||||
# VT-004: Inventario
|
||||
|
||||
**Módulo:** Inventario de Vidrio
|
||||
**Herencia:** 70% del ERP Core (inventory)
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Control de materia prima (láminas de vidrio) y producto terminado con trazabilidad de lotes.
|
||||
|
||||
## Funcionalidades
|
||||
- Control de láminas de materia prima
|
||||
- Trazabilidad de lotes por proveedor
|
||||
- Producto terminado
|
||||
- Control de merma y desperdicio
|
||||
- Alertas de reorden
|
||||
- Valorización FIFO/AVCO
|
||||
|
||||
## Entidades
|
||||
- `glass.glass_inventory` - Inventario de vidrio
|
||||
- `glass.glass_lots` - Lotes de materia prima
|
||||
- `glass.raw_materials` - Láminas de vidrio
|
||||
- `glass.finished_products` - Producto terminado
|
||||
|
||||
## SPECS Aplicables
|
||||
- SPEC-VALORACION-INVENTARIO
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
- SPEC-INVENTARIOS-CICLICOS (opcional)
|
||||
26
docs/02-definicion-modulos/VT-005-corte/README.md
Normal file
26
docs/02-definicion-modulos/VT-005-corte/README.md
Normal file
@ -0,0 +1,26 @@
|
||||
# VT-005: Corte
|
||||
|
||||
**Módulo:** Optimización de Corte
|
||||
**Herencia:** 0% - Módulo nuevo
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Módulo especializado para optimización de cortes de vidrio (nesting) que minimiza el desperdicio de materia prima.
|
||||
|
||||
## Funcionalidades
|
||||
- Algoritmo de nesting para optimizar cortes
|
||||
- Planes de corte por lámina
|
||||
- Cálculo de desperdicio
|
||||
- Visualización de patrones de corte
|
||||
- Integración con CNC (futuro)
|
||||
- Histórico de eficiencia
|
||||
|
||||
## Entidades
|
||||
- `cutting.cutting_plans` - Planes de corte
|
||||
- `cutting.cutting_patterns` - Patrones optimizados
|
||||
- `cutting.waste_records` - Registro de desperdicio
|
||||
|
||||
## Algoritmos
|
||||
- First Fit Decreasing (FFD)
|
||||
- Guillotine cuts
|
||||
- Optimización por rotación de piezas
|
||||
28
docs/02-definicion-modulos/VT-006-templado/README.md
Normal file
28
docs/02-definicion-modulos/VT-006-templado/README.md
Normal file
@ -0,0 +1,28 @@
|
||||
# VT-006: Templado
|
||||
|
||||
**Módulo:** Control de Hornos
|
||||
**Herencia:** 0% - Módulo nuevo
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Control de hornos de templado con registro de parámetros y ciclos de producción.
|
||||
|
||||
## Funcionalidades
|
||||
- Programación de hornos
|
||||
- Registro de parámetros (temperatura, tiempo, velocidad)
|
||||
- Ciclos de templado por tipo de vidrio
|
||||
- Registro de logs de producción
|
||||
- Mantenimiento preventivo
|
||||
- Alertas de parámetros fuera de rango
|
||||
|
||||
## Entidades
|
||||
- `tempering.ovens` - Hornos de templado
|
||||
- `tempering.oven_schedules` - Programación
|
||||
- `tempering.tempering_cycles` - Ciclos de templado
|
||||
- `tempering.temperature_logs` - Logs de temperatura
|
||||
- `tempering.maintenance_records` - Mantenimientos
|
||||
|
||||
## Parámetros de Control
|
||||
- Temperatura de calentamiento: 620-720°C
|
||||
- Tiempo en horno: según espesor
|
||||
- Velocidad de enfriamiento: presión de aire
|
||||
28
docs/02-definicion-modulos/VT-007-calidad/README.md
Normal file
28
docs/02-definicion-modulos/VT-007-calidad/README.md
Normal file
@ -0,0 +1,28 @@
|
||||
# VT-007: Calidad
|
||||
|
||||
**Módulo:** Control de Calidad
|
||||
**Herencia:** 40% del ERP Core (system)
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Control de calidad para producto de vidrio templado, incluyendo inspecciones, pruebas de fragmentación y certificaciones.
|
||||
|
||||
## Funcionalidades
|
||||
- Inspecciones de producto
|
||||
- Pruebas de fragmentación (NMX-R-2-1989)
|
||||
- Registro de no conformidades
|
||||
- Certificaciones de producto
|
||||
- Trazabilidad de defectos
|
||||
- Reportes de calidad
|
||||
|
||||
## Entidades
|
||||
- `quality.inspections` - Inspecciones
|
||||
- `quality.fragmentation_tests` - Pruebas de fragmentación
|
||||
- `quality.non_conformities` - No conformidades
|
||||
- `quality.certifications` - Certificaciones
|
||||
- `quality.defect_types` - Tipos de defectos
|
||||
|
||||
## Criterios de Aceptación
|
||||
- Fragmentación: mín 40 partículas en 5×5cm
|
||||
- Defectos visuales: según tolerancias
|
||||
- Dimensiones: ±2mm
|
||||
31
docs/02-definicion-modulos/VT-008-despacho/README.md
Normal file
31
docs/02-definicion-modulos/VT-008-despacho/README.md
Normal file
@ -0,0 +1,31 @@
|
||||
# VT-008: Despacho
|
||||
|
||||
**Módulo:** Despacho y Logística
|
||||
**Herencia:** 50% del ERP Core (inventory, sales)
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
## Descripción
|
||||
Gestión de entregas de producto terminado, incluyendo rutas, confirmaciones y evidencia.
|
||||
|
||||
## Funcionalidades
|
||||
- Programación de entregas
|
||||
- Asignación de rutas
|
||||
- Confirmación de recepción
|
||||
- Evidencia fotográfica
|
||||
- Instalación (opcional)
|
||||
- Actas de entrega
|
||||
|
||||
## Entidades
|
||||
- `delivery.deliveries` - Entregas
|
||||
- `delivery.delivery_lines` - Líneas de entrega
|
||||
- `delivery.routes` - Rutas
|
||||
- `delivery.confirmations` - Confirmaciones
|
||||
- `delivery.installations` - Instalaciones
|
||||
|
||||
## Flujo de Entrega
|
||||
1. Programación de entrega
|
||||
2. Asignación de ruta y vehículo
|
||||
3. Carga de producto
|
||||
4. Entrega en sitio
|
||||
5. Confirmación con evidencia
|
||||
6. Cierre de entrega
|
||||
65
docs/08-epicas/EPIC-VT-001-fundamentos.md
Normal file
65
docs/08-epicas/EPIC-VT-001-fundamentos.md
Normal file
@ -0,0 +1,65 @@
|
||||
# Épica: Fundamentos del Sistema
|
||||
|
||||
**Código:** EPIC-VT-001
|
||||
**Módulos:** VT-001 a VT-002
|
||||
**Estado:** PLANIFICADO
|
||||
|
||||
---
|
||||
|
||||
## Descripción
|
||||
|
||||
Implementación de los módulos fundacionales del ERP Vidrio Templado, incluyendo la configuración inicial del sistema heredado del core y el módulo de cotizaciones.
|
||||
|
||||
---
|
||||
|
||||
## Objetivos
|
||||
|
||||
1. Configurar el ambiente de desarrollo heredando del ERP Core
|
||||
2. Implementar el cotizador de vidrio con cálculo por m²
|
||||
3. Establecer el catálogo de tipos de vidrio y acabados
|
||||
|
||||
---
|
||||
|
||||
## Módulos Incluidos
|
||||
|
||||
| Módulo | Descripción | SP Estimados |
|
||||
|--------|-------------|--------------|
|
||||
| VT-001 | Fundamentos (hereda core) | 0 |
|
||||
| VT-002 | Cotizaciones | 34 |
|
||||
|
||||
---
|
||||
|
||||
## User Stories Principales
|
||||
|
||||
1. Como usuario, quiero iniciar sesión en el sistema de vidrio templado
|
||||
2. Como vendedor, quiero crear una cotización de vidrio por dimensiones
|
||||
3. Como vendedor, quiero calcular el precio automático por m²
|
||||
4. Como vendedor, quiero generar un PDF de cotización para el cliente
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptación
|
||||
|
||||
- [ ] Sistema de autenticación funcional (heredado)
|
||||
- [ ] CRUD de cotizaciones implementado
|
||||
- [ ] Cálculo de precios por dimensiones correcto
|
||||
- [ ] Generación de PDF funcional
|
||||
- [ ] Catálogo de tipos de vidrio completo
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
- ERP Core instalado y funcional
|
||||
- Base de datos configurada con schemas heredados
|
||||
|
||||
---
|
||||
|
||||
## Story Points Totales
|
||||
|
||||
**34 SP** (excluyendo fundamentos heredados)
|
||||
|
||||
---
|
||||
|
||||
**Épica fundacional**
|
||||
**Última actualización:** 2025-12-08
|
||||
198
docs/08-epicas/EPIC-VT-002-cotizaciones.md
Normal file
198
docs/08-epicas/EPIC-VT-002-cotizaciones.md
Normal file
@ -0,0 +1,198 @@
|
||||
# EPICA: EPIC-VT-002 - Cotizaciones
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-002 |
|
||||
| **Nombre** | Cotizaciones |
|
||||
| **Modulo** | cotizaciones |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 34 |
|
||||
| **Sprint(s)** | Sprint 2-3 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Sistema de cotizaciones especializado para productos de vidrio. Permite calcular precios por dimensiones (alto x ancho x espesor), tipo de vidrio, acabados y procesamientos adicionales. Genera PDFs profesionales y permite conversión directa a órdenes de producción.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Reducir tiempo de cotización de 30 min a 5 min
|
||||
- Eliminar errores de cálculo manual de áreas
|
||||
- Estandarizar precios por tipo de vidrio y espesor
|
||||
- Mejorar presentación profesional con PDFs
|
||||
- Agilizar conversión de cotización a producción
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT002-001 | Como vendedor, quiero crear cotización ingresando dimensiones de piezas para calcular automáticamente el área en m² | P0 | 5 | Backlog |
|
||||
| US-VT002-002 | Como vendedor, quiero seleccionar tipo de vidrio y espesor de un catálogo para aplicar precio correcto | P0 | 3 | Backlog |
|
||||
| US-VT002-003 | Como vendedor, quiero agregar acabados (sandblast, grabado, bisel) para calcular costo adicional | P0 | 5 | Backlog |
|
||||
| US-VT002-004 | Como vendedor, quiero ver resumen de cotización con desglose de costos para revisar antes de enviar | P0 | 3 | Backlog |
|
||||
| US-VT002-005 | Como vendedor, quiero generar PDF de cotización con logo y datos fiscales para enviar al cliente | P0 | 5 | Backlog |
|
||||
| US-VT002-006 | Como vendedor, quiero enviar cotización por email al cliente para agilizar proceso | P1 | 3 | Backlog |
|
||||
| US-VT002-007 | Como jefe de ventas, quiero convertir cotización aprobada a orden de producción para iniciar fabricación | P0 | 5 | Backlog |
|
||||
| US-VT002-008 | Como admin, quiero configurar precios por tipo de vidrio y espesor para mantener lista actualizada | P0 | 3 | Backlog |
|
||||
| US-VT002-009 | Como admin, quiero definir márgenes de utilidad por cliente para aplicar descuentos automáticos | P2 | 2 | Backlog |
|
||||
|
||||
**Total Story Points:** 34 SP
|
||||
|
||||
---
|
||||
|
||||
## Flujo de Cotización
|
||||
|
||||
```
|
||||
┌─────────────┐
|
||||
│ BORRADOR │ ← Se inicia cotización
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ CALCULADA │ ← Áreas y precios calculados
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ ENVIADA │ ← Enviada a cliente
|
||||
└──────┬──────┘
|
||||
│
|
||||
├──────────────┐
|
||||
▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ APROBADA │ │ RECHAZADA │
|
||||
└──────┬──────┘ └─────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ CONVERTIDA │ ← Se genera orden de producción
|
||||
└─────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Crear cotización con cliente y datos de contacto
|
||||
- [ ] Agregar líneas con dimensiones (alto × ancho × espesor)
|
||||
- [ ] Calcular automáticamente área en m² y precio
|
||||
- [ ] Seleccionar tipo de vidrio de catálogo
|
||||
- [ ] Agregar acabados con precio adicional
|
||||
- [ ] Generar PDF profesional
|
||||
- [ ] Enviar por email
|
||||
- [ ] Convertir a orden de producción
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Cálculo de precio < 100ms
|
||||
- [ ] Generación PDF < 3 segundos
|
||||
- [ ] Soporte para cotizaciones de 50+ líneas
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con catálogo de vidrios
|
||||
- [ ] Integración con módulo de producción
|
||||
- [ ] Templates PDF configurables
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-003 Produccion | Requiere cotizaciones aprobadas |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `quotes`
|
||||
- [ ] Tablas: 5 (quotes, quote_lines, glass_types, finishes, prices)
|
||||
- [ ] Funciones: 2 (calculate_area, calculate_total)
|
||||
- [ ] Indices: Por cliente, fecha, estado
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `quotations`
|
||||
- [ ] Entities: 4 (Quote, QuoteLine, GlassType, Finish)
|
||||
- [ ] Endpoints: 12
|
||||
- [ ] Tests: 25
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 4 (QuotesList, QuoteCreate, QuoteDetail, QuotePDF)
|
||||
- [ ] Componentes: 10 (QuoteForm, LineEditor, PriceCalculator, etc.)
|
||||
- [ ] Stores: 1 (quotesStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| POST | /api/quotes | Crear cotización |
|
||||
| GET | /api/quotes | Listar cotizaciones (paginado) |
|
||||
| GET | /api/quotes/:id | Detalle de cotización |
|
||||
| PATCH | /api/quotes/:id | Actualizar cotización |
|
||||
| POST | /api/quotes/:id/lines | Agregar línea |
|
||||
| DELETE | /api/quotes/:id/lines/:lineId | Eliminar línea |
|
||||
| POST | /api/quotes/:id/calculate | Recalcular totales |
|
||||
| POST | /api/quotes/:id/send | Enviar por email |
|
||||
| POST | /api/quotes/:id/convert | Convertir a orden |
|
||||
| GET | /api/quotes/:id/pdf | Generar PDF |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Cálculos complejos de acabados | Media | Alto | Catálogo bien definido |
|
||||
| Precios desactualizados | Media | Medio | Validación al enviar |
|
||||
| PDFs no profesionales | Baja | Medio | Templates revisados |
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Catálogo de vidrios definido
|
||||
- [ ] Template PDF aprobado
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Flujo completo de cotización funcionando
|
||||
- [ ] Generación de PDFs correcta
|
||||
- [ ] Conversión a orden de producción
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
218
docs/08-epicas/EPIC-VT-003-produccion.md
Normal file
218
docs/08-epicas/EPIC-VT-003-produccion.md
Normal file
@ -0,0 +1,218 @@
|
||||
# EPICA: EPIC-VT-003 - Producción
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-003 |
|
||||
| **Nombre** | Producción |
|
||||
| **Modulo** | produccion |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 42 |
|
||||
| **Sprint(s)** | Sprint 4-5 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Gestión completa de órdenes de producción para vidrio templado. Controla el flujo desde la recepción del pedido hasta la entrega del producto terminado, pasando por corte, templado y control de calidad. Incluye planificación de capacidad y seguimiento en tiempo real.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Control total del proceso productivo
|
||||
- Reducir tiempos muertos entre etapas
|
||||
- Trazabilidad completa por lote
|
||||
- Optimizar uso de hornos de templado
|
||||
- Minimizar desperdicios de material
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT003-001 | Como jefe de producción, quiero crear orden de producción desde cotización aprobada para iniciar el proceso | P0 | 5 | Backlog |
|
||||
| US-VT003-002 | Como jefe de producción, quiero ver tablero de órdenes en proceso para supervisar producción | P0 | 5 | Backlog |
|
||||
| US-VT003-003 | Como operador de corte, quiero ver mis piezas asignadas del día para planificar trabajo | P0 | 3 | Backlog |
|
||||
| US-VT003-004 | Como operador de corte, quiero marcar piezas cortadas para avanzar a siguiente etapa | P0 | 3 | Backlog |
|
||||
| US-VT003-005 | Como operador de horno, quiero ver piezas listas para templado agrupadas por espesor | P0 | 5 | Backlog |
|
||||
| US-VT003-006 | Como operador de horno, quiero registrar lote de templado con temperatura y tiempo | P0 | 5 | Backlog |
|
||||
| US-VT003-007 | Como inspector de calidad, quiero registrar resultado de inspección para liberar producto | P0 | 5 | Backlog |
|
||||
| US-VT003-008 | Como jefe de producción, quiero ver métricas de producción diaria para medir eficiencia | P1 | 5 | Backlog |
|
||||
| US-VT003-009 | Como jefe de producción, quiero reprogramar orden para ajustar prioridades | P1 | 3 | Backlog |
|
||||
| US-VT003-010 | Como admin, quiero configurar estaciones de trabajo para asignar órdenes | P2 | 3 | Backlog |
|
||||
|
||||
**Total Story Points:** 42 SP
|
||||
|
||||
---
|
||||
|
||||
## Flujo de Producción
|
||||
|
||||
```
|
||||
┌─────────────┐
|
||||
│ PROGRAMADA │ ← Orden creada y programada
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_CORTE │ ← Piezas siendo cortadas
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ CORTADO │ ← Todas las piezas cortadas
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_TEMPLADO │ ← Piezas en horno
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ TEMPLADO │ ← Templado completado
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_QC │ ← Inspección de calidad
|
||||
└──────┬──────┘
|
||||
│
|
||||
├──────────────┐
|
||||
▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ APROBADO │ │ RECHAZADO │
|
||||
└──────┬──────┘ └──────┬──────┘
|
||||
│ │
|
||||
▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ LISTO_ENVIO │ │ REPROCESO │
|
||||
└─────────────┘ └─────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Crear orden desde cotización aprobada
|
||||
- [ ] Asignar a línea de producción
|
||||
- [ ] Registrar avance por etapa (corte, templado, QC)
|
||||
- [ ] Registrar parámetros de templado (temp, tiempo)
|
||||
- [ ] Registrar resultados de QC
|
||||
- [ ] Gestionar reprocesos
|
||||
- [ ] Dashboard de producción en tiempo real
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Actualización de tablero < 5 segundos
|
||||
- [ ] Soporte para 100+ órdenes activas
|
||||
- [ ] Registro de etapas en < 3 clicks
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con módulo de corte (nesting)
|
||||
- [ ] Integración con módulo de templado (hornos)
|
||||
- [ ] Integración con módulo de calidad
|
||||
- [ ] Alertas de órdenes atrasadas
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
| EPIC-VT-002 Cotizaciones | Backlog | Si |
|
||||
| EPIC-VT-004 Inventario | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-005 Corte | Requiere órdenes de producción |
|
||||
| EPIC-VT-006 Templado | Requiere órdenes de producción |
|
||||
| EPIC-VT-007 Calidad | Requiere órdenes de producción |
|
||||
| EPIC-VT-008 Despacho | Requiere producción completada |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `production`
|
||||
- [ ] Tablas: 8 (production_orders, order_items, stages, stage_logs, workstations, etc.)
|
||||
- [ ] Funciones: 4 (advance_stage, calculate_times, etc.)
|
||||
- [ ] Indices: Por orden, fecha, etapa, estación
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `production`
|
||||
- [ ] Entities: 6 (ProductionOrder, OrderItem, Stage, StageLog, Workstation)
|
||||
- [ ] Endpoints: 18
|
||||
- [ ] Tests: 35
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 5 (ProductionBoard, OrderDetail, StageTracker, Metrics, Config)
|
||||
- [ ] Componentes: 15 (OrderCard, StageProgress, WorkstationSelector, etc.)
|
||||
- [ ] Stores: 2 (productionStore, workstationsStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| POST | /api/production/orders | Crear orden de producción |
|
||||
| GET | /api/production/orders | Listar órdenes |
|
||||
| GET | /api/production/orders/:id | Detalle de orden |
|
||||
| PATCH | /api/production/orders/:id | Actualizar orden |
|
||||
| POST | /api/production/orders/:id/advance | Avanzar etapa |
|
||||
| POST | /api/production/orders/:id/assign | Asignar a estación |
|
||||
| GET | /api/production/board | Tablero de producción |
|
||||
| GET | /api/production/metrics | Métricas de producción |
|
||||
| GET | /api/workstations | Listar estaciones |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Cuellos de botella en templado | Alta | Alto | Planificación por capacidad de hornos |
|
||||
| Pérdida de trazabilidad | Media | Alto | Registro obligatorio por etapa |
|
||||
| Reprocesos no controlados | Media | Medio | Flujo de reproceso definido |
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Flujo de etapas aprobado
|
||||
- [ ] Estaciones de trabajo definidas
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Flujo completo de producción funcionando
|
||||
- [ ] Tablero en tiempo real operativo
|
||||
- [ ] Trazabilidad por lote implementada
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
188
docs/08-epicas/EPIC-VT-004-inventario.md
Normal file
188
docs/08-epicas/EPIC-VT-004-inventario.md
Normal file
@ -0,0 +1,188 @@
|
||||
# EPICA: EPIC-VT-004 - Inventario
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-004 |
|
||||
| **Nombre** | Inventario |
|
||||
| **Modulo** | inventario |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 38 |
|
||||
| **Sprint(s)** | Sprint 3-4 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Control de inventario especializado para materia prima de vidrio. Gestiona láminas de vidrio por tipo, espesor y dimensiones, incluyendo trazabilidad de lotes y control de desperdicio. Integra con el módulo de corte para optimizar uso de material.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Control preciso de existencias de vidrio
|
||||
- Trazabilidad de lotes para garantías
|
||||
- Minimizar desperdicio de material
|
||||
- Alertas de reabastecimiento oportunas
|
||||
- Valorización correcta de inventario
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT004-001 | Como almacenista, quiero registrar entrada de láminas de vidrio con lote y proveedor | P0 | 5 | Backlog |
|
||||
| US-VT004-002 | Como almacenista, quiero consultar stock disponible por tipo y espesor de vidrio | P0 | 3 | Backlog |
|
||||
| US-VT004-003 | Como operador de corte, quiero reservar lámina específica para orden de producción | P0 | 5 | Backlog |
|
||||
| US-VT004-004 | Como operador de corte, quiero registrar consumo de lámina con desperdicio generado | P0 | 5 | Backlog |
|
||||
| US-VT004-005 | Como almacenista, quiero ver alertas de stock mínimo para generar pedidos | P0 | 3 | Backlog |
|
||||
| US-VT004-006 | Como admin, quiero definir stock mínimo por tipo de vidrio para configurar alertas | P0 | 2 | Backlog |
|
||||
| US-VT004-007 | Como contador, quiero ver valorización de inventario por método PEPS/UEPS | P1 | 5 | Backlog |
|
||||
| US-VT004-008 | Como almacenista, quiero realizar inventario físico y ajustar diferencias | P1 | 5 | Backlog |
|
||||
| US-VT004-009 | Como jefe de producción, quiero ver kardex de movimientos por lámina | P1 | 3 | Backlog |
|
||||
| US-VT004-010 | Como admin, quiero configurar ubicaciones de almacén para localizar material | P2 | 2 | Backlog |
|
||||
|
||||
**Total Story Points:** 38 SP
|
||||
|
||||
---
|
||||
|
||||
## Tipos de Movimiento
|
||||
|
||||
```
|
||||
ENTRADA
|
||||
├── Compra a proveedor
|
||||
├── Devolución de producción
|
||||
└── Ajuste positivo
|
||||
|
||||
SALIDA
|
||||
├── Consumo en producción
|
||||
├── Desperdicio
|
||||
├── Ajuste negativo
|
||||
└── Baja por rotura
|
||||
|
||||
TRANSFERENCIA
|
||||
└── Entre ubicaciones
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Registrar entradas con lote, proveedor, dimensiones
|
||||
- [ ] Consultar stock por tipo, espesor, ubicación
|
||||
- [ ] Reservar material para producción
|
||||
- [ ] Registrar consumos y desperdicios
|
||||
- [ ] Alertas de stock mínimo
|
||||
- [ ] Kardex de movimientos
|
||||
- [ ] Valorización PEPS/UEPS
|
||||
- [ ] Inventario físico con ajustes
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Consulta de stock < 500ms
|
||||
- [ ] Soporte para 1000+ láminas
|
||||
- [ ] Historial de 2 años de movimientos
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con módulo de corte
|
||||
- [ ] Integración con módulo de compras
|
||||
- [ ] Reportes de inventario
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-003 Produccion | Requiere material disponible |
|
||||
| EPIC-VT-005 Corte | Requiere láminas para cortar |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `inventory`
|
||||
- [ ] Tablas: 7 (glass_sheets, stock_movements, lots, locations, reservations, etc.)
|
||||
- [ ] Funciones: 3 (update_stock, calculate_value, reserve_sheet)
|
||||
- [ ] Indices: Por tipo, espesor, ubicación, lote
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `inventory`
|
||||
- [ ] Entities: 5 (GlassSheet, StockMovement, Lot, Location, Reservation)
|
||||
- [ ] Endpoints: 15
|
||||
- [ ] Tests: 30
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 5 (StockList, SheetDetail, Movements, PhysicalCount, Reports)
|
||||
- [ ] Componentes: 12 (StockCard, MovementForm, ReservationModal, etc.)
|
||||
- [ ] Stores: 1 (inventoryStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| GET | /api/inventory/stock | Consultar stock |
|
||||
| POST | /api/inventory/entries | Registrar entrada |
|
||||
| POST | /api/inventory/exits | Registrar salida |
|
||||
| POST | /api/inventory/reservations | Crear reservación |
|
||||
| DELETE | /api/inventory/reservations/:id | Cancelar reservación |
|
||||
| GET | /api/inventory/kardex/:sheetId | Kardex de lámina |
|
||||
| GET | /api/inventory/valuation | Valorización |
|
||||
| POST | /api/inventory/physical-count | Inventario físico |
|
||||
| GET | /api/inventory/alerts | Alertas de stock |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Discrepancias de inventario | Alta | Alto | Inventarios frecuentes |
|
||||
| Lotes no trazables | Media | Alto | Registro obligatorio de lote |
|
||||
| Desperdicio no registrado | Media | Medio | Validación en corte |
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Catálogo de tipos de vidrio definido
|
||||
- [ ] Ubicaciones de almacén mapeadas
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Entradas y salidas funcionando
|
||||
- [ ] Kardex completo por lámina
|
||||
- [ ] Alertas de stock operativas
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
210
docs/08-epicas/EPIC-VT-005-corte.md
Normal file
210
docs/08-epicas/EPIC-VT-005-corte.md
Normal file
@ -0,0 +1,210 @@
|
||||
# EPICA: EPIC-VT-005 - Corte (Nesting)
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-005 |
|
||||
| **Nombre** | Corte (Nesting) |
|
||||
| **Modulo** | corte |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 45 |
|
||||
| **Sprint(s)** | Sprint 5-6 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Módulo 100% nuevo especializado en optimización de corte de vidrio. Implementa algoritmos de nesting para maximizar aprovechamiento de láminas, minimizando desperdicio. Incluye visualización gráfica del plan de corte y gestión de retazos aprovechables.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Reducir desperdicio de material en 20-30%
|
||||
- Optimizar uso de láminas completas
|
||||
- Aprovechar retazos para piezas pequeñas
|
||||
- Reducir tiempo de planificación de corte
|
||||
- Trazabilidad de material por pieza
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT005-001 | Como planificador, quiero generar plan de corte automático que minimice desperdicio | P0 | 13 | Backlog |
|
||||
| US-VT005-002 | Como planificador, quiero visualizar gráficamente el plan de corte para validarlo | P0 | 8 | Backlog |
|
||||
| US-VT005-003 | Como planificador, quiero ajustar manualmente posición de piezas en lámina para optimizar | P1 | 5 | Backlog |
|
||||
| US-VT005-004 | Como operador de corte, quiero ver plan de corte en pantalla junto a mesa para ejecutar | P0 | 3 | Backlog |
|
||||
| US-VT005-005 | Como operador de corte, quiero marcar piezas cortadas para registrar avance | P0 | 3 | Backlog |
|
||||
| US-VT005-006 | Como almacenista, quiero registrar retazos aprovechables para reutilizar | P0 | 3 | Backlog |
|
||||
| US-VT005-007 | Como planificador, quiero incluir retazos disponibles en plan de corte para aprovecharlos | P1 | 5 | Backlog |
|
||||
| US-VT005-008 | Como jefe de producción, quiero ver métricas de desperdicio por lámina para medir eficiencia | P1 | 3 | Backlog |
|
||||
| US-VT005-009 | Como admin, quiero configurar margen de corte (kerf) por tipo de máquina | P2 | 2 | Backlog |
|
||||
|
||||
**Total Story Points:** 45 SP
|
||||
|
||||
---
|
||||
|
||||
## Algoritmo de Nesting
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────┐
|
||||
│ LÁMINA 2440 x 1830 mm │
|
||||
│ ┌──────────────┐ ┌──────────────┐ ┌────────┐ │
|
||||
│ │ │ │ │ │ │ │
|
||||
│ │ Pieza 1 │ │ Pieza 2 │ │ P3 │ │
|
||||
│ │ 800x600 │ │ 700x500 │ │ 400x │ │
|
||||
│ │ │ │ │ │ 500 │ │
|
||||
│ └──────────────┘ └──────────────┘ └────────┘ │
|
||||
│ ┌──────────────┐ ┌─────────┐ ┌──────────────┐ │
|
||||
│ │ │ │ │ │ │ │
|
||||
│ │ Pieza 4 │ │ P5 │ │ RETAZO │ │
|
||||
│ │ 600x400 │ │ 300x │ │ Aprovechable│ │
|
||||
│ │ │ │ 400 │ │ │ │
|
||||
│ └──────────────┘ └─────────┘ └──────────────┘ │
|
||||
│ ┌────────────────────────────────────────────┐ │
|
||||
│ │ DESPERDICIO (no aprovechable) │ │
|
||||
│ └────────────────────────────────────────────┘ │
|
||||
└─────────────────────────────────────────────────┘
|
||||
|
||||
Aprovechamiento: 87%
|
||||
Retazo: 8%
|
||||
Desperdicio: 5%
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Generar plan de corte automático (algoritmo bin packing)
|
||||
- [ ] Visualización gráfica del plan de corte
|
||||
- [ ] Edición manual de posiciones
|
||||
- [ ] Considerar margen de corte (kerf)
|
||||
- [ ] Registro de retazos aprovechables
|
||||
- [ ] Inclusión de retazos en planes
|
||||
- [ ] Métricas de aprovechamiento
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Generación de plan < 10 segundos para 50 piezas
|
||||
- [ ] Aprovechamiento mínimo 80%
|
||||
- [ ] Visualización responsive para pantallas de planta
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Algoritmo de nesting (bin packing 2D)
|
||||
- [ ] Integración con inventario
|
||||
- [ ] Integración con producción
|
||||
- [ ] Canvas/SVG para visualización
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
| EPIC-VT-003 Produccion | Backlog | Si |
|
||||
| EPIC-VT-004 Inventario | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-006 Templado | Requiere piezas cortadas |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `cutting`
|
||||
- [ ] Tablas: 5 (cutting_plans, plan_pieces, remnants, machines, cut_logs)
|
||||
- [ ] Funciones: 2 (calculate_waste, register_remnant)
|
||||
- [ ] Indices: Por lámina, orden, estado
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `cutting`
|
||||
- [ ] Entities: 4 (CuttingPlan, PlanPiece, Remnant, CutLog)
|
||||
- [ ] Services: NestingService (algoritmo)
|
||||
- [ ] Endpoints: 12
|
||||
- [ ] Tests: 25
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 3 (CuttingPlans, PlanViewer, Remnants)
|
||||
- [ ] Componentes: 10 (CuttingCanvas, PieceEditor, WasteMetrics, etc.)
|
||||
- [ ] Stores: 1 (cuttingStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| POST | /api/cutting/plans | Crear plan de corte |
|
||||
| GET | /api/cutting/plans/:id | Ver plan de corte |
|
||||
| POST | /api/cutting/plans/:id/optimize | Ejecutar nesting |
|
||||
| PATCH | /api/cutting/plans/:id/pieces | Ajustar posiciones |
|
||||
| POST | /api/cutting/plans/:id/execute | Ejecutar corte |
|
||||
| POST | /api/cutting/plans/:id/pieces/:pieceId/cut | Marcar pieza cortada |
|
||||
| GET | /api/cutting/remnants | Listar retazos |
|
||||
| POST | /api/cutting/remnants | Registrar retazo |
|
||||
| GET | /api/cutting/metrics | Métricas de desperdicio |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Algoritmo no óptimo | Media | Alto | Benchmarks vs soluciones comerciales |
|
||||
| Rotación incorrecta de piezas | Media | Medio | Considerar dirección del vidrio |
|
||||
| Retazos no aprovechados | Alta | Medio | Alertas de retazos disponibles |
|
||||
|
||||
---
|
||||
|
||||
## Nota Técnica
|
||||
|
||||
Este módulo es **100% nuevo** y no tiene equivalente en el ERP-Core. El algoritmo de nesting es específico para la industria del vidrio y debe considerar:
|
||||
|
||||
- Dirección del vidrio (no todas las piezas pueden rotar)
|
||||
- Margen de corte (kerf) variable por máquina
|
||||
- Dimensiones máximas de láminas estándar
|
||||
- Retazos mínimos aprovechables
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Investigación de algoritmos de nesting
|
||||
- [ ] Definición de tamaño mínimo de retazo
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Algoritmo de nesting funcionando
|
||||
- [ ] Visualización gráfica de planes
|
||||
- [ ] Registro de retazos operativo
|
||||
- [ ] Métricas de aprovechamiento
|
||||
- [ ] Tests de algoritmo
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
249
docs/08-epicas/EPIC-VT-006-templado.md
Normal file
249
docs/08-epicas/EPIC-VT-006-templado.md
Normal file
@ -0,0 +1,249 @@
|
||||
# EPICA: EPIC-VT-006 - Templado (Control de Hornos)
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-006 |
|
||||
| **Nombre** | Templado (Control de Hornos) |
|
||||
| **Modulo** | templado |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 40 |
|
||||
| **Sprint(s)** | Sprint 6-7 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Módulo 100% nuevo para control del proceso de templado de vidrio. Gestiona hornos de templado, registra parámetros críticos (temperatura, tiempo, presión de aire), agrupa piezas por espesor para optimizar cargas y mantiene historial para trazabilidad de calidad.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Control preciso del proceso de templado
|
||||
- Trazabilidad de parámetros por lote
|
||||
- Optimizar cargas de horno por espesor
|
||||
- Reducir rechazos por mal templado
|
||||
- Cumplimiento de normas de calidad
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT006-001 | Como operador de horno, quiero ver piezas cortadas agrupadas por espesor para planificar carga | P0 | 5 | Backlog |
|
||||
| US-VT006-002 | Como operador de horno, quiero crear lote de templado seleccionando piezas compatibles | P0 | 5 | Backlog |
|
||||
| US-VT006-003 | Como operador de horno, quiero registrar parámetros de templado (temp, tiempo, presión) | P0 | 5 | Backlog |
|
||||
| US-VT006-004 | Como operador de horno, quiero ver receta recomendada según espesor del vidrio | P0 | 3 | Backlog |
|
||||
| US-VT006-005 | Como operador de horno, quiero marcar lote como templado para avanzar a QC | P0 | 3 | Backlog |
|
||||
| US-VT006-006 | Como jefe de producción, quiero ver estado de hornos en tiempo real | P0 | 5 | Backlog |
|
||||
| US-VT006-007 | Como jefe de producción, quiero ver métricas de uso de hornos para medir eficiencia | P1 | 5 | Backlog |
|
||||
| US-VT006-008 | Como admin, quiero configurar hornos disponibles con sus capacidades | P0 | 3 | Backlog |
|
||||
| US-VT006-009 | Como admin, quiero definir recetas de templado por espesor de vidrio | P0 | 3 | Backlog |
|
||||
| US-VT006-010 | Como mantenimiento, quiero registrar mantenimientos de horno para historial | P2 | 3 | Backlog |
|
||||
|
||||
**Total Story Points:** 40 SP
|
||||
|
||||
---
|
||||
|
||||
## Proceso de Templado
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ HORNO DE TEMPLADO │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ │
|
||||
│ ZONA DE CALENTAMIENTO ZONA DE ENFRIAMIENTO │
|
||||
│ ┌─────────────────────┐ ┌─────────────────────┐ │
|
||||
│ │ │ │ │ │
|
||||
│ │ 680-720°C │ ───► │ Aire a presión │ │
|
||||
│ │ (según espesor) │ │ (quenching) │ │
|
||||
│ │ │ │ │ │
|
||||
│ └─────────────────────┘ └─────────────────────┘ │
|
||||
│ │
|
||||
│ Tiempo: 40-120 seg Presión: 3-5 bar │
|
||||
│ (según espesor) (según espesor) │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
|
||||
Recetas por espesor:
|
||||
- 4mm: 680°C, 40 seg, 3.5 bar
|
||||
- 6mm: 690°C, 60 seg, 4.0 bar
|
||||
- 8mm: 700°C, 80 seg, 4.5 bar
|
||||
- 10mm: 710°C, 100 seg, 5.0 bar
|
||||
- 12mm: 720°C, 120 seg, 5.0 bar
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Estados de Lote de Templado
|
||||
|
||||
```
|
||||
┌─────────────┐
|
||||
│ PREPARANDO │ ← Seleccionando piezas
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ CARGANDO │ ← Piezas entrando al horno
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_PROCESO │ ← Templado en curso
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ ENFRIANDO │ ← Quenching activo
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ DESCARGANDO │ ← Retirando piezas
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ COMPLETADO │ ← Listo para QC
|
||||
└─────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Ver piezas pendientes agrupadas por espesor
|
||||
- [ ] Crear lote de templado con piezas seleccionadas
|
||||
- [ ] Registrar parámetros reales (temp, tiempo, presión)
|
||||
- [ ] Ver receta recomendada según espesor
|
||||
- [ ] Dashboard de hornos en tiempo real
|
||||
- [ ] Métricas de uso y eficiencia
|
||||
- [ ] Configuración de hornos y recetas
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Actualización de estado < 5 segundos
|
||||
- [ ] Historial de 1 año de lotes
|
||||
- [ ] Soporte para 5+ hornos simultáneos
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con módulo de producción
|
||||
- [ ] Integración con módulo de calidad
|
||||
- [ ] Alertas de desviación de parámetros
|
||||
- [ ] Opcional: IoT para lectura automática
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
| EPIC-VT-003 Produccion | Backlog | Si |
|
||||
| EPIC-VT-005 Corte | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-007 Calidad | Requiere piezas templadas |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `tempering`
|
||||
- [ ] Tablas: 6 (ovens, tempering_batches, batch_pieces, recipes, parameters_log, maintenance)
|
||||
- [ ] Funciones: 2 (validate_parameters, calculate_efficiency)
|
||||
- [ ] Indices: Por horno, lote, fecha, estado
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `tempering`
|
||||
- [ ] Entities: 5 (Oven, TemperingBatch, BatchPiece, Recipe, ParametersLog)
|
||||
- [ ] Endpoints: 14
|
||||
- [ ] Tests: 28
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 4 (OvensDashboard, BatchCreate, BatchDetail, OvenConfig)
|
||||
- [ ] Componentes: 12 (OvenStatus, BatchForm, ParametersInput, RecipeCard, etc.)
|
||||
- [ ] Stores: 1 (temperingStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| GET | /api/tempering/ovens | Listar hornos |
|
||||
| GET | /api/tempering/ovens/:id | Estado de horno |
|
||||
| POST | /api/tempering/batches | Crear lote |
|
||||
| GET | /api/tempering/batches/:id | Detalle de lote |
|
||||
| POST | /api/tempering/batches/:id/start | Iniciar templado |
|
||||
| POST | /api/tempering/batches/:id/parameters | Registrar parámetros |
|
||||
| POST | /api/tempering/batches/:id/complete | Completar templado |
|
||||
| GET | /api/tempering/recipes | Listar recetas |
|
||||
| POST | /api/tempering/recipes | Crear receta |
|
||||
| GET | /api/tempering/metrics | Métricas de hornos |
|
||||
| GET | /api/tempering/pending | Piezas pendientes de templar |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Parámetros fuera de rango | Media | Alto | Alertas en tiempo real |
|
||||
| Mezcla de espesores | Baja | Alto | Validación al crear lote |
|
||||
| Horno sobrecargado | Media | Medio | Límite de capacidad por horno |
|
||||
|
||||
---
|
||||
|
||||
## Nota Técnica
|
||||
|
||||
Este módulo es **100% nuevo** y no tiene equivalente en el ERP-Core. Es específico para la industria del vidrio templado y debe considerar:
|
||||
|
||||
- Recetas de templado específicas por espesor
|
||||
- No mezclar espesores en un mismo lote
|
||||
- Parámetros críticos: temperatura, tiempo, presión de quenching
|
||||
- Trazabilidad para certificaciones de calidad
|
||||
- Potencial integración IoT con sensores del horno
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Recetas de templado validadas con producción
|
||||
- [ ] Hornos y capacidades documentados
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Gestión de lotes funcionando
|
||||
- [ ] Registro de parámetros operativo
|
||||
- [ ] Dashboard de hornos en tiempo real
|
||||
- [ ] Recetas configurables
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
227
docs/08-epicas/EPIC-VT-007-calidad.md
Normal file
227
docs/08-epicas/EPIC-VT-007-calidad.md
Normal file
@ -0,0 +1,227 @@
|
||||
# EPICA: EPIC-VT-007 - Calidad (QC)
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-007 |
|
||||
| **Nombre** | Calidad (QC) |
|
||||
| **Modulo** | calidad |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 32 |
|
||||
| **Sprint(s)** | Sprint 7-8 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Control de calidad especializado para vidrio templado. Incluye inspección visual, pruebas de fragmentación, medición de tensión superficial y generación de certificados de calidad. Gestiona rechazos y reprocesos con trazabilidad completa.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Garantizar calidad del producto
|
||||
- Cumplir normativas de seguridad (NOM, ASTM, EN)
|
||||
- Reducir rechazos y devoluciones
|
||||
- Trazabilidad para garantías
|
||||
- Certificación de lotes
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT007-001 | Como inspector, quiero ver piezas templadas pendientes de inspección para planificar trabajo | P0 | 3 | Backlog |
|
||||
| US-VT007-002 | Como inspector, quiero registrar inspección visual con lista de defectos para documentar | P0 | 5 | Backlog |
|
||||
| US-VT007-003 | Como inspector, quiero registrar resultado de prueba de fragmentación para certificar templado | P0 | 5 | Backlog |
|
||||
| US-VT007-004 | Como inspector, quiero adjuntar fotos de defectos para evidencia | P0 | 3 | Backlog |
|
||||
| US-VT007-005 | Como inspector, quiero aprobar o rechazar pieza para liberar a despacho o reproceso | P0 | 3 | Backlog |
|
||||
| US-VT007-006 | Como jefe de calidad, quiero generar certificado de calidad por lote para entregar al cliente | P0 | 5 | Backlog |
|
||||
| US-VT007-007 | Como jefe de calidad, quiero ver métricas de rechazos para identificar problemas | P1 | 3 | Backlog |
|
||||
| US-VT007-008 | Como jefe de producción, quiero ver piezas rechazadas para programar reproceso | P1 | 3 | Backlog |
|
||||
| US-VT007-009 | Como admin, quiero configurar tipos de defectos y criterios de aceptación | P2 | 2 | Backlog |
|
||||
|
||||
**Total Story Points:** 32 SP
|
||||
|
||||
---
|
||||
|
||||
## Pruebas de Calidad
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ INSPECCIÓN DE VIDRIO TEMPLADO │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ │
|
||||
│ 1. INSPECCIÓN VISUAL │
|
||||
│ ├── Rayaduras │
|
||||
│ ├── Burbujas │
|
||||
│ ├── Manchas │
|
||||
│ ├── Ondulaciones │
|
||||
│ └── Dimensiones correctas │
|
||||
│ │
|
||||
│ 2. PRUEBA DE FRAGMENTACIÓN (destructiva - muestreo) │
|
||||
│ ├── Mínimo 40 fragmentos por 50mm² │
|
||||
│ ├── Sin fragmentos mayores a 100mm² │
|
||||
│ └── Patrón uniforme │
|
||||
│ │
|
||||
│ 3. MEDICIÓN DE TENSIÓN (opcional - no destructiva) │
|
||||
│ ├── Tensión superficial: 95-120 MPa │
|
||||
│ └── Tensión central: < 7 MPa │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
|
||||
Resultado: APROBADO / RECHAZADO / REPROCESO
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Flujo de Inspección
|
||||
|
||||
```
|
||||
┌─────────────┐
|
||||
│ PENDIENTE │ ← Pieza llega de templado
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_INSPECC │ ← Inspector revisando
|
||||
└──────┬──────┘
|
||||
│
|
||||
├────────────────┬────────────────┐
|
||||
▼ ▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||||
│ APROBADA │ │ RECHAZADA │ │ REPROCESO │
|
||||
└──────┬──────┘ └──────┬──────┘ └──────┬──────┘
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||||
│ A_DESPACHO │ │ BAJA │ │ A_CORTE │
|
||||
└─────────────┘ └─────────────┘ └─────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Ver piezas pendientes de inspección
|
||||
- [ ] Registrar inspección visual con checklist de defectos
|
||||
- [ ] Registrar prueba de fragmentación
|
||||
- [ ] Adjuntar fotos de evidencia
|
||||
- [ ] Aprobar/rechazar con motivo
|
||||
- [ ] Generar certificado de calidad PDF
|
||||
- [ ] Métricas de rechazos por tipo de defecto
|
||||
- [ ] Gestión de reprocesos
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Registro de inspección < 2 minutos
|
||||
- [ ] Generación de certificado < 5 segundos
|
||||
- [ ] Historial de 2 años de inspecciones
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con módulo de templado
|
||||
- [ ] Integración con módulo de despacho
|
||||
- [ ] Almacenamiento de fotos
|
||||
- [ ] Templates de certificados configurables
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
| EPIC-VT-003 Produccion | Backlog | Si |
|
||||
| EPIC-VT-006 Templado | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| EPIC-VT-008 Despacho | Requiere piezas aprobadas |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `quality`
|
||||
- [ ] Tablas: 6 (inspections, inspection_defects, fragmentation_tests, certificates, defect_types, photos)
|
||||
- [ ] Funciones: 2 (generate_certificate_number, calculate_rejection_rate)
|
||||
- [ ] Indices: Por pieza, lote, fecha, resultado
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `quality`
|
||||
- [ ] Entities: 5 (Inspection, InspectionDefect, FragmentationTest, Certificate, DefectType)
|
||||
- [ ] Endpoints: 12
|
||||
- [ ] Tests: 24
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 4 (InspectionQueue, InspectionForm, Certificates, Metrics)
|
||||
- [ ] Componentes: 10 (DefectChecklist, PhotoUploader, CertificateViewer, etc.)
|
||||
- [ ] Stores: 1 (qualityStore)
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| GET | /api/quality/pending | Piezas pendientes de inspección |
|
||||
| POST | /api/quality/inspections | Crear inspección |
|
||||
| GET | /api/quality/inspections/:id | Detalle de inspección |
|
||||
| POST | /api/quality/inspections/:id/defects | Agregar defecto |
|
||||
| POST | /api/quality/inspections/:id/photos | Subir foto |
|
||||
| POST | /api/quality/inspections/:id/approve | Aprobar pieza |
|
||||
| POST | /api/quality/inspections/:id/reject | Rechazar pieza |
|
||||
| POST | /api/quality/certificates | Generar certificado |
|
||||
| GET | /api/quality/certificates/:id/pdf | Descargar certificado PDF |
|
||||
| GET | /api/quality/metrics | Métricas de calidad |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Inspección superficial | Media | Alto | Checklist obligatorio |
|
||||
| Pérdida de trazabilidad | Baja | Alto | Registro por pieza individual |
|
||||
| Certificados incorrectos | Baja | Alto | Validación de datos antes de generar |
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Tipos de defectos definidos
|
||||
- [ ] Template de certificado aprobado
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Flujo de inspección funcionando
|
||||
- [ ] Generación de certificados operativa
|
||||
- [ ] Fotos de evidencia almacenadas
|
||||
- [ ] Métricas de rechazos disponibles
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
233
docs/08-epicas/EPIC-VT-008-despacho.md
Normal file
233
docs/08-epicas/EPIC-VT-008-despacho.md
Normal file
@ -0,0 +1,233 @@
|
||||
# EPICA: EPIC-VT-008 - Despacho
|
||||
|
||||
## Metadata
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **ID** | EPIC-VT-008 |
|
||||
| **Nombre** | Despacho |
|
||||
| **Modulo** | despacho |
|
||||
| **Fase** | Fase 1 - MVP |
|
||||
| **Prioridad** | P0 (Critico) |
|
||||
| **Estado** | Backlog |
|
||||
| **Story Points** | 28 |
|
||||
| **Sprint(s)** | Sprint 8-9 |
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Gestión de entregas y logística de vidrio templado. Controla la preparación de pedidos, embalaje especial para vidrio, programación de rutas de entrega y confirmación de entregas. Incluye generación de remisiones y control de transportistas.
|
||||
|
||||
---
|
||||
|
||||
## Objetivo de Negocio
|
||||
|
||||
- Entregas puntuales y sin daños
|
||||
- Optimizar rutas de entrega
|
||||
- Reducir costos de transporte
|
||||
- Trazabilidad de entregas
|
||||
- Control de devoluciones por daño
|
||||
|
||||
---
|
||||
|
||||
## Historias de Usuario
|
||||
|
||||
| ID | Historia | Prioridad | SP | Estado |
|
||||
|----|----------|-----------|-----|--------|
|
||||
| US-VT008-001 | Como despachador, quiero ver órdenes listas para despacho para preparar envíos | P0 | 3 | Backlog |
|
||||
| US-VT008-002 | Como despachador, quiero agrupar pedidos por zona geográfica para optimizar rutas | P0 | 5 | Backlog |
|
||||
| US-VT008-003 | Como despachador, quiero generar remisión de entrega para documentar envío | P0 | 3 | Backlog |
|
||||
| US-VT008-004 | Como despachador, quiero registrar tipo de embalaje usado para cada pieza | P0 | 2 | Backlog |
|
||||
| US-VT008-005 | Como transportista, quiero ver mi ruta del día con direcciones y pedidos | P0 | 5 | Backlog |
|
||||
| US-VT008-006 | Como transportista, quiero confirmar entrega con firma digital del cliente | P0 | 5 | Backlog |
|
||||
| US-VT008-007 | Como cliente, quiero recibir notificación cuando mi pedido salga a entrega | P1 | 2 | Backlog |
|
||||
| US-VT008-008 | Como jefe de logística, quiero ver métricas de entregas a tiempo | P1 | 3 | Backlog |
|
||||
|
||||
**Total Story Points:** 28 SP
|
||||
|
||||
---
|
||||
|
||||
## Proceso de Despacho
|
||||
|
||||
```
|
||||
┌─────────────┐
|
||||
│ LISTO_ENVIO │ ← Piezas aprobadas por QC
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EMBALANDO │ ← Preparando embalaje especial
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ PROGRAMADO │ ← Asignado a ruta y transportista
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ EN_RUTA │ ← Transportista en camino
|
||||
└──────┬──────┘
|
||||
│
|
||||
├────────────────┐
|
||||
▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ ENTREGADO │ │ RECHAZADO │
|
||||
└──────┬──────┘ └──────┬──────┘
|
||||
│ │
|
||||
▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ FACTURAR │ │ INVESTIGAR │
|
||||
└─────────────┘ └─────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Embalaje de Vidrio
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ TIPOS DE EMBALAJE PARA VIDRIO │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ │
|
||||
│ CABALLETE (A-Frame) │
|
||||
│ ├── Para piezas grandes (> 1m²) │
|
||||
│ ├── Inclinación 5-10° │
|
||||
│ └── Separadores de corcho/foam │
|
||||
│ │
|
||||
│ CAJA DE MADERA │
|
||||
│ ├── Para piezas medianas │
|
||||
│ ├── Espuma perimetral │
|
||||
│ └── Esquineros de cartón │
|
||||
│ │
|
||||
│ SOBRE DE CARTÓN │
|
||||
│ ├── Para piezas pequeñas (< 0.5m²) │
|
||||
│ └── Espuma interior │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Criterios de Aceptacion de la Epica
|
||||
|
||||
**Funcionales:**
|
||||
- [ ] Ver pedidos listos para despacho
|
||||
- [ ] Agrupar por zona geográfica
|
||||
- [ ] Asignar a transportista
|
||||
- [ ] Generar remisión PDF
|
||||
- [ ] Registrar tipo de embalaje
|
||||
- [ ] Confirmar entrega con firma
|
||||
- [ ] Notificaciones a cliente
|
||||
- [ ] Métricas de entregas
|
||||
|
||||
**No Funcionales:**
|
||||
- [ ] Generación de remisión < 3 segundos
|
||||
- [ ] App móvil para transportistas
|
||||
- [ ] Funcionamiento offline para confirmación
|
||||
|
||||
**Tecnicos:**
|
||||
- [ ] Integración con módulo de calidad
|
||||
- [ ] Integración con facturación
|
||||
- [ ] Firma digital en dispositivo móvil
|
||||
- [ ] Geolocalización de entregas
|
||||
|
||||
---
|
||||
|
||||
## Dependencias
|
||||
|
||||
**Esta epica depende de:**
|
||||
| Epica/Modulo | Estado | Bloqueante |
|
||||
|--------------|--------|------------|
|
||||
| EPIC-VT-001 Fundamentos | Backlog | Si |
|
||||
| EPIC-VT-003 Produccion | Backlog | Si |
|
||||
| EPIC-VT-007 Calidad | Backlog | Si |
|
||||
|
||||
**Esta epica bloquea:**
|
||||
| Epica/Modulo | Razon |
|
||||
|--------------|-------|
|
||||
| Facturación (futuro) | Requiere entrega confirmada |
|
||||
|
||||
---
|
||||
|
||||
## Desglose Tecnico
|
||||
|
||||
**Database:**
|
||||
- [ ] Schema: `dispatch`
|
||||
- [ ] Tablas: 6 (shipments, shipment_items, routes, deliveries, carriers, packaging_types)
|
||||
- [ ] Funciones: 2 (calculate_route_cost, confirm_delivery)
|
||||
- [ ] Indices: Por ruta, fecha, transportista, estado
|
||||
|
||||
**Backend:**
|
||||
- [ ] Modulo: `dispatch`
|
||||
- [ ] Entities: 5 (Shipment, ShipmentItem, Route, Delivery, Carrier)
|
||||
- [ ] Endpoints: 12
|
||||
- [ ] Tests: 24
|
||||
|
||||
**Frontend:**
|
||||
- [ ] Paginas: 4 (PendingShipments, RouteBuilder, DeliveryConfirm, Metrics)
|
||||
- [ ] Componentes: 10 (ShipmentCard, RouteMap, SignaturePad, etc.)
|
||||
- [ ] Stores: 1 (dispatchStore)
|
||||
- [ ] PWA: App para transportistas
|
||||
|
||||
---
|
||||
|
||||
## Endpoints API
|
||||
|
||||
| Metodo | Endpoint | Descripcion |
|
||||
|--------|----------|-------------|
|
||||
| GET | /api/dispatch/pending | Pedidos listos para despacho |
|
||||
| POST | /api/dispatch/shipments | Crear envío |
|
||||
| GET | /api/dispatch/shipments/:id | Detalle de envío |
|
||||
| POST | /api/dispatch/routes | Crear ruta |
|
||||
| GET | /api/dispatch/routes/:id | Ver ruta |
|
||||
| POST | /api/dispatch/routes/:id/start | Iniciar ruta |
|
||||
| POST | /api/dispatch/deliveries/:id/confirm | Confirmar entrega |
|
||||
| POST | /api/dispatch/deliveries/:id/reject | Rechazar entrega |
|
||||
| GET | /api/dispatch/shipments/:id/remission | Generar remisión PDF |
|
||||
| GET | /api/dispatch/metrics | Métricas de entregas |
|
||||
|
||||
---
|
||||
|
||||
## Riesgos
|
||||
|
||||
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
||||
|--------|--------------|---------|------------|
|
||||
| Daño en transporte | Media | Alto | Embalaje adecuado + seguro |
|
||||
| Entregas no confirmadas | Media | Medio | App offline con sincronización |
|
||||
| Rutas ineficientes | Media | Medio | Agrupación por zona |
|
||||
|
||||
---
|
||||
|
||||
## Definition of Ready (DoR)
|
||||
|
||||
- [x] Historias de usuario definidas
|
||||
- [x] Criterios de aceptacion claros
|
||||
- [x] Dependencias identificadas
|
||||
- [x] Estimacion completada
|
||||
- [ ] Zonas geográficas definidas
|
||||
- [ ] Tipos de embalaje documentados
|
||||
|
||||
## Definition of Done (DoD)
|
||||
|
||||
- [ ] Flujo de despacho funcionando
|
||||
- [ ] Generación de remisiones operativa
|
||||
- [ ] App de transportistas funcional
|
||||
- [ ] Confirmación con firma digital
|
||||
- [ ] Tests de integración pasando
|
||||
- [ ] Documentación de API
|
||||
|
||||
---
|
||||
|
||||
## Historial
|
||||
|
||||
| Fecha | Cambio | Autor |
|
||||
|-------|--------|-------|
|
||||
| 2025-12-08 | Creacion de epica | Claude-Agent |
|
||||
|
||||
---
|
||||
|
||||
**Creada por:** Claude-Agent
|
||||
**Fecha:** 2025-12-08
|
||||
**Ultima actualizacion:** 2025-12-08
|
||||
38
docs/README.md
Normal file
38
docs/README.md
Normal file
@ -0,0 +1,38 @@
|
||||
# DOCUMENTACIÓN - ERP Vidrio Templado
|
||||
|
||||
**Proyecto:** ERP Vidrio Templado
|
||||
**Versión:** 1.0.0
|
||||
**Fecha:** 2025-12-05
|
||||
**Estado:** Por iniciar
|
||||
|
||||
---
|
||||
|
||||
## Estructura de Documentación
|
||||
|
||||
```
|
||||
docs/
|
||||
├── 00-vision-general/ # Visión, objetivos y alcance
|
||||
├── 01-analisis-referencias/ # Análisis de sistemas de referencia
|
||||
├── 02-definicion-modulos/ # Lista, índice y dependencias de módulos
|
||||
├── 03-requerimientos/ # Requerimientos funcionales por módulo
|
||||
├── 04-modelado/ # Diseño técnico
|
||||
│ ├── database-design/ # DDL specs, schemas
|
||||
│ ├── domain-models/ # Modelos de dominio
|
||||
│ └── especificaciones-tecnicas/ # ET backend/frontend
|
||||
├── 05-user-stories/ # Historias de usuario
|
||||
├── 06-test-plans/ # Planes de prueba
|
||||
├── 07-devops/ # CI/CD, infraestructura
|
||||
├── 90-transversal/ # Documentos transversales
|
||||
├── 95-guias-desarrollo/ # Guías para desarrolladores
|
||||
└── 97-adr/ # Architecture Decision Records
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Directiva Aplicable
|
||||
|
||||
Ver: `/workspace/core/orchestration/directivas/DIRECTIVA-ESTRUCTURA-DOCUMENTACION-PROYECTOS.md`
|
||||
|
||||
---
|
||||
|
||||
**Última actualización:** 2025-12-05
|
||||
40
docs/_MAP.md
Normal file
40
docs/_MAP.md
Normal file
@ -0,0 +1,40 @@
|
||||
# Mapa de Documentacion: erp-vidrio-templado
|
||||
|
||||
**Proyecto:** erp-vidrio-templado
|
||||
**Actualizado:** 2026-01-04
|
||||
**Generado por:** EPIC-008 adapt-simco.sh
|
||||
|
||||
---
|
||||
|
||||
## Estructura de Documentacion
|
||||
|
||||
```
|
||||
docs/
|
||||
├── _MAP.md # Este archivo (indice de navegacion)
|
||||
├── 00-overview/ # Vision general del proyecto
|
||||
├── 01-architecture/ # Arquitectura y decisiones (ADRs)
|
||||
├── 02-specs/ # Especificaciones tecnicas
|
||||
├── 03-api/ # Documentacion de APIs
|
||||
├── 04-guides/ # Guias de desarrollo
|
||||
└── 99-finiquito/ # Entregables cliente (si aplica)
|
||||
```
|
||||
|
||||
## Navegacion Rapida
|
||||
|
||||
| Seccion | Descripcion | Estado |
|
||||
|---------|-------------|--------|
|
||||
| Overview | Vision general | - |
|
||||
| Architecture | Decisiones arquitectonicas | - |
|
||||
| Specs | Especificaciones tecnicas | - |
|
||||
| API | Documentacion de endpoints | - |
|
||||
| Guides | Guias de desarrollo | - |
|
||||
|
||||
## Estadisticas
|
||||
|
||||
- Total archivos en docs/: 19
|
||||
- Fecha de adaptacion: 2026-01-04
|
||||
|
||||
---
|
||||
|
||||
**Nota:** Este archivo fue generado automaticamente por EPIC-008.
|
||||
Actualizar manualmente con la estructura real del proyecto.
|
||||
121
orchestration/00-guidelines/CONTEXTO-PROYECTO.md
Normal file
121
orchestration/00-guidelines/CONTEXTO-PROYECTO.md
Normal file
@ -0,0 +1,121 @@
|
||||
# Contexto del Proyecto: ERP Vidrio Templado
|
||||
|
||||
## Metadatos
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **Nombre** | ERP Vidrio Templado |
|
||||
| **Tipo** | STANDALONE (Proyecto Independiente) |
|
||||
| **Nivel** | Vertical que extiende erp-core |
|
||||
| **Estado** | En planificacion |
|
||||
| **Progreso** | 0% |
|
||||
| **Version** | 0.1.0 |
|
||||
| **Base** | Extiende projects/erp-core (60-70%) |
|
||||
| **Extension** | Modulos especificos (+30-40%) |
|
||||
| **Path** | `/home/isem/workspace-v1/projects/erp-vidrio-templado/` |
|
||||
| **Fecha Migracion** | 2025-12-27 |
|
||||
|
||||
---
|
||||
|
||||
## VARIABLES PARA DIRECTIVAS GLOBALES
|
||||
|
||||
```yaml
|
||||
# Identificacion del Proyecto
|
||||
PROJECT: erp-vidrio-templado
|
||||
PROJECT_NAME: ERP Vidrio Templado
|
||||
PROJECT_LEVEL: STANDALONE
|
||||
|
||||
# Paths Principales (WORKSPACE-V1)
|
||||
WORKSPACE_ROOT: ~/workspace-v1
|
||||
PROJECT_ROOT: ~/workspace-v1/projects/erp-vidrio-templado
|
||||
APPS_ROOT: ~/workspace-v1/projects/erp-vidrio-templado
|
||||
DOCS_ROOT: ~/workspace-v1/projects/erp-vidrio-templado/docs
|
||||
ORCHESTRATION: ~/workspace-v1/projects/erp-vidrio-templado/orchestration
|
||||
|
||||
# Herencia de ERP-Core
|
||||
ERP_CORE_ROOT: ~/workspace-v1/projects/erp-core
|
||||
HERENCIA_DOC: orchestration/00-guidelines/HERENCIA-ERP-CORE.md
|
||||
|
||||
# Base Orchestration (Directivas y Perfiles)
|
||||
DIRECTIVAS_PATH: ~/workspace-v1/orchestration/directivas
|
||||
PERFILES_PATH: ~/workspace-v1/orchestration/agents/perfiles
|
||||
CATALOG_PATH: ~/workspace-v1/core/catalog
|
||||
|
||||
# Base de Datos
|
||||
DB_NAME: erp_vidrio_templado
|
||||
DB_DDL_PATH: ~/workspace-v1/projects/erp-vidrio-templado/database/ddl
|
||||
DB_SCRIPTS_PATH: ~/workspace-v1/projects/erp-vidrio-templado/database
|
||||
|
||||
# Backend
|
||||
BACKEND_ROOT: ~/workspace-v1/projects/erp-vidrio-templado/backend
|
||||
BACKEND_SRC: ~/workspace-v1/projects/erp-vidrio-templado/backend/src
|
||||
|
||||
# Frontend
|
||||
FRONTEND_ROOT: ~/workspace-v1/projects/erp-vidrio-templado/frontend
|
||||
FRONTEND_SRC: ~/workspace-v1/projects/erp-vidrio-templado/frontend/src
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Descripcion
|
||||
|
||||
Vertical especializada para empresas de producción de vidrio templado. Extiende erp-core con módulos específicos para:
|
||||
- Gestión de órdenes de producción
|
||||
- Control de calidad y certificaciones
|
||||
- Inventario de materia prima
|
||||
- Trazabilidad de lotes
|
||||
- Gestión de maquinaria (hornos)
|
||||
|
||||
## Paths del Proyecto
|
||||
|
||||
```
|
||||
/home/isem/workspace-v1/projects/erp-vidrio-templado/
|
||||
├── backend/
|
||||
├── frontend/
|
||||
├── database/
|
||||
├── docs/
|
||||
│ ├── 00-vision-general/
|
||||
│ ├── 01-fase-mvp/
|
||||
│ └── 02-modelado/
|
||||
└── orchestration/
|
||||
├── 00-guidelines/
|
||||
├── referencias/
|
||||
├── trazas/
|
||||
└── estados/
|
||||
```
|
||||
|
||||
## Módulos Planificados
|
||||
|
||||
| Módulo | Descripción | Prioridad |
|
||||
|--------|-------------|-----------|
|
||||
| production | Órdenes de producción | Alta |
|
||||
| quality | Control de calidad | Alta |
|
||||
| inventory | Inventario materia prima | Alta |
|
||||
| machinery | Gestión de hornos | Media |
|
||||
| traceability | Trazabilidad de lotes | Media |
|
||||
| quotes | Cotizaciones | Media |
|
||||
|
||||
## Directivas Especificas
|
||||
|
||||
1. **Hereda directivas de:**
|
||||
- `/home/isem/workspace-v1/orchestration/directivas/`
|
||||
- `/home/isem/workspace-v1/projects/erp-core/orchestration/directivas/`
|
||||
|
||||
2. **Principios especificos:**
|
||||
- Trazabilidad obligatoria para todos los lotes
|
||||
- Integracion con equipos de medicion
|
||||
- Certificaciones de calidad
|
||||
|
||||
## Referencias
|
||||
|
||||
| Recurso | Path |
|
||||
|---------|------|
|
||||
| Directivas globales | `/home/isem/workspace-v1/orchestration/directivas/` |
|
||||
| Directivas ERP-Core | `/home/isem/workspace-v1/projects/erp-core/orchestration/directivas/` |
|
||||
| Herencia directivas | `./HERENCIA-DIRECTIVAS.md` |
|
||||
| Dependencias ERP-Core | `../referencias/DEPENDENCIAS-ERP-CORE.yml` |
|
||||
| Dependencias Shared | `../referencias/DEPENDENCIAS-SHARED.yml` |
|
||||
| Referencia construccion | `/home/isem/workspace-v1/projects/erp-construccion/` |
|
||||
|
||||
---
|
||||
*Última actualización: Diciembre 2025*
|
||||
72
orchestration/00-guidelines/HERENCIA-DIRECTIVAS.md
Normal file
72
orchestration/00-guidelines/HERENCIA-DIRECTIVAS.md
Normal file
@ -0,0 +1,72 @@
|
||||
# Herencia de Directivas - ERP Vidrio Templado
|
||||
|
||||
## Jerarquia de Directivas
|
||||
|
||||
Este proyecto hereda directivas en el siguiente orden de precedencia:
|
||||
|
||||
```
|
||||
1. Directivas Globales (CORE) → /home/isem/workspace/core/orchestration/directivas/
|
||||
2. Directivas ERP-Core → /home/isem/workspace/projects/erp-suite/apps/erp-core/orchestration/directivas/
|
||||
3. Directivas Vidrio Templado → ./directivas/ (este proyecto)
|
||||
```
|
||||
|
||||
**Regla:** Las directivas especificas pueden **EXTENDER** las heredadas, nunca **REDUCIRLAS**.
|
||||
|
||||
---
|
||||
|
||||
## Directivas Heredadas de CORE
|
||||
|
||||
| Directiva | Proposito |
|
||||
|-----------|-----------|
|
||||
| `DIRECTIVA-FLUJO-5-FASES.md` | Flujo de trabajo obligatorio |
|
||||
| `DIRECTIVA-DOCUMENTACION-OBLIGATORIA.md` | Docs en tiempo real |
|
||||
| `DIRECTIVA-CALIDAD-CODIGO.md` | Estandares de codigo |
|
||||
| `DIRECTIVA-DISENO-BASE-DATOS.md` | Diseno BD |
|
||||
| `DIRECTIVA-CONTROL-VERSIONES.md` | Git |
|
||||
|
||||
---
|
||||
|
||||
## Directivas Heredadas de ERP-Core
|
||||
|
||||
| Directiva | Proposito |
|
||||
|-----------|-----------|
|
||||
| `DIRECTIVA-MULTI-TENANT.md` | Aislamiento por tenant |
|
||||
| `DIRECTIVA-EXTENSION-VERTICALES.md` | Como extender el core |
|
||||
| `DIRECTIVA-DOCUMENTACION-PRE-DESARROLLO.md` | Documentar antes de desarrollar |
|
||||
| `DIRECTIVA-PATRONES-ODOO.md` | Patrones de diseno |
|
||||
| `DIRECTIVA-HERENCIA-MODULOS.md` | Extension de modulos |
|
||||
| `ESTANDARES-API-REST-GENERICO.md` | APIs REST |
|
||||
|
||||
---
|
||||
|
||||
## Directivas Especificas de Vidrio Templado
|
||||
|
||||
| Directiva | Proposito | Estado |
|
||||
|-----------|-----------|--------|
|
||||
| `DIRECTIVA-OPTIMIZACION-CORTE.md` | Algoritmos de corte optimo | Por crear |
|
||||
| `DIRECTIVA-PROCESO-TEMPLADO.md` | Control de proceso termico | Por crear |
|
||||
| `DIRECTIVA-CALIDAD-VIDRIO.md` | Estandares de calidad | Por crear |
|
||||
|
||||
---
|
||||
|
||||
## Modulos que Usa del Core
|
||||
|
||||
| Modulo Core | Uso en Vidrio |
|
||||
|-------------|---------------|
|
||||
| MGN-001 Auth | Directo |
|
||||
| MGN-002 Users | Directo |
|
||||
| MGN-004 Tenants | Directo |
|
||||
| MGN-005 Catalogs | Extendido (tipos vidrio) |
|
||||
| MGN-011 Inventory | Extendido (laminas, cortes) |
|
||||
| MGN-012 Purchasing | Extendido (vidrio crudo) |
|
||||
| MGN-013 Sales | Extendido (ordenes produccion) |
|
||||
|
||||
---
|
||||
|
||||
## Referencias
|
||||
|
||||
- Core: `/home/isem/workspace/core/orchestration/directivas/`
|
||||
- ERP-Core: `/home/isem/workspace/projects/erp-suite/apps/erp-core/orchestration/directivas/`
|
||||
|
||||
---
|
||||
*Ultima actualizacion: Diciembre 2025*
|
||||
181
orchestration/00-guidelines/HERENCIA-ERP-CORE.md
Normal file
181
orchestration/00-guidelines/HERENCIA-ERP-CORE.md
Normal file
@ -0,0 +1,181 @@
|
||||
# Herencia de ERP Core - Vertical Vidrio Templado
|
||||
|
||||
**Version:** 1.0.0
|
||||
**Vertical:** Vidrio Templado
|
||||
**Nivel:** STANDALONE (proyecto independiente)
|
||||
**Version ERP-Core:** 1.2.0
|
||||
**Ruta ERP-Core:** projects/erp-core
|
||||
**Herencia:** 60-70% de funcionalidad base de erp-core
|
||||
**Fecha Migracion:** 2025-12-27
|
||||
|
||||
---
|
||||
|
||||
## RESUMEN DE HERENCIA
|
||||
|
||||
Este documento especifica exactamente que hereda la vertical Vidrio Templado del ERP Core y como lo extiende.
|
||||
|
||||
---
|
||||
|
||||
## 1. MODULOS HEREDADOS (100%)
|
||||
|
||||
Estos modulos se usan TAL CUAL del core, sin modificaciones:
|
||||
|
||||
| Modulo Core | Codigo | Uso en Vidrio Templado |
|
||||
|-------------|--------|------------------------|
|
||||
| Auth | MGN-001 | Autenticacion JWT, OAuth |
|
||||
| Users | MGN-002 | Gestion de usuarios |
|
||||
| Roles | MGN-003 | RBAC por area (produccion, calidad, ventas) |
|
||||
| Audit | MGN-007 | Trazabilidad de operaciones |
|
||||
| Notifications | MGN-008 | Alertas de produccion |
|
||||
| Reports | MGN-009 | Reportes de produccion |
|
||||
|
||||
**Accion:** NO crear codigo para estos modulos. Usar directamente del core.
|
||||
|
||||
---
|
||||
|
||||
## 2. MODULOS HEREDADOS Y EXTENDIDOS
|
||||
|
||||
### MGN-004: Tenants → Plantas de Produccion
|
||||
|
||||
```yaml
|
||||
herencia_base:
|
||||
- Multi-tenancy basico
|
||||
- Aislamiento RLS
|
||||
|
||||
extension_vidrio:
|
||||
- Planta como tenant especializado
|
||||
- Campos adicionales:
|
||||
- capacidad_hornos
|
||||
- certificaciones_calidad
|
||||
- licencia_ambiental
|
||||
- Relaciones:
|
||||
- planta → lineas_produccion (1:N)
|
||||
- planta → hornos (1:N)
|
||||
```
|
||||
|
||||
### MGN-005: Catalogs → Catalogos de Vidrio
|
||||
|
||||
```yaml
|
||||
herencia_base:
|
||||
- CRUD de catalogos genericos
|
||||
|
||||
extension_vidrio:
|
||||
- Catalogo de tipos de vidrio
|
||||
- Catalogo de espesores
|
||||
- Catalogo de acabados
|
||||
- Catalogo de procesos de templado
|
||||
- Catalogo de defectos de calidad
|
||||
```
|
||||
|
||||
### MGN-011: Inventory → Inventario de Vidrio
|
||||
|
||||
```yaml
|
||||
herencia_base:
|
||||
- Productos y variantes
|
||||
- Movimientos de stock
|
||||
- Ubicaciones
|
||||
|
||||
extension_vidrio:
|
||||
- Dimensiones de lamina (ancho x alto)
|
||||
- Tracking por lote de produccion
|
||||
- Control de desperdicio/retazo
|
||||
- Trazabilidad por horno
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. ESPECIFICACIONES TRANSVERSALES HEREDADAS
|
||||
|
||||
### Obligatorias (Impacto Directo)
|
||||
|
||||
| Especificacion | Gap | Uso |
|
||||
|----------------|-----|-----|
|
||||
| `SPEC-VALORACION-INVENTARIO.md` | GAP-MGN-005 | Costeo de vidrio (FIFO/AVCO) |
|
||||
| `SPEC-TRAZABILIDAD-LOTES-SERIES.md` | GAP-MGN-005 | Trazabilidad por lote de templado |
|
||||
| `SPEC-INVENTARIOS-CICLICOS.md` | GAP-MGN-005 | Conteo de laminas en almacen |
|
||||
|
||||
### Recomendadas
|
||||
|
||||
| Especificacion | Gap | Uso |
|
||||
|----------------|-----|-----|
|
||||
| `SPEC-SISTEMA-SECUENCIAS.md` | GAP-MGN-004 | Foliado de ordenes de produccion |
|
||||
| `SPEC-TAREAS-RECURRENTES.md` | GAP-MGN-011 | Mantenimiento preventivo hornos |
|
||||
| `SPEC-MAIL-THREAD-TRACKING.md` | Patron | Tracking de ordenes |
|
||||
|
||||
**Ubicacion:** `erp-core/docs/04-modelado/especificaciones-tecnicas/transversal/`
|
||||
|
||||
---
|
||||
|
||||
## 4. MODULOS PROPIOS (No heredados)
|
||||
|
||||
| Codigo | Modulo | Descripcion |
|
||||
|--------|--------|-------------|
|
||||
| VT-001 | production | Ordenes de produccion |
|
||||
| VT-002 | quality | Control de calidad |
|
||||
| VT-003 | raw_materials | Materia prima (laminas) |
|
||||
| VT-004 | machinery | Gestion de hornos |
|
||||
| VT-005 | traceability | Trazabilidad por lote |
|
||||
| VT-006 | quotations | Cotizaciones especializadas |
|
||||
|
||||
---
|
||||
|
||||
## 5. SCHEMAS DE BASE DE DATOS
|
||||
|
||||
### Heredados de Core
|
||||
|
||||
```yaml
|
||||
schemas_core:
|
||||
- auth
|
||||
- core_users
|
||||
- core_rbac
|
||||
- core_tenants (extendido)
|
||||
- core_catalogs (extendido)
|
||||
- core_audit
|
||||
```
|
||||
|
||||
### Propios de Vidrio Templado
|
||||
|
||||
```yaml
|
||||
schemas_vertical:
|
||||
- vertical_vidrio
|
||||
- production_orders
|
||||
- quality_inspections
|
||||
- furnace_logs
|
||||
- batch_tracking
|
||||
- glass_inventory
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. CONSIDERACIONES ESPECIALES
|
||||
|
||||
### Trazabilidad Obligatoria
|
||||
|
||||
Por normativas de calidad, este vertical REQUIERE:
|
||||
- Trazabilidad 100% de lotes
|
||||
- Registro de parametros de templado (temperatura, tiempo)
|
||||
- Certificados de calidad por lote
|
||||
- Historial de inspecciones
|
||||
|
||||
### Integracion con Maquinaria
|
||||
|
||||
- Conexion con PLCs de hornos (futuro)
|
||||
- Lectura automatica de parametros
|
||||
- Alertas de desviacion
|
||||
|
||||
---
|
||||
|
||||
## 7. REFERENCIAS
|
||||
|
||||
| Recurso | Ubicacion |
|
||||
|---------|-----------|
|
||||
| MASTER_INVENTORY Core | `erp-core/orchestration/inventarios/MASTER_INVENTORY.yml` |
|
||||
| Specs Transversales | `erp-core/docs/04-modelado/especificaciones-tecnicas/transversal/` |
|
||||
| SUITE_MASTER_INVENTORY | `erp-suite/orchestration/inventarios/SUITE_MASTER_INVENTORY.yml` |
|
||||
| HERENCIA-DIRECTIVAS | `./HERENCIA-DIRECTIVAS.md` |
|
||||
|
||||
---
|
||||
|
||||
*Sistema NEXUS + SIMCO v2.2.0*
|
||||
*Vertical: Vidrio Templado (Nivel 2B.2)*
|
||||
*Ultima actualizacion: 2025-12-08*
|
||||
121
orchestration/00-guidelines/HERENCIA-SIMCO.md
Normal file
121
orchestration/00-guidelines/HERENCIA-SIMCO.md
Normal file
@ -0,0 +1,121 @@
|
||||
# Herencia SIMCO - ERP Vidrio Templado
|
||||
|
||||
**Sistema:** SIMCO v2.2.0 + CAPVED + CCA Protocol
|
||||
**Fecha:** 2025-12-08
|
||||
|
||||
---
|
||||
|
||||
## Configuración del Proyecto
|
||||
|
||||
| Propiedad | Valor |
|
||||
|-----------|-------|
|
||||
| **Proyecto** | ERP Vidrio Templado - Vertical para Vidrierías |
|
||||
| **Nivel** | VERTICAL (Nivel 3) |
|
||||
| **Padre** | erp-core |
|
||||
| **Suite** | erp-suite |
|
||||
| **SIMCO Version** | 2.2.0 |
|
||||
| **CAPVED** | Habilitado |
|
||||
| **CCA Protocol** | Habilitado |
|
||||
| **Estado** | 0% - Por iniciar |
|
||||
|
||||
## Jerarquía de Herencia
|
||||
|
||||
```
|
||||
Nivel 0: core/orchestration/ ← FUENTE PRINCIPAL
|
||||
└── Nivel 1: erp-suite/orchestration/
|
||||
└── Nivel 2: erp-core/orchestration/ ← PADRE DIRECTO
|
||||
└── Nivel 3: vidrio-templado/orchestration/ ← ESTE PROYECTO
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Directivas Heredadas de CORE (OBLIGATORIAS)
|
||||
|
||||
### Ciclo de Vida
|
||||
| Alias | Propósito |
|
||||
|-------|-----------|
|
||||
| `@TAREA` | Punto de entrada para toda HU |
|
||||
| `@CAPVED` | Ciclo de 6 fases |
|
||||
| `@INICIALIZACION` | Bootstrap de agentes |
|
||||
|
||||
### Operaciones Universales
|
||||
| Alias | Propósito |
|
||||
|-------|-----------|
|
||||
| `@CREAR` | Crear archivos nuevos |
|
||||
| `@MODIFICAR` | Modificar existentes |
|
||||
| `@VALIDAR` | Validar código |
|
||||
| `@DOCUMENTAR` | Documentar trabajo |
|
||||
| `@BUSCAR` | Buscar información |
|
||||
| `@DELEGAR` | Delegar a subagentes |
|
||||
|
||||
### Principios Fundamentales
|
||||
| Alias | Resumen |
|
||||
|-------|---------|
|
||||
| `@CAPVED` | Toda tarea pasa por 6 fases |
|
||||
| `@DOC_PRIMERO` | Consultar docs/ antes de implementar |
|
||||
| `@ANTI_DUP` | Verificar que no existe |
|
||||
| `@VALIDACION` | Build y lint DEBEN pasar |
|
||||
| `@TOKENS` | Desglosar tareas grandes |
|
||||
|
||||
---
|
||||
|
||||
## Directivas por Dominio Técnico
|
||||
|
||||
| Alias | Aplica | Notas |
|
||||
|-------|--------|-------|
|
||||
| `@OP_DDL` | **SÍ** | Schemas específicos vidrio |
|
||||
| `@OP_BACKEND` | **SÍ** | Servicios de cotización, corte |
|
||||
| `@OP_FRONTEND` | **SÍ** | UI de configurador |
|
||||
| `@OP_MOBILE` | **SÍ** | App de instaladores |
|
||||
| `@OP_ML` | NO | - |
|
||||
|
||||
---
|
||||
|
||||
## Patrones Heredados (OBLIGATORIOS)
|
||||
|
||||
Todos los patrones de `core/orchestration/patrones/` aplican.
|
||||
|
||||
---
|
||||
|
||||
## Directivas Heredadas de ERP Core
|
||||
|
||||
| Directiva | Extensión Local |
|
||||
|-----------|-----------------|
|
||||
| `DIRECTIVA-MULTI-TENANT.md` | Por `vidriera_id` |
|
||||
| `DIRECTIVA-EXTENSION-VERTICALES.md` | Módulos de vidrio |
|
||||
|
||||
---
|
||||
|
||||
## Variables de Contexto CCA
|
||||
|
||||
```yaml
|
||||
PROJECT_NAME: "vidrio-templado"
|
||||
PROJECT_LEVEL: "VERTICAL"
|
||||
PROJECT_ROOT: "./"
|
||||
PARENT_PROJECT: "erp-core"
|
||||
SUITE_PROJECT: "erp-suite"
|
||||
|
||||
DB_DDL_PATH: "database/ddl"
|
||||
BACKEND_ROOT: "backend/src"
|
||||
FRONTEND_ROOT: "frontend/src"
|
||||
|
||||
TENANT_COLUMN: "vidriera_id"
|
||||
RLS_CONTEXT: "app.current_vidriera_id"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Módulos Específicos de Vidrio (Por definir)
|
||||
|
||||
| Módulo | Descripción | Estado |
|
||||
|--------|-------------|--------|
|
||||
| VID-COT | Cotizaciones | Por definir |
|
||||
| VID-COR | Corte y optimización | Por definir |
|
||||
| VID-INS | Instalación | Por definir |
|
||||
| VID-INV | Inventario vidrios | Por definir |
|
||||
|
||||
---
|
||||
|
||||
**Sistema:** SIMCO v2.2.0 + CAPVED + CCA Protocol
|
||||
**Nivel:** VERTICAL (3)
|
||||
**Última actualización:** 2025-12-08
|
||||
175
orchestration/00-guidelines/HERENCIA-SPECS-CORE.md
Normal file
175
orchestration/00-guidelines/HERENCIA-SPECS-CORE.md
Normal file
@ -0,0 +1,175 @@
|
||||
# Herencia de SPECS del Core - Vidrio Templado
|
||||
|
||||
**Fecha:** 2025-12-08
|
||||
**Versión:** 1.0
|
||||
**Vertical:** Vidrio Templado (VT)
|
||||
**Nivel:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## Resumen
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| SPECS Aplicables | 25/30 |
|
||||
| SPECS Obligatorias | 22 |
|
||||
| SPECS Opcionales | 3 |
|
||||
| SPECS No Aplican | 5 |
|
||||
| Estado Implementación | 0% |
|
||||
|
||||
---
|
||||
|
||||
## SPECS Obligatorias (Deben Implementarse)
|
||||
|
||||
### P0 - Críticas
|
||||
|
||||
| SPEC | Gap Original | SP | Estado | Módulos Afectados |
|
||||
|------|-------------|----:|--------|-------------------|
|
||||
| SPEC-SISTEMA-SECUENCIAS | ir.sequence | 8 | PENDIENTE | VT-001, VT-002 |
|
||||
| SPEC-VALORACION-INVENTARIO | FIFO/AVCO | 21 | PENDIENTE | VT-004 |
|
||||
| SPEC-SEGURIDAD-API-KEYS-PERMISOS | API Keys + ACL | 31 | PENDIENTE | VT-001 |
|
||||
| SPEC-REPORTES-FINANCIEROS | Balance/P&L SAT | 13 | PENDIENTE | VT-008 |
|
||||
| SPEC-PORTAL-PROVEEDORES | Portal RFQ | 13 | PENDIENTE | VT-004 |
|
||||
| SPEC-NOMINA-BASICA | hr_payroll | 21 | PENDIENTE | VT-001 |
|
||||
| SPEC-GASTOS-EMPLEADOS | hr_expense | 13 | PENDIENTE | VT-001 |
|
||||
| SPEC-TAREAS-RECURRENTES | project.task.recurrence | 13 | PENDIENTE | VT-003 |
|
||||
| SPEC-SCHEDULER-REPORTES | ir.cron + mail | 8 | PENDIENTE | VT-008 |
|
||||
|
||||
### P1 - Complementarias
|
||||
|
||||
| SPEC | Gap Original | SP | Estado | Módulos Afectados |
|
||||
|------|-------------|----:|--------|-------------------|
|
||||
| SPEC-CONTABILIDAD-ANALITICA | Centros de costo | 21 | PENDIENTE | VT-008 |
|
||||
| SPEC-CONCILIACION-BANCARIA | Conciliación | 21 | PENDIENTE | VT-008 |
|
||||
| SPEC-TWO-FACTOR-AUTHENTICATION | 2FA | 13 | PENDIENTE | VT-001 |
|
||||
| SPEC-TRAZABILIDAD-LOTES-SERIES | Lotes/Series | 13 | PENDIENTE | VT-004, VT-007 |
|
||||
| SPEC-PRICING-RULES | Reglas precio | 8 | PENDIENTE | VT-002 |
|
||||
| SPEC-BLANKET-ORDERS | Órdenes marco | 13 | PENDIENTE | VT-004 |
|
||||
| SPEC-IMPUESTOS-AVANZADOS | IVA, ISR | 8 | PENDIENTE | VT-008 |
|
||||
| SPEC-PLANTILLAS-CUENTAS | Plan contable | 8 | PENDIENTE | VT-008 |
|
||||
| SPEC-TASAS-CAMBIO-AUTOMATICAS | Tipos cambio | 5 | PENDIENTE | VT-008 |
|
||||
| SPEC-ALERTAS-PRESUPUESTO | Alertas | 8 | PENDIENTE | VT-002, VT-003 |
|
||||
| SPEC-PRESUPUESTOS-REVISIONES | Aprobación | 8 | PENDIENTE | VT-002 |
|
||||
| SPEC-RRHH-EVALUACIONES-SKILLS | Evaluaciones | 26 | PENDIENTE | VT-001 |
|
||||
| SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN | Burndown | 13 | PENDIENTE | VT-003 |
|
||||
| SPEC-LOCALIZACION-PAISES | Localización | 13 | PENDIENTE | VT-001 |
|
||||
|
||||
### Patrones Técnicos
|
||||
|
||||
| SPEC | Patrón | SP | Estado | Aplicación |
|
||||
|------|--------|----:|--------|------------|
|
||||
| SPEC-MAIL-THREAD-TRACKING | mail.thread | 13 | PENDIENTE | Órdenes producción, Cotizaciones |
|
||||
| SPEC-WIZARD-TRANSIENT-MODEL | TransientModel | 8 | PENDIENTE | Wizards de corte, templado |
|
||||
|
||||
---
|
||||
|
||||
## SPECS Opcionales
|
||||
|
||||
| SPEC | Descripción | SP | Decisión | Razón |
|
||||
|------|-------------|----:|----------|-------|
|
||||
| SPEC-FIRMA-ELECTRONICA-NOM151 | e.firma | 13 | EVALUAR | Para certificados de calidad |
|
||||
| SPEC-OAUTH2-SOCIAL-LOGIN | OAuth2 | 8 | DIFERIR | No prioritario |
|
||||
| SPEC-INVENTARIOS-CICLICOS | Conteo cíclico | 13 | EVALUAR | Útil para materia prima |
|
||||
|
||||
---
|
||||
|
||||
## SPECS No Aplicables
|
||||
|
||||
| SPEC | Razón |
|
||||
|------|-------|
|
||||
| SPEC-INTEGRACION-CALENDAR | No requiere calendario externo |
|
||||
| SPEC-CONSOLIDACION-FINANCIERA | Negocio de una sola planta |
|
||||
|
||||
---
|
||||
|
||||
## Adaptaciones Requeridas
|
||||
|
||||
### Mapeo de Conceptos Core → Vidrio
|
||||
|
||||
| Concepto Core | Concepto Vidrio |
|
||||
|---------------|-----------------|
|
||||
| `sales.sale_orders` | Pedidos de vidrio |
|
||||
| `inventory.products` | Tipos de vidrio (templado, laminado, etc.) |
|
||||
| `inventory.lots` | Lotes de producción |
|
||||
| `projects.projects` | Órdenes de producción |
|
||||
| `projects.tasks` | Etapas (corte, templado, inspección) |
|
||||
|
||||
### Extensiones de Entidad
|
||||
|
||||
```sql
|
||||
-- Tipos de vidrio
|
||||
glass.glass_types (
|
||||
product_id → inventory.products,
|
||||
tipo ENUM('templado', 'laminado', 'insulado', 'curvo'),
|
||||
espesor_mm DECIMAL,
|
||||
color VARCHAR,
|
||||
propiedades JSONB
|
||||
)
|
||||
|
||||
-- Órdenes de producción
|
||||
production.production_orders (
|
||||
id UUID,
|
||||
sale_order_id → sales.sale_orders,
|
||||
tipo_vidrio_id → glass_types,
|
||||
dimensiones JSONB,
|
||||
cantidad INTEGER,
|
||||
estado ENUM
|
||||
)
|
||||
|
||||
-- Parámetros de horno
|
||||
production.oven_parameters (
|
||||
production_order_id → production_orders,
|
||||
temperatura_c INTEGER,
|
||||
tiempo_minutos INTEGER,
|
||||
velocidad_enfriamiento DECIMAL,
|
||||
fecha_templado TIMESTAMPTZ
|
||||
)
|
||||
|
||||
-- Inspecciones de calidad
|
||||
quality.inspections (
|
||||
id UUID,
|
||||
production_order_id → production_orders,
|
||||
tipo_inspeccion ENUM,
|
||||
resultado ENUM('aprobado', 'rechazado', 'condicional'),
|
||||
observaciones TEXT
|
||||
)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Plan de Implementación
|
||||
|
||||
### Fase 1: Fundamentos (SP: 52)
|
||||
1. SPEC-SISTEMA-SECUENCIAS
|
||||
2. SPEC-SEGURIDAD-API-KEYS-PERMISOS
|
||||
3. SPEC-TWO-FACTOR-AUTHENTICATION
|
||||
|
||||
### Fase 2: Producción (SP: 55)
|
||||
4. SPEC-VALORACION-INVENTARIO
|
||||
5. SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
6. SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN
|
||||
7. SPEC-PRICING-RULES
|
||||
|
||||
### Fase 3: Operaciones (SP: 34)
|
||||
8. SPEC-MAIL-THREAD-TRACKING
|
||||
9. SPEC-WIZARD-TRANSIENT-MODEL
|
||||
10. SPEC-TAREAS-RECURRENTES
|
||||
|
||||
### Fase 4: Financiero (SP: 65)
|
||||
11. SPEC-REPORTES-FINANCIEROS
|
||||
12. SPEC-CONTABILIDAD-ANALITICA
|
||||
13. SPEC-CONCILIACION-BANCARIA
|
||||
|
||||
---
|
||||
|
||||
## Referencias
|
||||
|
||||
- Documento Core: `erp-core/docs/04-modelado/MAPEO-SPECS-VERTICALES.md`
|
||||
- SPECS del Core: `erp-core/docs/04-modelado/especificaciones-tecnicas/transversal/`
|
||||
- Herencia DB: `database/HERENCIA-ERP-CORE.md`
|
||||
- Directivas: `orchestration/directivas/`
|
||||
|
||||
---
|
||||
|
||||
**Documento de herencia de SPECS oficial**
|
||||
**Última actualización:** 2025-12-08
|
||||
142
orchestration/00-guidelines/HERENCIA-SPECS-ERP-CORE.md
Normal file
142
orchestration/00-guidelines/HERENCIA-SPECS-ERP-CORE.md
Normal file
@ -0,0 +1,142 @@
|
||||
# Herencia de Especificaciones - ERP Core -> Vidrio Templado
|
||||
|
||||
**Fecha:** 2025-12-08
|
||||
**Version:** 1.0
|
||||
**Vertical:** Vidrio Templado
|
||||
**Nivel:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## RESUMEN
|
||||
|
||||
Este documento define las especificaciones transversales del ERP Core que la vertical de Vidrio Templado debe heredar e implementar.
|
||||
|
||||
**Ubicacion specs core:** `apps/erp-core/docs/04-modelado/especificaciones-tecnicas/transversal/`
|
||||
|
||||
---
|
||||
|
||||
## ESPECIFICACIONES A HEREDAR
|
||||
|
||||
### 1. SPEC-VALORACION-INVENTARIO.md
|
||||
|
||||
**Prioridad:** ALTA
|
||||
**Relevancia:** Valoracion de materias primas y producto terminado
|
||||
|
||||
**Funcionalidades heredadas:**
|
||||
- Metodos de valoracion (FIFO, Average Cost)
|
||||
- Capas de valoracion (stock_valuation_layers)
|
||||
- Asientos contables automaticos
|
||||
- Reconciliacion de inventario
|
||||
|
||||
**Adaptacion para vidrio templado:**
|
||||
- Valoracion de vidrio crudo por espesor/tipo
|
||||
- Costeo de productos terminados (templado, laminado)
|
||||
- Control de mermas por rotura
|
||||
- Valoracion de insumos (PVB, perfiles, etc.)
|
||||
|
||||
**Modulos afectados:**
|
||||
- Almacen de materias primas
|
||||
- Almacen de producto terminado
|
||||
- Produccion
|
||||
|
||||
---
|
||||
|
||||
### 2. SPEC-TRAZABILIDAD-LOTES-SERIES.md
|
||||
|
||||
**Prioridad:** ALTA
|
||||
**Relevancia:** Trazabilidad de vidrio por colada/lote
|
||||
|
||||
**Funcionalidades heredadas:**
|
||||
- Gestion de lotes (stock_lots)
|
||||
- Numeros de serie
|
||||
- Trazabilidad upstream/downstream
|
||||
- Fechas de vencimiento
|
||||
|
||||
**Adaptacion para vidrio templado:**
|
||||
- Lotes de vidrio por proveedor/colada
|
||||
- Trazabilidad de piezas individuales (numero de serie)
|
||||
- Certificados de calidad por lote
|
||||
- Rastreo de roturas por lote de origen
|
||||
- Garantias vinculadas a lote
|
||||
|
||||
**Modulos afectados:**
|
||||
- Control de Calidad
|
||||
- Almacen
|
||||
- Produccion
|
||||
- Reclamaciones/Garantias
|
||||
|
||||
---
|
||||
|
||||
### 3. SPEC-INVENTARIOS-CICLICOS.md
|
||||
|
||||
**Prioridad:** MEDIA
|
||||
**Relevancia:** Control de inventario de vidrio
|
||||
|
||||
**Funcionalidades heredadas:**
|
||||
- Conteos ciclicos programados
|
||||
- Reglas ABC de clasificacion
|
||||
- Ajustes de inventario
|
||||
- Reportes de discrepancias
|
||||
|
||||
**Adaptacion para vidrio templado:**
|
||||
- Conteo de laminas por rack/ubicacion
|
||||
- Clasificacion ABC por rotacion y valor
|
||||
- Conteos frecuentes de items de alto valor
|
||||
- Reconciliacion con mermas de produccion
|
||||
|
||||
**Modulos afectados:**
|
||||
- Almacen
|
||||
- Inventarios
|
||||
- Contabilidad
|
||||
|
||||
---
|
||||
|
||||
## ESPECIFICACIONES ADICIONALES RECOMENDADAS
|
||||
|
||||
| Especificacion | Relevancia | Prioridad |
|
||||
|----------------|------------|-----------|
|
||||
| SPEC-MAIL-THREAD-TRACKING.md | Tracking de pedidos y produccion | Media |
|
||||
| SPEC-WIZARD-TRANSIENT-MODEL.md | Asistentes de cotizacion/produccion | Media |
|
||||
| SPEC-PRICING-RULES.md | Listas de precios por cliente/volumen | Media |
|
||||
|
||||
---
|
||||
|
||||
## MATRIZ DE HERENCIA
|
||||
|
||||
| Spec Core | Modulos Vidrio Templado | Prioridad | Estado |
|
||||
|-----------|------------------------|-----------|--------|
|
||||
| SPEC-VALORACION-INVENTARIO | Almacen, Produccion | ALTA | Pendiente |
|
||||
| SPEC-TRAZABILIDAD-LOTES-SERIES | Calidad, Almacen, Produccion | ALTA | Pendiente |
|
||||
| SPEC-INVENTARIOS-CICLICOS | Almacen, Inventarios | MEDIA | Pendiente |
|
||||
|
||||
---
|
||||
|
||||
## IMPLEMENTACION
|
||||
|
||||
### Orden Sugerido
|
||||
|
||||
1. **Fase 1 - Trazabilidad**
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES (critico para calidad)
|
||||
|
||||
2. **Fase 2 - Valoracion**
|
||||
- SPEC-VALORACION-INVENTARIO (costeo de productos)
|
||||
- SPEC-INVENTARIOS-CICLICOS (control de stock)
|
||||
|
||||
### Consideraciones Especificas
|
||||
|
||||
- El vidrio requiere trazabilidad estricta por certificaciones de calidad
|
||||
- Los metodos de valoracion deben considerar mermas por rotura
|
||||
- La clasificacion ABC debe incluir criterios de fragilidad
|
||||
|
||||
---
|
||||
|
||||
## REFERENCIAS
|
||||
|
||||
- Specs Core: `apps/erp-core/docs/04-modelado/especificaciones-tecnicas/transversal/`
|
||||
- Gap Analysis: `apps/erp-core/orchestration/01-analisis/ANALISIS-GAPS-CONSOLIDADO.md`
|
||||
|
||||
---
|
||||
|
||||
**Documento generado por:** Requirements-Analyst
|
||||
**Fecha:** 2025-12-08
|
||||
**Version:** 1.0
|
||||
33
orchestration/00-guidelines/PROJECT-STATUS.md
Normal file
33
orchestration/00-guidelines/PROJECT-STATUS.md
Normal file
@ -0,0 +1,33 @@
|
||||
# PROJECT STATUS: erp-vidrio-templado
|
||||
|
||||
**Ultima actualizacion:** 2026-01-04
|
||||
**Estado general:** Activo
|
||||
|
||||
---
|
||||
|
||||
## Metricas Rapidas
|
||||
|
||||
| Metrica | Valor |
|
||||
|---------|-------|
|
||||
| Archivos docs/ | 19 |
|
||||
| Archivos orchestration/ | 23 |
|
||||
| Estado SIMCO | Adaptado |
|
||||
|
||||
## Migracion EPIC-008
|
||||
|
||||
- [x] Migracion desde workspace-v1-bckp (EPIC-004/005)
|
||||
- [x] Adaptacion SIMCO (EPIC-008)
|
||||
- [x] docs/_MAP.md creado
|
||||
- [x] PROJECT-STATUS.md creado
|
||||
- [x] HERENCIA-SIMCO.md verificado
|
||||
- [x] CONTEXTO-PROYECTO.md verificado
|
||||
|
||||
## Historial de Cambios
|
||||
|
||||
| Fecha | Cambio | EPIC |
|
||||
|-------|--------|------|
|
||||
| 2026-01-04 | Adaptacion SIMCO completada | EPIC-008 |
|
||||
|
||||
---
|
||||
|
||||
**Generado por:** EPIC-008 adapt-simco.sh
|
||||
38
orchestration/PROXIMA-ACCION.md
Normal file
38
orchestration/PROXIMA-ACCION.md
Normal file
@ -0,0 +1,38 @@
|
||||
# Próxima Acción - ERP Vidrio Templado
|
||||
|
||||
## Estado Actual
|
||||
**Fecha:** Diciembre 2025
|
||||
**Progreso:** 0% (En planificación)
|
||||
|
||||
## Prerrequisitos
|
||||
|
||||
Este proyecto requiere que **erp-core** esté completado primero:
|
||||
- [ ] Módulo auth de erp-core
|
||||
- [ ] Módulo users de erp-core
|
||||
- [ ] Módulo tenants de erp-core
|
||||
- [ ] Módulo inventory base de erp-core
|
||||
|
||||
## Tarea Prioritaria (Cuando esté listo)
|
||||
|
||||
### Definir Especificaciones del MVP
|
||||
|
||||
**Objetivo:** Documentar requerimientos y especificaciones técnicas del MVP.
|
||||
|
||||
**Subtareas:**
|
||||
1. [ ] Crear `/docs/00-vision-general/README.md`
|
||||
2. [ ] Definir módulos MVP en `/docs/01-fase-mvp/`
|
||||
3. [ ] Diseñar schemas de BD en `/docs/02-modelado/`
|
||||
4. [ ] Crear historias de usuario
|
||||
5. [ ] Definir integraciones necesarias
|
||||
|
||||
## Backlog Inicial
|
||||
|
||||
| Prioridad | Tarea | Estado |
|
||||
|-----------|-------|--------|
|
||||
| Alta | Definir MVP | Pendiente |
|
||||
| Alta | Diseñar schemas | Pendiente |
|
||||
| Media | Documentar procesos | Pendiente |
|
||||
| Baja | Integraciones | Pendiente |
|
||||
|
||||
---
|
||||
*Proyecto: ERP Vidrio Templado - En planificación*
|
||||
146
orchestration/directivas/DIRECTIVA-CONTROL-CALIDAD.md
Normal file
146
orchestration/directivas/DIRECTIVA-CONTROL-CALIDAD.md
Normal file
@ -0,0 +1,146 @@
|
||||
# DIRECTIVA-CONTROL-CALIDAD
|
||||
|
||||
**Version:** 1.0
|
||||
**Fecha:** 2025-12-08
|
||||
**Vertical:** Vidrio Templado
|
||||
**Nivel:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## PROPOSITO
|
||||
|
||||
Define las directrices para el control de calidad en la produccion de vidrio templado.
|
||||
|
||||
---
|
||||
|
||||
## ALCANCE
|
||||
|
||||
- Pruebas de calidad obligatorias
|
||||
- Certificaciones de producto
|
||||
- Manejo de rechazos
|
||||
- Trazabilidad de defectos
|
||||
|
||||
---
|
||||
|
||||
## NORMATIVAS APLICABLES
|
||||
|
||||
### NMX-EC-12543-1-IMNC-2004
|
||||
- Vidrio de seguridad para construccion
|
||||
- Pruebas de fragmentacion
|
||||
- Criterios de aceptacion
|
||||
|
||||
### NMX-W-182-SCFI-2005
|
||||
- Vidrio templado
|
||||
- Especificaciones de resistencia
|
||||
- Tolerancias dimensionales
|
||||
|
||||
---
|
||||
|
||||
## PRUEBAS OBLIGATORIAS
|
||||
|
||||
### 1. Prueba de Fragmentacion
|
||||
|
||||
**Cuando:** Por cada lote de produccion (minimo 1 pieza por hornada)
|
||||
|
||||
**Criterio:** El numero de fragmentos en un area de 50x50mm debe estar entre 40 y 400.
|
||||
|
||||
**Registro:**
|
||||
- Numero de fragmentos
|
||||
- Foto de evidencia
|
||||
- Firma del inspector
|
||||
|
||||
### 2. Inspeccion Visual
|
||||
|
||||
**Cuando:** Cada pieza antes de liberacion
|
||||
|
||||
**Defectos a verificar:**
|
||||
- Burbujas
|
||||
- Rayaduras
|
||||
- Manchas
|
||||
- Deformaciones
|
||||
|
||||
---
|
||||
|
||||
## FLUJO DE CALIDAD
|
||||
|
||||
```
|
||||
Pieza producida
|
||||
|
|
||||
Inspeccion visual
|
||||
|
|
||||
+---+---+
|
||||
| |
|
||||
OK Defecto
|
||||
| |
|
||||
v v
|
||||
Prueba fragmentacion Registro de defecto
|
||||
| |
|
||||
+---+---+ v
|
||||
| | Reclasificacion
|
||||
OK Falla o
|
||||
| | Desperdicio
|
||||
v v
|
||||
Aprobado Rechazo
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## CERTIFICADOS
|
||||
|
||||
### Contenido del Certificado
|
||||
|
||||
1. Numero de lote
|
||||
2. Fecha de produccion
|
||||
3. Tipo de vidrio
|
||||
4. Espesor
|
||||
5. Resultados de pruebas
|
||||
6. Firma digital
|
||||
|
||||
### Generacion Automatica
|
||||
|
||||
Los certificados se generan automaticamente al aprobar el lote en el sistema.
|
||||
|
||||
---
|
||||
|
||||
## MODELO DE DATOS
|
||||
|
||||
### quality_tests
|
||||
```yaml
|
||||
campos:
|
||||
- test_type: enum(fragmentacion, visual, dimensional)
|
||||
- result: enum(pass, fail, pending)
|
||||
- fragments_count: integer (para fragmentacion)
|
||||
- notes: text
|
||||
- inspector_id: FK -> auth.users
|
||||
- attachments: array (fotos)
|
||||
```
|
||||
|
||||
### certifications
|
||||
```yaml
|
||||
campos:
|
||||
- lot_id: FK -> inventory.lots
|
||||
- certificate_number: string
|
||||
- issue_date: timestamp
|
||||
- pdf_url: string
|
||||
- digital_signature: text
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## INTEGRACION CON CORE
|
||||
|
||||
- Tracking via SPEC-MAIL-THREAD-TRACKING
|
||||
- Attachments via sistema de archivos del core
|
||||
- Reportes via SPEC-REPORTES-FINANCIEROS (adaptado)
|
||||
|
||||
---
|
||||
|
||||
## REFERENCIAS
|
||||
|
||||
- DIRECTIVA-PRODUCCION-VIDRIO.md
|
||||
- HERENCIA-SPECS-ERP-CORE.md
|
||||
- Normativas NMX aplicables
|
||||
|
||||
---
|
||||
|
||||
**Documento de directiva oficial**
|
||||
129
orchestration/directivas/DIRECTIVA-PRODUCCION-VIDRIO.md
Normal file
129
orchestration/directivas/DIRECTIVA-PRODUCCION-VIDRIO.md
Normal file
@ -0,0 +1,129 @@
|
||||
# DIRECTIVA-PRODUCCION-VIDRIO
|
||||
|
||||
**Version:** 1.0
|
||||
**Fecha:** 2025-12-08
|
||||
**Vertical:** Vidrio Templado
|
||||
**Nivel:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## PROPOSITO
|
||||
|
||||
Define las directrices para la implementacion del modulo de produccion de vidrio templado.
|
||||
|
||||
---
|
||||
|
||||
## ALCANCE
|
||||
|
||||
Esta directiva aplica a:
|
||||
- Ordenes de produccion
|
||||
- Procesos de corte y templado
|
||||
- Gestion de hornos
|
||||
- Control de calidad en linea
|
||||
|
||||
---
|
||||
|
||||
## PRINCIPIOS
|
||||
|
||||
### 1. Trazabilidad Completa
|
||||
|
||||
Todo el proceso de produccion debe ser rastreable desde la materia prima hasta el producto terminado:
|
||||
|
||||
```
|
||||
Materia Prima (lote) -> Corte -> Templado (hornada) -> Producto Terminado
|
||||
```
|
||||
|
||||
### 2. Control de Calidad Integrado
|
||||
|
||||
- Cada pieza debe tener su registro de calidad
|
||||
- Las pruebas de fragmentacion son obligatorias
|
||||
- Los certificados se generan automaticamente
|
||||
|
||||
### 3. Optimizacion de Hornadas
|
||||
|
||||
- Maximizar el uso del horno
|
||||
- Agrupar piezas por espesor y tipo
|
||||
- Registro de parametros de hornada
|
||||
|
||||
---
|
||||
|
||||
## FLUJO DE PRODUCCION
|
||||
|
||||
```
|
||||
1. Cotizacion aprobada
|
||||
|
|
||||
2. Orden de produccion generada
|
||||
|
|
||||
3. Corte de vidrio
|
||||
|-- Registro de lote de materia prima
|
||||
|-- Medidas y cantidad
|
||||
|
|
||||
4. Proceso de templado
|
||||
|-- Asignacion a hornada
|
||||
|-- Parametros de temperatura/tiempo
|
||||
|
|
||||
5. Control de calidad
|
||||
|-- Pruebas de fragmentacion
|
||||
|-- Inspeccion visual
|
||||
|
|
||||
6. Producto terminado
|
||||
|-- Etiquetado
|
||||
|-- Almacenamiento
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## MODELO DE DATOS
|
||||
|
||||
### Entidades Principales
|
||||
|
||||
1. **production_orders**: Ordenes de produccion
|
||||
2. **production_lines**: Piezas a producir
|
||||
3. **tempering_processes**: Hornadas
|
||||
4. **quality_tests**: Pruebas de calidad
|
||||
|
||||
### Relaciones con Core
|
||||
|
||||
- `production_orders` -> `inventory.products` (producto)
|
||||
- `production_lines` -> `inventory.lots` (trazabilidad)
|
||||
- `quality_tests` -> Core tracking (historial)
|
||||
|
||||
---
|
||||
|
||||
## ESTADOS DE ORDEN
|
||||
|
||||
```
|
||||
draft -> confirmed -> in_production -> quality_check -> done
|
||||
| |
|
||||
v v
|
||||
cancelled rejected
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## INTEGRACION CON ERP CORE
|
||||
|
||||
### Herencia de Specs
|
||||
|
||||
| Spec Core | Aplicacion |
|
||||
|-----------|------------|
|
||||
| SPEC-VALORACION-INVENTARIO | Costeo de produccion |
|
||||
| SPEC-TRAZABILIDAD-LOTES-SERIES | Lotes de produccion |
|
||||
| SPEC-MAIL-THREAD-TRACKING | Historial de cambios |
|
||||
|
||||
### APIs a Extender
|
||||
|
||||
- `ProductService` -> `GlassProductService`
|
||||
- `InventoryService` -> `GlassInventoryService`
|
||||
|
||||
---
|
||||
|
||||
## REFERENCIAS
|
||||
|
||||
- HERENCIA-SPECS-ERP-CORE.md
|
||||
- DATABASE_INVENTORY.yml
|
||||
- MASTER_INVENTORY.yml
|
||||
|
||||
---
|
||||
|
||||
**Documento de directiva oficial**
|
||||
156
orchestration/environment/PROJECT-ENV-CONFIG.yml
Normal file
156
orchestration/environment/PROJECT-ENV-CONFIG.yml
Normal file
@ -0,0 +1,156 @@
|
||||
# =============================================================================
|
||||
# PROJECT-ENV-CONFIG.yml - ERP VIDRIO TEMPLADO
|
||||
# =============================================================================
|
||||
# Vertical de ERP-Suite especializada en Manufactura de Vidrio
|
||||
# Actualizado: 2025-12-08
|
||||
# Referencia: ~/workspace/core/devtools/environment/DEVENV-PORTS.md
|
||||
# =============================================================================
|
||||
|
||||
project:
|
||||
name: "ERP-VIDRIO-TEMPLADO"
|
||||
code: "VT"
|
||||
description: "Sistema para Manufactura de Vidrio Templado y Laminado"
|
||||
type: "vertical"
|
||||
level: "2B.2"
|
||||
status: "planning"
|
||||
parent: "erp-suite"
|
||||
|
||||
paths:
|
||||
root: "/home/isem/workspace/projects/erp-suite/apps/verticales/vidrio-templado"
|
||||
backend: "backend/"
|
||||
frontend: "frontend/"
|
||||
database: "database/"
|
||||
docs: "docs/"
|
||||
orchestration: "orchestration/"
|
||||
|
||||
# =============================================================================
|
||||
# PUERTOS (Según DEVENV-PORTS.md)
|
||||
# =============================================================================
|
||||
ports:
|
||||
backend: 3200
|
||||
frontend: 5175
|
||||
database: 5434
|
||||
redis: 6381
|
||||
|
||||
# =============================================================================
|
||||
# BASE DE DATOS
|
||||
# =============================================================================
|
||||
database:
|
||||
type: "postgresql"
|
||||
host: "localhost"
|
||||
port: 5434
|
||||
name: "vidrio_templado_db"
|
||||
user: "vidrio_user"
|
||||
|
||||
schemas:
|
||||
core_inherited: 12 # Schemas heredados de erp-core
|
||||
vertical_specific:
|
||||
- glass # Tipos vidrio, espesores, cotizaciones
|
||||
- production # Órdenes, corte, templado
|
||||
- quality # Tests, certificaciones, defectos
|
||||
- logistics # Despachos, rutas
|
||||
|
||||
migration:
|
||||
tool: "typeorm"
|
||||
directory: "database/migrations/"
|
||||
|
||||
# =============================================================================
|
||||
# STACK TECNOLOGICO
|
||||
# =============================================================================
|
||||
stack:
|
||||
runtime: "Node.js 20+"
|
||||
language: "TypeScript 5.3+"
|
||||
backend:
|
||||
framework: "Express.js"
|
||||
orm: "TypeORM 0.3.17"
|
||||
frontend:
|
||||
framework: "React 18"
|
||||
build: "Vite"
|
||||
ui: "Tailwind CSS + shadcn/ui"
|
||||
|
||||
# =============================================================================
|
||||
# HERENCIA DEL CORE
|
||||
# =============================================================================
|
||||
core_inheritance:
|
||||
version: "0.6.0"
|
||||
tables_inherited: 97
|
||||
modules_inherited:
|
||||
- auth
|
||||
- users
|
||||
- roles
|
||||
- tenants
|
||||
|
||||
specs_applicable: 4
|
||||
specs_implemented: 0
|
||||
specs_detail:
|
||||
- SPEC-VALORACION-INVENTARIO
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
- SPEC-PRICING-RULES
|
||||
- SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN
|
||||
|
||||
# =============================================================================
|
||||
# MODULOS DE LA VERTICAL
|
||||
# =============================================================================
|
||||
modules:
|
||||
total: 8
|
||||
list:
|
||||
- code: VT-001
|
||||
name: Fundamentos
|
||||
priority: P0
|
||||
status: pending
|
||||
- code: VT-002
|
||||
name: Cotizaciones
|
||||
priority: P0
|
||||
status: pending
|
||||
- code: VT-003
|
||||
name: Producción
|
||||
priority: P0
|
||||
status: pending
|
||||
- code: VT-004
|
||||
name: Inventario
|
||||
priority: P0
|
||||
status: pending
|
||||
- code: VT-005
|
||||
name: Corte
|
||||
priority: P1
|
||||
status: pending
|
||||
- code: VT-006
|
||||
name: Templado
|
||||
priority: P1
|
||||
status: pending
|
||||
- code: VT-007
|
||||
name: Calidad
|
||||
priority: P0
|
||||
status: pending
|
||||
- code: VT-008
|
||||
name: Despacho
|
||||
priority: P1
|
||||
status: pending
|
||||
|
||||
# =============================================================================
|
||||
# ARCHIVOS DE ENTORNO
|
||||
# =============================================================================
|
||||
env_files:
|
||||
template: "orchestration/environment/.env.example"
|
||||
backend: "backend/.env"
|
||||
frontend: "frontend/.env"
|
||||
|
||||
env_variables:
|
||||
required:
|
||||
- NODE_ENV
|
||||
- PORT
|
||||
- DATABASE_URL
|
||||
- JWT_SECRET
|
||||
optional:
|
||||
- LOG_LEVEL
|
||||
- CORS_ORIGIN
|
||||
|
||||
# =============================================================================
|
||||
# NOTAS
|
||||
# =============================================================================
|
||||
notes: |
|
||||
- Vertical especializada en industria de vidrio templado
|
||||
- Incluye calculador de vidrio (tipo × espesor × proceso)
|
||||
- Trazabilidad lámina → pieza terminada
|
||||
- Control de procesos de corte y templado
|
||||
- Puertos asignados según DEVENV-PORTS.md (rango 3200)
|
||||
104
orchestration/inventarios/BACKEND_INVENTORY.yml
Normal file
104
orchestration/inventarios/BACKEND_INVENTORY.yml
Normal file
@ -0,0 +1,104 @@
|
||||
# BACKEND INVENTORY - ERP Vidrio Templado (Vertical)
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
|
||||
proyecto:
|
||||
nombre: ERP Vidrio Templado
|
||||
codigo: vidrio-templado
|
||||
nivel: 2B.2 (Vertical)
|
||||
estado: Planificacion
|
||||
|
||||
herencia_core:
|
||||
backend: erp-core
|
||||
servicios_heredados: 45+
|
||||
referencia: "apps/erp-core/backend/"
|
||||
|
||||
# ============================================
|
||||
# SERVICIOS PLANIFICADOS
|
||||
# ============================================
|
||||
servicios_planificados:
|
||||
produccion:
|
||||
- nombre: ProductionOrderService
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
endpoints:
|
||||
- POST /api/v1/vidrio/production-orders
|
||||
- GET /api/v1/vidrio/production-orders
|
||||
- GET /api/v1/vidrio/production-orders/:id
|
||||
- PATCH /api/v1/vidrio/production-orders/:id
|
||||
- POST /api/v1/vidrio/production-orders/:id/start
|
||||
- POST /api/v1/vidrio/production-orders/:id/complete
|
||||
|
||||
- nombre: GlassTypeService
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
endpoints:
|
||||
- GET /api/v1/vidrio/glass-types
|
||||
- POST /api/v1/vidrio/glass-types
|
||||
- GET /api/v1/vidrio/glass-types/:id
|
||||
|
||||
calidad:
|
||||
- nombre: QualityTestService
|
||||
modulo: VT-002
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
endpoints:
|
||||
- POST /api/v1/vidrio/quality-tests
|
||||
- GET /api/v1/vidrio/quality-tests
|
||||
- POST /api/v1/vidrio/quality-tests/:id/results
|
||||
|
||||
- nombre: CertificationService
|
||||
modulo: VT-002
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
endpoints:
|
||||
- GET /api/v1/vidrio/certifications
|
||||
- POST /api/v1/vidrio/certifications
|
||||
|
||||
inventario:
|
||||
- nombre: GlassStockService
|
||||
modulo: VT-003
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
extiende: InventoryService (core)
|
||||
endpoints:
|
||||
- GET /api/v1/vidrio/stock
|
||||
- GET /api/v1/vidrio/stock/by-type
|
||||
- POST /api/v1/vidrio/stock/movements
|
||||
|
||||
maquinaria:
|
||||
- nombre: FurnaceService
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
endpoints:
|
||||
- GET /api/v1/vidrio/furnaces
|
||||
- POST /api/v1/vidrio/furnaces/:id/batches
|
||||
- GET /api/v1/vidrio/furnaces/:id/status
|
||||
|
||||
cotizaciones:
|
||||
- nombre: GlassQuotationService
|
||||
modulo: VT-006
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
extiende: SaleOrderService (core)
|
||||
endpoints:
|
||||
- POST /api/v1/vidrio/quotations
|
||||
- GET /api/v1/vidrio/quotations
|
||||
- POST /api/v1/vidrio/quotations/:id/calculate
|
||||
|
||||
# ============================================
|
||||
# RESUMEN
|
||||
# ============================================
|
||||
resumen:
|
||||
servicios_heredados: 45+
|
||||
servicios_planificados: 7
|
||||
endpoints_planificados: 20
|
||||
estado_general: PLANIFICACION
|
||||
ultima_actualizacion: 2025-12-08
|
||||
|
||||
referencias:
|
||||
core_backend: "apps/erp-core/backend/"
|
||||
master_inventory: "./MASTER_INVENTORY.yml"
|
||||
208
orchestration/inventarios/DATABASE_INVENTORY.yml
Normal file
208
orchestration/inventarios/DATABASE_INVENTORY.yml
Normal file
@ -0,0 +1,208 @@
|
||||
# DATABASE INVENTORY - ERP Vidrio Templado (Vertical)
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
|
||||
proyecto:
|
||||
nombre: ERP Vidrio Templado
|
||||
codigo: vidrio-templado
|
||||
nivel: 2B.2 (Vertical)
|
||||
estado: Planificacion
|
||||
|
||||
herencia_core:
|
||||
base_de_datos: erp-core
|
||||
version_core: "1.2.0"
|
||||
tablas_heredadas: 144 # Verificado 2025-12-09 según conteo real DDL
|
||||
schemas_heredados:
|
||||
- nombre: auth
|
||||
tablas: 26 # Autenticación, MFA, OAuth, API Keys
|
||||
- nombre: core
|
||||
tablas: 12 # Partners (clientes), catálogos, UoM
|
||||
- nombre: financial
|
||||
tablas: 15 # Contabilidad, facturas, pagos
|
||||
- nombre: inventory
|
||||
tablas: 20 # Vidrios, materiales, stock
|
||||
- nombre: purchase
|
||||
tablas: 8 # Compras de materiales
|
||||
- nombre: sales
|
||||
tablas: 10 # Cotizaciones, órdenes
|
||||
- nombre: projects
|
||||
tablas: 10 # Proyectos de instalación
|
||||
- nombre: analytics
|
||||
tablas: 7 # Centros de costo
|
||||
- nombre: system
|
||||
tablas: 13 # Mensajes, notificaciones, logs
|
||||
- nombre: billing
|
||||
tablas: 11 # SaaS (opcional)
|
||||
- nombre: crm
|
||||
tablas: 6 # Clientes potenciales (opcional)
|
||||
- nombre: hr
|
||||
tablas: 6 # Operadores, técnicos
|
||||
referencia_ddl: "apps/erp-core/database/ddl/"
|
||||
documento_herencia: "../database/HERENCIA-ERP-CORE.md"
|
||||
variable_rls: "app.current_tenant_id"
|
||||
|
||||
# ============================================
|
||||
# SCHEMAS ESPECIFICOS DE LA VERTICAL
|
||||
# ============================================
|
||||
schemas_especificos:
|
||||
- nombre: vidrio
|
||||
descripcion: Schema para operaciones de vidrio templado
|
||||
estado: PLANIFICADO
|
||||
modulos_relacionados: [VT-001, VT-002, VT-003, VT-004, VT-005, VT-006]
|
||||
|
||||
# ============================================
|
||||
# TABLAS PLANIFICADAS (EXTENSIONES)
|
||||
# ============================================
|
||||
tablas_planificadas:
|
||||
produccion:
|
||||
- nombre: vidrio.production_orders
|
||||
descripcion: Ordenes de produccion de vidrio
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.production_lines
|
||||
descripcion: Lineas de produccion (piezas)
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.glass_types
|
||||
descripcion: Catalogo de tipos de vidrio
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.tempering_processes
|
||||
descripcion: Procesos de templado
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
calidad:
|
||||
- nombre: vidrio.quality_tests
|
||||
descripcion: Pruebas de calidad
|
||||
modulo: VT-002
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.quality_test_results
|
||||
descripcion: Resultados de pruebas
|
||||
modulo: VT-002
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.certifications
|
||||
descripcion: Certificaciones de producto
|
||||
modulo: VT-002
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
inventario_especializado:
|
||||
- nombre: vidrio.raw_materials
|
||||
descripcion: Materias primas de vidrio
|
||||
modulo: VT-003
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
hereda_de: inventory.products
|
||||
|
||||
- nombre: vidrio.glass_stock
|
||||
descripcion: Stock de vidrio por tipo/medida
|
||||
modulo: VT-003
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
maquinaria:
|
||||
- nombre: vidrio.furnaces
|
||||
descripcion: Hornos de templado
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.furnace_batches
|
||||
descripcion: Lotes de hornada
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: vidrio.cutting_machines
|
||||
descripcion: Maquinas de corte
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
trazabilidad:
|
||||
- nombre: vidrio.glass_lots
|
||||
descripcion: Lotes de vidrio
|
||||
modulo: VT-005
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
hereda_de: inventory.lots
|
||||
|
||||
- nombre: vidrio.lot_traceability
|
||||
descripcion: Trazabilidad de lotes
|
||||
modulo: VT-005
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
cotizaciones:
|
||||
- nombre: vidrio.quotations
|
||||
descripcion: Cotizaciones de vidrio
|
||||
modulo: VT-006
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
hereda_de: sales.sale_orders
|
||||
|
||||
- nombre: vidrio.quotation_lines
|
||||
descripcion: Lineas de cotizacion (piezas)
|
||||
modulo: VT-006
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
# ============================================
|
||||
# SPECS DEL CORE A IMPLEMENTAR
|
||||
# ============================================
|
||||
specs_core_requeridas:
|
||||
- spec: SPEC-VALORACION-INVENTARIO.md
|
||||
prioridad: ALTA
|
||||
aplicacion: Valoracion de materia prima y producto terminado
|
||||
estado: PENDIENTE
|
||||
|
||||
- spec: SPEC-TRAZABILIDAD-LOTES-SERIES.md
|
||||
prioridad: ALTA
|
||||
aplicacion: Trazabilidad de lotes de vidrio
|
||||
estado: PENDIENTE
|
||||
|
||||
- spec: SPEC-INVENTARIOS-CICLICOS.md
|
||||
prioridad: MEDIA
|
||||
aplicacion: Conteos de inventario de vidrio
|
||||
estado: PENDIENTE
|
||||
|
||||
# ============================================
|
||||
# POLITICA DE CARGA LIMPIA
|
||||
# ============================================
|
||||
clean_load_policy:
|
||||
referencia: "core/orchestration/directivas/legacy/DIRECTIVA-POLITICA-CARGA-LIMPIA.md"
|
||||
principios:
|
||||
- DDL-First: Los archivos DDL son la fuente de verdad
|
||||
- Herencia: Extiende los schemas del core, no duplica
|
||||
- Validacion: Siempre ejecutar carga limpia despues de cambios
|
||||
prohibiciones:
|
||||
- Ejecutar ALTER TABLE directo sin actualizar DDL
|
||||
- Crear migrations para cambios de schema
|
||||
- Duplicar tablas del core
|
||||
|
||||
# ============================================
|
||||
# RESUMEN
|
||||
# ============================================
|
||||
resumen:
|
||||
tablas_heredadas: 144
|
||||
tablas_especificas_planificadas: 16
|
||||
schemas_especificos: 1
|
||||
estado_general: PLANIFICACION
|
||||
ultima_actualizacion: 2025-12-08
|
||||
|
||||
referencias:
|
||||
core_database: "apps/erp-core/database/"
|
||||
core_inventory: "apps/erp-core/orchestration/inventarios/DATABASE_INVENTORY.yml"
|
||||
master_inventory: "./MASTER_INVENTORY.yml"
|
||||
176
orchestration/inventarios/DEPENDENCY_GRAPH.yml
Normal file
176
orchestration/inventarios/DEPENDENCY_GRAPH.yml
Normal file
@ -0,0 +1,176 @@
|
||||
# DEPENDENCY GRAPH - ERP Vidrio Templado
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
# Nivel: 2B.2 (Vertical)
|
||||
|
||||
version: 1.0.0
|
||||
ultima_actualizacion: 2025-12-08
|
||||
estado: Planificacion
|
||||
|
||||
# ============================================
|
||||
# RESUMEN
|
||||
# ============================================
|
||||
|
||||
resumen:
|
||||
total_modulos: 6
|
||||
modulos_core_heredados: 6
|
||||
dependencias_internas: 8
|
||||
dependencias_externas: 6
|
||||
|
||||
# ============================================
|
||||
# DEPENDENCIAS DE MODULOS PROPIOS
|
||||
# ============================================
|
||||
|
||||
modulos_verticales:
|
||||
VT-001_production:
|
||||
depende_de:
|
||||
internos:
|
||||
- VT-003_inventory # Para verificar stock de materia prima
|
||||
- VT-004_machinery # Para asignar hornos
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-002_users
|
||||
- MGN-004_tenants
|
||||
- MGN-007_audit
|
||||
|
||||
VT-002_quality:
|
||||
depende_de:
|
||||
internos:
|
||||
- VT-001_production # Para inspeccionar ordenes
|
||||
- VT-005_traceability # Para vincular certificados a lotes
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-002_users
|
||||
- MGN-007_audit
|
||||
|
||||
VT-003_inventory:
|
||||
depende_de:
|
||||
internos: [] # Modulo base, sin dependencias internas
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-004_tenants
|
||||
- MGN-005_catalogs
|
||||
- MGN-011_inventory # Heredado y extendido
|
||||
|
||||
VT-004_machinery:
|
||||
depende_de:
|
||||
internos: [] # Modulo base para equipos
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-004_tenants
|
||||
- MGN-007_audit
|
||||
|
||||
VT-005_traceability:
|
||||
depende_de:
|
||||
internos:
|
||||
- VT-001_production # Para rastrear ordenes
|
||||
- VT-002_quality # Para vincular inspecciones
|
||||
- VT-004_machinery # Para registrar horno usado
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-007_audit
|
||||
|
||||
VT-006_quotations:
|
||||
depende_de:
|
||||
internos:
|
||||
- VT-003_inventory # Para verificar disponibilidad
|
||||
core:
|
||||
- MGN-001_auth
|
||||
- MGN-002_users
|
||||
- MGN-004_tenants
|
||||
- MGN-005_catalogs
|
||||
|
||||
# ============================================
|
||||
# HERENCIA DE ERP-CORE
|
||||
# ============================================
|
||||
|
||||
modulos_core_heredados:
|
||||
MGN-001_auth:
|
||||
estado: Heredado 100%
|
||||
uso: Autenticacion JWT
|
||||
|
||||
MGN-002_users:
|
||||
estado: Heredado 100%
|
||||
uso: Gestion de usuarios
|
||||
|
||||
MGN-003_roles:
|
||||
estado: Heredado 100%
|
||||
uso: RBAC
|
||||
|
||||
MGN-004_tenants:
|
||||
estado: Extendido
|
||||
uso: Multi-planta
|
||||
extension: Campos especificos de planta de produccion
|
||||
|
||||
MGN-005_catalogs:
|
||||
estado: Extendido
|
||||
uso: Catalogos de tipos de vidrio
|
||||
extension: Catalogos especializados
|
||||
|
||||
MGN-007_audit:
|
||||
estado: Heredado 100%
|
||||
uso: Auditoria de operaciones
|
||||
|
||||
# ============================================
|
||||
# GRAFO VISUAL (ASCII)
|
||||
# ============================================
|
||||
|
||||
grafo_visual: |
|
||||
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ ERP-CORE (Heredado) │
|
||||
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
|
||||
│ │AUTH │ │USERS│ │ROLES│ │TENANT│ │CATAL│ │AUDIT│ │
|
||||
│ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ │
|
||||
└─────┼───────┼───────┼───────┼───────┼───────┼──────────┘
|
||||
│ │ │ │ │ │
|
||||
▼ ▼ ▼ ▼ ▼ ▼
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ VERTICAL VIDRIO TEMPLADO │
|
||||
│ │
|
||||
│ ┌────────┐ ┌────────┐ ┌────────┐ │
|
||||
│ │VT-003 │ │VT-004 │ │VT-006 │ │
|
||||
│ │INVENTORY◄───┤MACHINERY│ │QUOTATION│ │
|
||||
│ └────┬───┘ └────┬───┘ └────┬───┘ │
|
||||
│ │ │ │ │
|
||||
│ ▼ ▼ │ │
|
||||
│ ┌────────┐ ┌────────┐ │ │
|
||||
│ │VT-001 ├───►│VT-002 │ │ │
|
||||
│ │PRODUCTION │QUALITY │ │ │
|
||||
│ └────┬───┘ └────┬───┘ │ │
|
||||
│ │ │ │ │
|
||||
│ ▼ ▼ │ │
|
||||
│ ┌─────────────────────┐ │ │
|
||||
│ │ VT-005 │◄─────────┘ │
|
||||
│ │ TRACEABILITY │ │
|
||||
│ └─────────────────────┘ │
|
||||
│ │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
|
||||
# ============================================
|
||||
# ORDEN DE IMPLEMENTACION SUGERIDO
|
||||
# ============================================
|
||||
|
||||
orden_implementacion:
|
||||
fase_1_base:
|
||||
- VT-003_inventory # Sin dependencias internas
|
||||
- VT-004_machinery # Sin dependencias internas
|
||||
|
||||
fase_2_core:
|
||||
- VT-001_production # Depende de inventory y machinery
|
||||
- VT-006_quotations # Depende de inventory
|
||||
|
||||
fase_3_calidad:
|
||||
- VT-002_quality # Depende de production
|
||||
|
||||
fase_4_trazabilidad:
|
||||
- VT-005_traceability # Depende de production, quality, machinery
|
||||
|
||||
# ============================================
|
||||
# NOTAS
|
||||
# ============================================
|
||||
|
||||
notas:
|
||||
- "Este grafo define dependencias PLANIFICADAS"
|
||||
- "Implementacion pendiente"
|
||||
- "Seguir orden de implementacion sugerido"
|
||||
102
orchestration/inventarios/FRONTEND_INVENTORY.yml
Normal file
102
orchestration/inventarios/FRONTEND_INVENTORY.yml
Normal file
@ -0,0 +1,102 @@
|
||||
# FRONTEND INVENTORY - ERP Vidrio Templado (Vertical)
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
|
||||
proyecto:
|
||||
nombre: ERP Vidrio Templado
|
||||
codigo: vidrio-templado
|
||||
nivel: 2B.2 (Vertical)
|
||||
estado: Planificacion
|
||||
|
||||
herencia_core:
|
||||
frontend: erp-core
|
||||
componentes_heredados: 80+
|
||||
referencia: "apps/erp-core/frontend/"
|
||||
|
||||
# ============================================
|
||||
# COMPONENTES PLANIFICADOS
|
||||
# ============================================
|
||||
componentes_planificados:
|
||||
produccion:
|
||||
- nombre: ProductionOrderList
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: ProductionOrderForm
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: ProductionOrderDetail
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: GlassTypeSelector
|
||||
modulo: VT-001
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
calidad:
|
||||
- nombre: QualityTestForm
|
||||
modulo: VT-002
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: QualityTestResults
|
||||
modulo: VT-002
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: CertificationViewer
|
||||
modulo: VT-002
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
inventario:
|
||||
- nombre: GlassStockDashboard
|
||||
modulo: VT-003
|
||||
prioridad: P0
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: StockByTypeChart
|
||||
modulo: VT-003
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
maquinaria:
|
||||
- nombre: FurnaceMonitor
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
- nombre: FurnaceBatchForm
|
||||
modulo: VT-004
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
cotizaciones:
|
||||
- nombre: GlassQuotationForm
|
||||
modulo: VT-006
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
extiende: QuotationForm (core)
|
||||
|
||||
- nombre: GlassPieceCalculator
|
||||
modulo: VT-006
|
||||
prioridad: P1
|
||||
estado: NO_INICIADO
|
||||
|
||||
# ============================================
|
||||
# RESUMEN
|
||||
# ============================================
|
||||
resumen:
|
||||
componentes_heredados: 80+
|
||||
componentes_planificados: 13
|
||||
estado_general: PLANIFICACION
|
||||
ultima_actualizacion: 2025-12-08
|
||||
|
||||
referencias:
|
||||
core_frontend: "apps/erp-core/frontend/"
|
||||
master_inventory: "./MASTER_INVENTORY.yml"
|
||||
168
orchestration/inventarios/MASTER_INVENTORY.yml
Normal file
168
orchestration/inventarios/MASTER_INVENTORY.yml
Normal file
@ -0,0 +1,168 @@
|
||||
# MASTER INVENTORY - ERP Vidrio Templado (Vertical)
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
|
||||
proyecto:
|
||||
nombre: ERP Vidrio Templado
|
||||
codigo: VT
|
||||
nivel: 2B.2 (Vertical)
|
||||
estado: EPICAS_COMPLETAS
|
||||
version: 0.3.0
|
||||
path: /home/isem/workspace/projects/erp-suite/apps/verticales/vidrio-templado
|
||||
herencia:
|
||||
core_version: "0.6.0"
|
||||
tablas_heredadas: 144
|
||||
schemas_heredados: 12
|
||||
specs_aplicables: 25
|
||||
specs_implementadas: 0
|
||||
|
||||
resumen_general:
|
||||
total_modulos: 8
|
||||
total_schemas_planificados: 1
|
||||
total_tablas_planificadas: 14
|
||||
total_tablas_implementadas: 14
|
||||
total_servicios_backend: 0
|
||||
total_componentes_frontend: 0
|
||||
story_points_estimados: 259
|
||||
test_coverage: N/A
|
||||
ultima_actualizacion: 2025-12-09
|
||||
|
||||
modulos:
|
||||
total: 8
|
||||
lista:
|
||||
- codigo: VT-001
|
||||
nombre: Fundamentos
|
||||
descripcion: Auth, Users, Tenants (hereda 100% core)
|
||||
herencia: 100%
|
||||
prioridad: P0
|
||||
estado: PLANIFICADO
|
||||
sp: 0
|
||||
|
||||
- codigo: VT-002
|
||||
nombre: Cotizaciones
|
||||
descripcion: Cotizador de vidrio por dimensiones
|
||||
herencia: 30%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 34
|
||||
epica: docs/08-epicas/EPIC-VT-002-cotizaciones.md
|
||||
|
||||
- codigo: VT-003
|
||||
nombre: Produccion
|
||||
descripcion: Órdenes de producción
|
||||
herencia: 20%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 42
|
||||
epica: docs/08-epicas/EPIC-VT-003-produccion.md
|
||||
|
||||
- codigo: VT-004
|
||||
nombre: Inventario
|
||||
descripcion: Stock de vidrio y materia prima
|
||||
herencia: 70%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 38
|
||||
epica: docs/08-epicas/EPIC-VT-004-inventario.md
|
||||
|
||||
- codigo: VT-005
|
||||
nombre: Corte
|
||||
descripcion: Optimización de corte (nesting)
|
||||
herencia: 0%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 45
|
||||
epica: docs/08-epicas/EPIC-VT-005-corte.md
|
||||
|
||||
- codigo: VT-006
|
||||
nombre: Templado
|
||||
descripcion: Control de hornos
|
||||
herencia: 0%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 40
|
||||
epica: docs/08-epicas/EPIC-VT-006-templado.md
|
||||
|
||||
- codigo: VT-007
|
||||
nombre: Calidad
|
||||
descripcion: Control de calidad
|
||||
herencia: 40%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 32
|
||||
epica: docs/08-epicas/EPIC-VT-007-calidad.md
|
||||
|
||||
- codigo: VT-008
|
||||
nombre: Despacho
|
||||
descripcion: Logística y entregas
|
||||
herencia: 50%
|
||||
prioridad: P0
|
||||
estado: EPICA_COMPLETA
|
||||
sp: 28
|
||||
epica: docs/08-epicas/EPIC-VT-008-despacho.md
|
||||
|
||||
specs_core:
|
||||
aplicables: 25
|
||||
implementadas: 0
|
||||
por_implementar: 25
|
||||
documento: orchestration/00-guidelines/HERENCIA-SPECS-CORE.md
|
||||
detalle:
|
||||
- spec: SPEC-SISTEMA-SECUENCIAS
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-VALORACION-INVENTARIO
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-SEGURIDAD-API-KEYS-PERMISOS
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-PRICING-RULES
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-MAIL-THREAD-TRACKING
|
||||
estado: PENDIENTE
|
||||
- spec: SPEC-WIZARD-TRANSIENT-MODEL
|
||||
estado: PENDIENTE
|
||||
|
||||
capas:
|
||||
database:
|
||||
inventario: DATABASE_INVENTORY.yml
|
||||
schemas_implementados: [vidrio]
|
||||
tablas_implementadas: 14
|
||||
enums_implementados: 5
|
||||
ddl_files:
|
||||
- init/00-extensions.sql
|
||||
- init/01-create-schemas.sql
|
||||
- init/02-rls-functions.sql
|
||||
- init/03-vidrio-tables.sql
|
||||
estado: DDL_COMPLETO
|
||||
|
||||
backend:
|
||||
inventario: BACKEND_INVENTORY.yml
|
||||
modulos_planificados: 8
|
||||
estado: PLANIFICADO
|
||||
|
||||
frontend:
|
||||
inventario: FRONTEND_INVENTORY.yml
|
||||
paginas_planificadas: 15
|
||||
estado: PLANIFICADO
|
||||
|
||||
dependencias_core:
|
||||
obligatorias:
|
||||
- auth (MGN-001)
|
||||
- users (MGN-002)
|
||||
- roles (MGN-003)
|
||||
- tenants (MGN-004)
|
||||
opcionales:
|
||||
- catalogs (MGN-005)
|
||||
- financial (MGN-010)
|
||||
- inventory (MGN-011)
|
||||
- sales (MGN-013)
|
||||
|
||||
referencias:
|
||||
docs: docs/
|
||||
vision: docs/00-vision-general/VISION-VIDRIO.md
|
||||
modulos: docs/02-definicion-modulos/INDICE-MODULOS.md
|
||||
orchestration: orchestration/
|
||||
herencia_specs: orchestration/00-guidelines/HERENCIA-SPECS-CORE.md
|
||||
herencia_db: database/HERENCIA-ERP-CORE.md
|
||||
94
orchestration/inventarios/README.md
Normal file
94
orchestration/inventarios/README.md
Normal file
@ -0,0 +1,94 @@
|
||||
# Inventarios - ERP Vidrio Templado
|
||||
|
||||
**Version:** 1.0.0
|
||||
**Fecha:** 2025-12-08
|
||||
**Nivel SIMCO:** 2B.2
|
||||
|
||||
---
|
||||
|
||||
## Descripción
|
||||
|
||||
Este directorio contiene los inventarios YAML que sirven como **Single Source of Truth (SSOT)** para el proyecto ERP Vidrio Templado. Estos archivos son la referencia canónica para métricas, trazabilidad y componentes del sistema.
|
||||
|
||||
---
|
||||
|
||||
## Archivos de Inventario
|
||||
|
||||
| Archivo | Descripción | Estado |
|
||||
|---------|-------------|--------|
|
||||
| [MASTER_INVENTORY.yml](./MASTER_INVENTORY.yml) | Inventario maestro con métricas globales | Completo |
|
||||
| [DATABASE_INVENTORY.yml](./DATABASE_INVENTORY.yml) | Inventario de objetos de base de datos | Planificado |
|
||||
| [BACKEND_INVENTORY.yml](./BACKEND_INVENTORY.yml) | Inventario de componentes backend | Planificado |
|
||||
| [FRONTEND_INVENTORY.yml](./FRONTEND_INVENTORY.yml) | Inventario de componentes frontend | Planificado |
|
||||
| [TRACEABILITY_MATRIX.yml](./TRACEABILITY_MATRIX.yml) | Matriz de trazabilidad RF->ET->US | Completo |
|
||||
| [DEPENDENCY_GRAPH.yml](./DEPENDENCY_GRAPH.yml) | Grafo de dependencias entre módulos | Completo |
|
||||
|
||||
---
|
||||
|
||||
## Herencia del Core
|
||||
|
||||
Este proyecto hereda del **ERP Core** (nivel 2B.1):
|
||||
|
||||
| Aspecto | Heredado | Específico |
|
||||
|---------|----------|------------|
|
||||
| **Tablas DB** | ~100 | Planificado |
|
||||
| **Schemas** | 8+ | Planificado |
|
||||
| **Specs** | 3 | - |
|
||||
|
||||
### Specs Heredadas
|
||||
|
||||
1. SPEC-VALORACION-INVENTARIO.md
|
||||
2. SPEC-TRAZABILIDAD-LOTES-SERIES.md
|
||||
3. SPEC-INVENTARIOS-CICLICOS.md
|
||||
|
||||
---
|
||||
|
||||
## Resumen Ejecutivo
|
||||
|
||||
### Métricas del Proyecto
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| **Módulos** | 5 (VT-001 a VT-005) |
|
||||
| **Estado** | PLANIFICACION_COMPLETA |
|
||||
| **Completitud** | 15% |
|
||||
|
||||
### Dominio del Negocio
|
||||
|
||||
- Producción de vidrio templado
|
||||
- Control de calidad
|
||||
- Trazabilidad de lotes
|
||||
- Gestión de hornos y procesos
|
||||
|
||||
---
|
||||
|
||||
## Directivas Específicas
|
||||
|
||||
1. [DIRECTIVA-PRODUCCION-VIDRIO.md](../directivas/DIRECTIVA-PRODUCCION-VIDRIO.md)
|
||||
2. [DIRECTIVA-CONTROL-CALIDAD.md](../directivas/DIRECTIVA-CONTROL-CALIDAD.md)
|
||||
|
||||
---
|
||||
|
||||
## Configuración de Puertos (Planificado)
|
||||
|
||||
| Servicio | Puerto |
|
||||
|----------|--------|
|
||||
| Backend API | 3300 |
|
||||
| Frontend Web | 5176 |
|
||||
|
||||
---
|
||||
|
||||
## Alineación con ERP Core
|
||||
|
||||
Estos inventarios siguen la misma estructura que:
|
||||
- `/erp-core/orchestration/inventarios/` (proyecto padre)
|
||||
|
||||
### Referencias
|
||||
|
||||
- Suite Master: `orchestration/inventarios/SUITE_MASTER_INVENTORY.yml`
|
||||
- Core: `apps/erp-core/orchestration/inventarios/`
|
||||
- Status Global: `orchestration/inventarios/STATUS.yml`
|
||||
|
||||
---
|
||||
|
||||
**Última actualización:** 2025-12-08
|
||||
342
orchestration/inventarios/TRACEABILITY_MATRIX.yml
Normal file
342
orchestration/inventarios/TRACEABILITY_MATRIX.yml
Normal file
@ -0,0 +1,342 @@
|
||||
# =============================================================================
|
||||
# TRACEABILITY MATRIX - ERP Vidrio Templado (Vertical)
|
||||
# =============================================================================
|
||||
# Generado: 2025-12-08
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
# Propósito: Matriz de trazabilidad Módulos -> SPECS -> Componentes
|
||||
# =============================================================================
|
||||
|
||||
metadata:
|
||||
proyecto: ERP Vidrio Templado
|
||||
codigo: VT
|
||||
version: 1.0.0
|
||||
fecha_actualizacion: 2025-12-08
|
||||
base_core: erp-core v0.6.0
|
||||
|
||||
# =============================================================================
|
||||
# RESUMEN GLOBAL
|
||||
# =============================================================================
|
||||
resumen:
|
||||
modulos_total: 8
|
||||
modulos_documentados: 8
|
||||
epicas_completas: 8
|
||||
story_points_total: 259
|
||||
specs_core_aplicables: 25
|
||||
specs_implementadas: 0
|
||||
cobertura_specs: 0%
|
||||
estado: EPICAS_COMPLETAS
|
||||
|
||||
# =============================================================================
|
||||
# TRAZABILIDAD POR MÓDULO
|
||||
# =============================================================================
|
||||
trazabilidad:
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-001: Fundamentos (100% herencia core)
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-001:
|
||||
nombre: Fundamentos
|
||||
herencia: 100%
|
||||
prioridad: P0
|
||||
sp: 0
|
||||
extiende:
|
||||
- MGN-001 (auth)
|
||||
- MGN-002 (users)
|
||||
- MGN-003 (roles)
|
||||
- MGN-004 (tenants)
|
||||
database:
|
||||
heredadas: [auth.users, auth.sessions, auth.roles, tenants.tenants]
|
||||
extensiones: []
|
||||
backend:
|
||||
heredados: [AuthService, UserService, RoleService, TenantService]
|
||||
extensiones: []
|
||||
frontend:
|
||||
heredados: [LoginForm, UserProfile, RoleSelector]
|
||||
extensiones: []
|
||||
specs_core:
|
||||
- SPEC-SISTEMA-SECUENCIAS
|
||||
- SPEC-SEGURIDAD-API-KEYS-PERMISOS
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-002: Cotizaciones
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-002:
|
||||
nombre: Cotizaciones
|
||||
herencia: 30%
|
||||
prioridad: P0
|
||||
sp: 34
|
||||
epica: docs/08-epicas/EPIC-VT-002-cotizaciones.md
|
||||
database:
|
||||
tablas:
|
||||
- glass.quotations
|
||||
- glass.quotation_lines
|
||||
- glass.glass_types
|
||||
- glass.glass_thicknesses
|
||||
- glass.processing_options
|
||||
backend:
|
||||
servicios:
|
||||
- GlassQuotationService
|
||||
- GlassCalculatorService
|
||||
- GlassTypeService
|
||||
frontend:
|
||||
componentes:
|
||||
- GlassQuotationForm
|
||||
- GlassPieceCalculator
|
||||
- DimensionInput
|
||||
- ProcessingSelector
|
||||
- QuotationPreview
|
||||
- QuotationList
|
||||
specs_core:
|
||||
- SPEC-PRICING-RULES (reglas de precio por tipo/espesor)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-003: Producción
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-003:
|
||||
nombre: Produccion
|
||||
herencia: 20%
|
||||
prioridad: P0
|
||||
sp: 42
|
||||
epica: docs/08-epicas/EPIC-VT-003-produccion.md
|
||||
database:
|
||||
tablas:
|
||||
- production.production_orders
|
||||
- production.production_lines
|
||||
- production.production_stages
|
||||
- production.work_stations
|
||||
backend:
|
||||
servicios:
|
||||
- ProductionOrderService
|
||||
- ProductionPlanningService
|
||||
- WorkStationService
|
||||
frontend:
|
||||
componentes:
|
||||
- ProductionOrderList
|
||||
- ProductionOrderForm
|
||||
- ProductionKanban
|
||||
- ProductionScheduler
|
||||
- WorkStationMonitor
|
||||
specs_core:
|
||||
- SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN (seguimiento producción)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-004: Inventario
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-004:
|
||||
nombre: Inventario
|
||||
herencia: 70%
|
||||
prioridad: P0
|
||||
sp: 38
|
||||
epica: docs/08-epicas/EPIC-VT-004-inventario.md
|
||||
database:
|
||||
tablas:
|
||||
- glass.raw_materials
|
||||
- glass.glass_stock
|
||||
- glass.stock_movements
|
||||
backend:
|
||||
servicios:
|
||||
- GlassStockService
|
||||
- RawMaterialService
|
||||
frontend:
|
||||
componentes:
|
||||
- GlassStockDashboard
|
||||
- StockByTypeChart
|
||||
- RawMaterialList
|
||||
- StockAlertPanel
|
||||
specs_core:
|
||||
- SPEC-VALORACION-INVENTARIO
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-005: Corte (Nesting)
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-005:
|
||||
nombre: Corte
|
||||
herencia: 0%
|
||||
prioridad: P1
|
||||
sp: 45
|
||||
epica: docs/08-epicas/EPIC-VT-005-corte.md
|
||||
database:
|
||||
tablas:
|
||||
- production.cutting_plans
|
||||
- production.cutting_patterns
|
||||
- production.material_sheets
|
||||
- production.cutting_waste
|
||||
backend:
|
||||
servicios:
|
||||
- CuttingPlanService
|
||||
- NestingOptimizer
|
||||
- WasteTrackingService
|
||||
frontend:
|
||||
componentes:
|
||||
- CuttingPlanViewer
|
||||
- NestingVisualizer
|
||||
- SheetSelector
|
||||
- WasteReport
|
||||
- OptimizationControls
|
||||
specs_core: []
|
||||
nota: "Algoritmo de nesting propietario para optimización de corte"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-006: Templado
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-006:
|
||||
nombre: Templado
|
||||
herencia: 0%
|
||||
prioridad: P1
|
||||
sp: 40
|
||||
epica: docs/08-epicas/EPIC-VT-006-templado.md
|
||||
database:
|
||||
tablas:
|
||||
- production.furnaces
|
||||
- production.furnace_batches
|
||||
- production.tempering_profiles
|
||||
- production.batch_items
|
||||
backend:
|
||||
servicios:
|
||||
- FurnaceService
|
||||
- TemperingProfileService
|
||||
- BatchSchedulerService
|
||||
frontend:
|
||||
componentes:
|
||||
- FurnaceMonitor
|
||||
- FurnaceBatchForm
|
||||
- TemperatureChart
|
||||
- BatchQueueView
|
||||
- ProfileEditor
|
||||
specs_core: []
|
||||
nota: "Control de hornos con perfiles de temperatura por tipo de vidrio"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-007: Calidad
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-007:
|
||||
nombre: Calidad
|
||||
herencia: 40%
|
||||
prioridad: P0
|
||||
sp: 32
|
||||
epica: docs/08-epicas/EPIC-VT-007-calidad.md
|
||||
database:
|
||||
tablas:
|
||||
- quality.quality_tests
|
||||
- quality.test_results
|
||||
- quality.defect_types
|
||||
- quality.certifications
|
||||
backend:
|
||||
servicios:
|
||||
- QualityTestService
|
||||
- CertificationService
|
||||
- DefectTrackingService
|
||||
frontend:
|
||||
componentes:
|
||||
- QualityTestForm
|
||||
- TestResultsGrid
|
||||
- DefectCapture
|
||||
- CertificationViewer
|
||||
specs_core:
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# VT-008: Despacho
|
||||
# ---------------------------------------------------------------------------
|
||||
VT-008:
|
||||
nombre: Despacho
|
||||
herencia: 50%
|
||||
prioridad: P1
|
||||
sp: 28
|
||||
epica: docs/08-epicas/EPIC-VT-008-despacho.md
|
||||
database:
|
||||
tablas:
|
||||
- logistics.shipments
|
||||
- logistics.shipment_items
|
||||
- logistics.delivery_routes
|
||||
- logistics.packing_lists
|
||||
backend:
|
||||
servicios:
|
||||
- ShipmentService
|
||||
- RouteOptimizationService
|
||||
- PackingService
|
||||
frontend:
|
||||
componentes:
|
||||
- ShipmentList
|
||||
- DeliveryRouteMap
|
||||
- PackingListGenerator
|
||||
- DeliveryConfirmation
|
||||
specs_core:
|
||||
- SPEC-MAIL-THREAD-TRACKING (notificaciones entrega)
|
||||
|
||||
# =============================================================================
|
||||
# REFERENCIAS CRUZADAS CON ERP-CORE
|
||||
# =============================================================================
|
||||
referencias_core:
|
||||
specs_implementadas: []
|
||||
|
||||
specs_pendientes:
|
||||
- spec: SPEC-SISTEMA-SECUENCIAS
|
||||
modulos: [VT-001, VT-002, VT-003]
|
||||
prioridad: P0
|
||||
estado: PENDIENTE
|
||||
|
||||
- spec: SPEC-VALORACION-INVENTARIO
|
||||
modulos: [VT-004]
|
||||
prioridad: P0
|
||||
estado: PENDIENTE
|
||||
adaptacion: "Valorización de vidrio crudo y procesado"
|
||||
|
||||
- spec: SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
modulos: [VT-004, VT-007]
|
||||
prioridad: P0
|
||||
estado: PENDIENTE
|
||||
adaptacion: "Trazabilidad desde lámina hasta pieza final"
|
||||
|
||||
- spec: SPEC-PRICING-RULES
|
||||
modulos: [VT-002]
|
||||
prioridad: P0
|
||||
estado: PENDIENTE
|
||||
adaptacion: "Precios por tipo vidrio × espesor × proceso"
|
||||
|
||||
- spec: SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN
|
||||
modulos: [VT-003]
|
||||
prioridad: P1
|
||||
estado: PENDIENTE
|
||||
adaptacion: "Seguimiento de órdenes de producción"
|
||||
|
||||
modulos_extendidos:
|
||||
- core: MGN-001 (auth)
|
||||
vertical: VT-001
|
||||
tipo: herencia_directa
|
||||
|
||||
- core: MGN-002 (users)
|
||||
vertical: VT-001
|
||||
tipo: herencia_directa
|
||||
|
||||
- core: MGN-011 (inventory)
|
||||
vertical: VT-004
|
||||
tipo: extension
|
||||
|
||||
- core: MGN-013 (sales)
|
||||
vertical: VT-002
|
||||
tipo: extension
|
||||
|
||||
# =============================================================================
|
||||
# VALIDACIONES
|
||||
# =============================================================================
|
||||
validaciones:
|
||||
modulos_huerfanos: 0
|
||||
specs_sin_modulo: 0
|
||||
|
||||
alertas:
|
||||
- tipo: implementacion_pendiente
|
||||
mensaje: "0% de código implementado - fase planificación"
|
||||
|
||||
- tipo: spec_critica
|
||||
spec: SPEC-TRAZABILIDAD-LOTES-SERIES
|
||||
mensaje: "Crítica para certificación de calidad"
|
||||
|
||||
# =============================================================================
|
||||
# METADATA
|
||||
# =============================================================================
|
||||
metadata_documento:
|
||||
creado_por: Claude-Code
|
||||
fecha_creacion: 2025-12-08
|
||||
ultima_actualizacion: 2025-12-08
|
||||
version_documento: 1.0.0
|
||||
130
orchestration/prompts/PROMPT-VT-BACKEND-AGENT.md
Normal file
130
orchestration/prompts/PROMPT-VT-BACKEND-AGENT.md
Normal file
@ -0,0 +1,130 @@
|
||||
# Prompt: Vidrio Templado Backend Agent
|
||||
|
||||
## Identidad
|
||||
|
||||
Eres un agente especializado en desarrollo backend para ERP Vidrio Templado. Tu expertise está en Node.js, Express, TypeScript, TypeORM y PostgreSQL, con conocimiento específico del dominio de manufactura de vidrio.
|
||||
|
||||
## Contexto del Proyecto
|
||||
|
||||
```yaml
|
||||
proyecto: ERP Vidrio Templado
|
||||
codigo: VT
|
||||
tipo: Vertical de ERP-Suite
|
||||
nivel: 2B.2
|
||||
stack:
|
||||
runtime: Node.js 20+
|
||||
framework: Express.js
|
||||
lenguaje: TypeScript 5.3+
|
||||
orm: TypeORM 0.3.17
|
||||
database: PostgreSQL 15+
|
||||
auth: JWT + bcryptjs (heredado de core)
|
||||
|
||||
paths:
|
||||
vertical: /home/isem/workspace/projects/erp-suite/apps/verticales/vidrio-templado/
|
||||
backend: /home/isem/workspace/projects/erp-suite/apps/verticales/vidrio-templado/backend/
|
||||
docs: /home/isem/workspace/projects/erp-suite/apps/verticales/vidrio-templado/docs/
|
||||
core: /home/isem/workspace/projects/erp-suite/apps/erp-core/
|
||||
directivas: orchestration/directivas/
|
||||
|
||||
puertos:
|
||||
backend: 3200
|
||||
frontend: 5175
|
||||
database: 5434
|
||||
```
|
||||
|
||||
## Herencia del Core
|
||||
|
||||
Este proyecto HEREDA del ERP-Core:
|
||||
- Módulos: auth, users, roles, tenants
|
||||
- SPECS: Ver `orchestration/00-guidelines/HERENCIA-SPECS-CORE.md`
|
||||
- Base de datos: 97 tablas heredadas
|
||||
|
||||
**REGLA:** Extender, NUNCA modificar el core.
|
||||
|
||||
## Módulos de la Vertical
|
||||
|
||||
| Módulo | Descripción | Prioridad |
|
||||
|--------|-------------|-----------|
|
||||
| VT-001 | Fundamentos (100% core) | P0 |
|
||||
| VT-002 | Cotizaciones (calculador vidrio) | P0 |
|
||||
| VT-003 | Producción (órdenes) | P0 |
|
||||
| VT-004 | Inventario (vidrio/materia prima) | P0 |
|
||||
| VT-005 | Corte (nesting/optimización) | P1 |
|
||||
| VT-006 | Templado (control hornos) | P1 |
|
||||
| VT-007 | Calidad (tests/certificados) | P0 |
|
||||
| VT-008 | Despacho (logística) | P1 |
|
||||
|
||||
## Directivas Obligatorias
|
||||
|
||||
### 1. Multi-Tenant (Heredada)
|
||||
```
|
||||
OBLIGATORIO: Toda operación debe filtrar por tenant_id.
|
||||
Ver: core/orchestration/directivas/DIRECTIVA-MULTI-TENANT.md
|
||||
```
|
||||
|
||||
### 2. Producción de Vidrio
|
||||
```
|
||||
ESPECÍFICO: Control de procesos de corte y templado.
|
||||
Ver: directivas/DIRECTIVA-PRODUCCION-VIDRIO.md
|
||||
```
|
||||
|
||||
### 3. Control de Calidad
|
||||
```
|
||||
ESPECÍFICO: Trazabilidad de lotes y certificaciones.
|
||||
Ver: directivas/DIRECTIVA-CONTROL-CALIDAD.md
|
||||
```
|
||||
|
||||
## Estructura de Módulo
|
||||
|
||||
```
|
||||
backend/src/modules/{nombre}/
|
||||
├── {nombre}.module.ts
|
||||
├── {nombre}.controller.ts
|
||||
├── {nombre}.service.ts
|
||||
├── {nombre}.entity.ts
|
||||
├── dto/
|
||||
│ ├── create-{nombre}.dto.ts
|
||||
│ └── update-{nombre}.dto.ts
|
||||
└── __tests__/
|
||||
└── {nombre}.service.spec.ts
|
||||
```
|
||||
|
||||
## Schemas de Base de Datos
|
||||
|
||||
```yaml
|
||||
schemas_especificos:
|
||||
- glass: Tipos de vidrio, espesores, cotizaciones
|
||||
- production: Órdenes, corte, templado
|
||||
- quality: Tests, certificaciones, defectos
|
||||
- logistics: Despachos, rutas
|
||||
```
|
||||
|
||||
## SPECS del Core Aplicables
|
||||
|
||||
- SPEC-VALORACION-INVENTARIO (vidrio crudo y procesado)
|
||||
- SPEC-TRAZABILIDAD-LOTES-SERIES (lámina → pieza)
|
||||
- SPEC-PRICING-RULES (tipo × espesor × proceso)
|
||||
- SPEC-PROYECTOS-DEPENDENCIAS-BURNDOWN (órdenes producción)
|
||||
|
||||
## Flujo de Trabajo
|
||||
|
||||
```
|
||||
1. Leer especificación del módulo en docs/02-definicion-modulos/
|
||||
2. Verificar SPECS aplicables en HERENCIA-SPECS-CORE.md
|
||||
3. Revisar DDL existente en database/
|
||||
4. Implementar siguiendo estructura de módulo
|
||||
5. Actualizar TRAZA-TAREAS-BACKEND.md
|
||||
6. Actualizar BACKEND_INVENTORY.yml
|
||||
```
|
||||
|
||||
## Referencias
|
||||
|
||||
- Inventario: `orchestration/inventarios/MASTER_INVENTORY.yml`
|
||||
- Trazabilidad: `orchestration/inventarios/TRACEABILITY_MATRIX.yml`
|
||||
- Herencia: `orchestration/00-guidelines/HERENCIA-SPECS-CORE.md`
|
||||
- Core directivas: `/home/isem/workspace/core/orchestration/directivas/`
|
||||
|
||||
---
|
||||
|
||||
**Versión:** 1.0.0
|
||||
**Sistema:** SIMCO v2.2.0
|
||||
107
orchestration/referencias/DEPENDENCIAS-ERP-CORE.yml
Normal file
107
orchestration/referencias/DEPENDENCIAS-ERP-CORE.yml
Normal file
@ -0,0 +1,107 @@
|
||||
# Dependencias de ERP-Core para ERP Vidrio Templado
|
||||
# ==================================================
|
||||
|
||||
version: "1.0.0"
|
||||
fecha_actualizacion: "2025-12-27"
|
||||
proyecto: "erp-vidrio-templado"
|
||||
|
||||
# Base de la que hereda
|
||||
base:
|
||||
proyecto: "erp-core"
|
||||
version_minima: "1.2.0"
|
||||
ruta: "projects/erp-core"
|
||||
ruta_absoluta: "/home/isem/workspace-v1/projects/erp-core"
|
||||
|
||||
# Schemas de base de datos heredados
|
||||
database:
|
||||
herencia: "completa"
|
||||
|
||||
schemas_usados:
|
||||
- nombre: "auth_management"
|
||||
tablas_heredadas: 26
|
||||
tablas_extendidas: 0
|
||||
uso: "Autenticacion estandar"
|
||||
|
||||
- nombre: "core_management"
|
||||
tablas_heredadas: 12
|
||||
tablas_extendidas: 2
|
||||
uso: "Clientes, proveedores de materia prima"
|
||||
extensiones:
|
||||
- "Proveedores de vidrio"
|
||||
- "Certificaciones de calidad"
|
||||
|
||||
- nombre: "core_catalogs"
|
||||
tablas_heredadas: 8
|
||||
tablas_extendidas: 5
|
||||
uso: "Catalogos de vidrio"
|
||||
extensiones:
|
||||
- "Tipos de vidrio"
|
||||
- "Espesores"
|
||||
- "Acabados"
|
||||
- "Procesos de templado"
|
||||
- "Defectos de calidad"
|
||||
|
||||
- nombre: "inventory_management"
|
||||
tablas_heredadas: 20
|
||||
tablas_extendidas: 4
|
||||
uso: "Inventario de vidrio"
|
||||
extensiones:
|
||||
- "Dimensiones de lamina (ancho x alto)"
|
||||
- "Tracking por lote de produccion"
|
||||
- "Control de desperdicio/retazo"
|
||||
- "Trazabilidad por horno"
|
||||
|
||||
# Schemas propios de vidrio templado (no heredados)
|
||||
schemas_propios:
|
||||
- nombre: "production_management"
|
||||
tablas: 12
|
||||
descripcion: "Ordenes de produccion, hornos, lotes"
|
||||
|
||||
- nombre: "quality_management"
|
||||
tablas: 8
|
||||
descripcion: "Inspecciones, certificados, defectos"
|
||||
|
||||
# Variable RLS obligatoria
|
||||
rls:
|
||||
variable: "app.current_tenant_id"
|
||||
tipo: "UUID"
|
||||
nota: "TODAS las queries deben filtrar por esta variable"
|
||||
|
||||
# Modulos backend importados
|
||||
backend:
|
||||
modulos_importados:
|
||||
- nombre: "AuthModule"
|
||||
desde: "@erp-core/auth"
|
||||
version: "1.0.0"
|
||||
|
||||
- nombre: "UsersModule"
|
||||
desde: "@erp-core/users"
|
||||
version: "1.0.0"
|
||||
|
||||
- nombre: "RolesModule"
|
||||
desde: "@erp-core/roles"
|
||||
version: "1.0.0"
|
||||
|
||||
- nombre: "TenantsModule"
|
||||
desde: "@erp-core/tenants"
|
||||
version: "1.0.0"
|
||||
|
||||
- nombre: "InventoryModule"
|
||||
desde: "@erp-core/inventory"
|
||||
version: "1.0.0"
|
||||
|
||||
# Consideraciones especiales
|
||||
trazabilidad:
|
||||
obligatoria: true
|
||||
requisitos:
|
||||
- "Trazabilidad 100% de lotes"
|
||||
- "Registro de parametros de templado (temperatura, tiempo)"
|
||||
- "Certificados de calidad por lote"
|
||||
- "Historial de inspecciones"
|
||||
|
||||
# Validaciones requeridas
|
||||
validaciones:
|
||||
- "Variable RLS correcta en todo DDL"
|
||||
- "Trazabilidad de lotes implementada"
|
||||
- "Imports de erp-core funcionando"
|
||||
- "Tests pasando"
|
||||
66
orchestration/referencias/DEPENDENCIAS-SHARED.yml
Normal file
66
orchestration/referencias/DEPENDENCIAS-SHARED.yml
Normal file
@ -0,0 +1,66 @@
|
||||
# Dependencias de Modulos Compartidos para ERP Vidrio Templado
|
||||
# =============================================================
|
||||
|
||||
version: "1.0.0"
|
||||
fecha_actualizacion: "2025-12-27"
|
||||
proyecto: "erp-vidrio-templado"
|
||||
|
||||
# Modulos del catalogo usados
|
||||
modulos_catalogo:
|
||||
- id: "auth"
|
||||
ruta: "core/catalog/auth"
|
||||
version_usada: "1.0.0"
|
||||
fecha_implementacion: "pendiente"
|
||||
adaptaciones: null
|
||||
tests_pasando: false
|
||||
|
||||
- id: "multi-tenancy"
|
||||
ruta: "core/catalog/multi-tenancy"
|
||||
version_usada: "1.0.0"
|
||||
fecha_implementacion: "pendiente"
|
||||
adaptaciones:
|
||||
- descripcion: "Planta como tenant especializado"
|
||||
archivo: "Por implementar"
|
||||
tests_pasando: false
|
||||
|
||||
- id: "notifications"
|
||||
ruta: "core/catalog/notifications"
|
||||
version_usada: "1.0.0"
|
||||
fecha_implementacion: "pendiente"
|
||||
adaptaciones:
|
||||
- descripcion: "Alertas de produccion"
|
||||
archivo: "Por implementar"
|
||||
- descripcion: "Alertas de desviacion en hornos"
|
||||
archivo: "Por implementar"
|
||||
tests_pasando: false
|
||||
|
||||
- id: "rate-limiting"
|
||||
ruta: "core/catalog/rate-limiting"
|
||||
version_usada: "1.0.0"
|
||||
fecha_implementacion: "pendiente"
|
||||
adaptaciones: null
|
||||
tests_pasando: false
|
||||
|
||||
# Modulos de core/modules usados
|
||||
modulos_core: []
|
||||
|
||||
# Librerias de shared/libs usadas
|
||||
librerias_shared: []
|
||||
|
||||
# Modulos pendientes de implementar
|
||||
pendientes:
|
||||
- id: "inventory"
|
||||
prioridad: "alta"
|
||||
justificacion: "Control de laminas y materia prima"
|
||||
|
||||
- id: "lot-tracking"
|
||||
prioridad: "alta"
|
||||
justificacion: "Trazabilidad 100% de lotes (normativa)"
|
||||
|
||||
- id: "quality-control"
|
||||
prioridad: "alta"
|
||||
justificacion: "Inspecciones y certificados"
|
||||
|
||||
- id: "plc-integration"
|
||||
prioridad: "baja"
|
||||
justificacion: "Conexion con PLCs de hornos (futuro)"
|
||||
38
orchestration/trazas/TRAZA-TAREAS-BACKEND.md
Normal file
38
orchestration/trazas/TRAZA-TAREAS-BACKEND.md
Normal file
@ -0,0 +1,38 @@
|
||||
# TRAZA DE TAREAS - BACKEND LAYER
|
||||
# Proyecto: ERP VIDRIO TEMPLADO (Vertical)
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
# Estado: TEMPLATE - Proyecto en planificación
|
||||
|
||||
---
|
||||
|
||||
## Formato de Registro
|
||||
|
||||
```yaml
|
||||
[FECHA] - [ID_TAREA] - [OPERACION]
|
||||
Descripcion: {descripcion}
|
||||
Archivos:
|
||||
- {archivo_1}
|
||||
Estado: {COMPLETADO | EN_PROGRESO | BLOQUEADO}
|
||||
Ejecutado_por: {AGENTE | USUARIO}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Historial de Tareas
|
||||
|
||||
*Sin tareas registradas - Proyecto en planificación*
|
||||
|
||||
---
|
||||
|
||||
## Resumen
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| Total tareas | 0 |
|
||||
| Completadas | 0 |
|
||||
| En progreso | 0 |
|
||||
| Bloqueadas | 0 |
|
||||
| Última actualización | 2025-12-08 |
|
||||
|
||||
---
|
||||
*Traza de tareas - Sistema NEXUS*
|
||||
38
orchestration/trazas/TRAZA-TAREAS-DATABASE.md
Normal file
38
orchestration/trazas/TRAZA-TAREAS-DATABASE.md
Normal file
@ -0,0 +1,38 @@
|
||||
# TRAZA DE TAREAS - DATABASE LAYER
|
||||
# Proyecto: ERP VIDRIO TEMPLADO (Vertical)
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
# Estado: TEMPLATE - Proyecto en planificación
|
||||
|
||||
---
|
||||
|
||||
## Formato de Registro
|
||||
|
||||
```yaml
|
||||
[FECHA] - [ID_TAREA] - [OPERACION]
|
||||
Descripcion: {descripcion}
|
||||
Archivos:
|
||||
- {archivo_1}
|
||||
Estado: {COMPLETADO | EN_PROGRESO | BLOQUEADO}
|
||||
Ejecutado_por: {AGENTE | USUARIO}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Historial de Tareas
|
||||
|
||||
*Sin tareas registradas - Proyecto en planificación*
|
||||
|
||||
---
|
||||
|
||||
## Resumen
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| Total tareas | 0 |
|
||||
| Completadas | 0 |
|
||||
| En progreso | 0 |
|
||||
| Bloqueadas | 0 |
|
||||
| Última actualización | 2025-12-08 |
|
||||
|
||||
---
|
||||
*Traza de tareas - Sistema NEXUS*
|
||||
38
orchestration/trazas/TRAZA-TAREAS-FRONTEND.md
Normal file
38
orchestration/trazas/TRAZA-TAREAS-FRONTEND.md
Normal file
@ -0,0 +1,38 @@
|
||||
# TRAZA DE TAREAS - FRONTEND LAYER
|
||||
# Proyecto: ERP VIDRIO TEMPLADO (Vertical)
|
||||
# Sistema: NEXUS + SIMCO v2.2.0
|
||||
# Estado: TEMPLATE - Proyecto en planificación
|
||||
|
||||
---
|
||||
|
||||
## Formato de Registro
|
||||
|
||||
```yaml
|
||||
[FECHA] - [ID_TAREA] - [OPERACION]
|
||||
Descripcion: {descripcion}
|
||||
Archivos:
|
||||
- {archivo_1}
|
||||
Estado: {COMPLETADO | EN_PROGRESO | BLOQUEADO}
|
||||
Ejecutado_por: {AGENTE | USUARIO}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Historial de Tareas
|
||||
|
||||
*Sin tareas registradas - Proyecto en planificación*
|
||||
|
||||
---
|
||||
|
||||
## Resumen
|
||||
|
||||
| Métrica | Valor |
|
||||
|---------|-------|
|
||||
| Total tareas | 0 |
|
||||
| Completadas | 0 |
|
||||
| En progreso | 0 |
|
||||
| Bloqueadas | 0 |
|
||||
| Última actualización | 2025-12-08 |
|
||||
|
||||
---
|
||||
*Traza de tareas - Sistema NEXUS*
|
||||
Loading…
Reference in New Issue
Block a user