# 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**