erp-mecanicas-diesel/orchestration/directivas/DIRECTIVA-ORDENES-TRABAJO.md

179 lines
4.0 KiB
Markdown

# DIRECTIVA-ORDENES-TRABAJO
**Version:** 1.0
**Fecha:** 2025-12-08
**Vertical:** Mecanicas Diesel
**Nivel:** 2B.2
---
## PROPOSITO
Define las directrices para la gestion de ordenes de trabajo en talleres de mecanica diesel.
---
## ALCANCE
Esta directiva aplica a:
- Creacion y gestion de ordenes de trabajo
- Asignacion de mecanicos y bahias
- Consumo de refacciones
- Facturacion de servicios
---
## PRINCIPIOS
### 1. Vinculacion Vehiculo-Cliente
Toda orden de trabajo debe estar vinculada a:
- Un cliente (propietario o responsable)
- Un vehiculo especifico (placas, VIN)
- Un historial de servicios previos
### 2. Trazabilidad de Refacciones
- Cada refaccion usada debe registrarse con numero de serie/lote
- Las refacciones con garantia deben ser identificables
- El consumo actualiza inventario en tiempo real
### 3. Control de Tiempos
- Tiempo estimado vs tiempo real
- Productividad por mecanico
- Tiempos muertos identificados
---
## FLUJO DE ORDEN DE TRABAJO
```
1. Recepcion del vehiculo
|-- Inspeccion inicial
|-- Diagnostico preliminar
|
2. Creacion de orden de trabajo
|-- Datos del cliente/vehiculo
|-- Descripcion del problema
|-- Cotizacion inicial
|
3. Aprobacion del cliente
|
4. Asignacion
|-- Mecanico responsable
|-- Bahia de trabajo
|-- Fecha estimada de entrega
|
5. Ejecucion
|-- Registro de tiempos
|-- Consumo de refacciones
|-- Notas de trabajo
|
6. Control de calidad
|-- Prueba de ruta (si aplica)
|-- Verificacion final
|
7. Cierre
|-- Facturacion
|-- Entrega al cliente
```
---
## MODELO DE DATOS
### work_orders
```yaml
campos:
- order_number: string (secuencia automatica)
- customer_id: FK -> mecanica.customers
- vehicle_id: FK -> mecanica.vehicles
- status: enum(draft, quoted, approved, in_progress, quality, done, cancelled)
- mechanic_id: FK -> auth.users
- bay_number: string
- problem_description: text
- estimated_hours: decimal
- actual_hours: decimal
- estimated_delivery: timestamp
- actual_delivery: timestamp
```
### work_order_lines
```yaml
campos:
- order_id: FK -> work_orders
- line_type: enum(labor, part)
- service_type_id: FK -> service_types (si es labor)
- product_id: FK -> inventory.products (si es part)
- lot_id: FK -> inventory.lots (para trazabilidad)
- quantity: decimal
- unit_price: decimal
- discount: decimal
```
---
## ESTADOS DE ORDEN
```
draft -----> quoted -----> approved -----> in_progress
| | |
v v v
cancelled rejected quality
|
v
done
```
### Transiciones Permitidas
| Estado Actual | Estados Siguientes |
|---------------|-------------------|
| draft | quoted, cancelled |
| quoted | approved, cancelled |
| approved | in_progress, cancelled |
| in_progress | quality, cancelled |
| quality | done, in_progress |
| done | (final) |
| cancelled | (final) |
---
## INTEGRACION CON ERP CORE
### Herencia de Specs
| Spec Core | Aplicacion |
|-----------|------------|
| SPEC-VALORACION-INVENTARIO | Costeo de refacciones |
| SPEC-TRAZABILIDAD-LOTES-SERIES | Garantias de partes |
| SPEC-MAIL-THREAD-TRACKING | Historial de la orden |
### APIs del Core a Extender
- `PartnerService` -> `CustomerService` (datos de cliente)
- `ProductService` -> `SparePartService` (refacciones)
- `InventoryService` -> Consumo de refacciones
---
## REGLAS DE NEGOCIO
1. **Cotizacion Obligatoria**: No se puede iniciar trabajo sin cotizacion aprobada
2. **Consumo de Inventario**: Las refacciones se reservan al aprobar, se consumen al cerrar
3. **Garantia de Trabajo**: Configurable por tipo de servicio (30, 60, 90 dias)
4. **Historial Vehicular**: Cada servicio se vincula al historial del vehiculo
---
## REFERENCIAS
- HERENCIA-SPECS-ERP-CORE.md
- DATABASE_INVENTORY.yml
- MASTER_INVENTORY.yml
---
**Documento de directiva oficial**