erp-mecanicas-diesel/docs/02-definicion-modulos/MMD-003-diagnosticos/historias-usuario/US-MMD003-001-diagnostico-computarizado.md

140 lines
3.5 KiB
Markdown

# US-MMD003-001: Registrar Diagnostico Computarizado
## Metadata
| Campo | Valor |
|-------|-------|
| **ID** | US-MMD003-001 |
| **Epica** | EPIC-MMD-003 - Diagnosticos |
| **Modulo** | diagnosticos |
| **Prioridad** | P0 |
| **Story Points** | 8 |
| **Sprint** | Sprint 3 |
| **Estado** | Backlog |
---
## Historia de Usuario
**Como** mecanico,
**quiero** registrar los codigos de error (DTC) obtenidos del scanner,
**para** documentar las fallas detectadas y tener historial de diagnosticos.
## Descripcion Detallada
El mecanico conecta el scanner al vehiculo y obtiene codigos de falla (DTC - Diagnostic Trouble Codes). Estos codigos deben registrarse en el sistema con su descripcion, sistema afectado y gravedad.
---
## Criterios de Aceptacion
**Escenario 1: Agregar codigo DTC**
```gherkin
DADO que realizo un escaneo del vehiculo
CUANDO agrego el codigo "P0201"
ENTONCES el sistema muestra:
| Codigo | P0201 |
| Descripcion | Inyector Cilindro 1 - Circuito Abierto |
| Sistema | Inyeccion |
| Gravedad | Critico |
Y se agrega a la lista de codigos encontrados
```
**Escenario 2: Agregar multiples codigos**
```gherkin
DADO que el vehiculo tiene varias fallas
CUANDO agrego codigos: P0201, P0300, P0171
ENTONCES todos se agregan al diagnostico
Y veo resumen de fallas por sistema
```
**Escenario 3: Marcar codigo como resuelto**
```gherkin
DADO que repare la falla P0201
CUANDO marco el codigo como "Resuelto"
ENTONCES el codigo cambia de estado
Y se registra fecha de resolucion
```
**Escenario 4: Buscar codigo en base de datos**
```gherkin
DADO que quiero buscar un codigo
CUANDO escribo "P02"
ENTONCES el sistema sugiere codigos que inician con P02
Y muestra descripcion de cada uno
```
**Escenario 5: Registrar freeze frame**
```gherkin
DADO que el codigo tiene datos congelados
CUANDO registro freeze frame:
| RPM | 2500 |
| Temp Motor | 92C |
| Carga | 65% |
ENTONCES se guarda junto al codigo
```
---
## Codigos DTC Comunes Diesel
| Codigo | Descripcion | Sistema |
|--------|-------------|---------|
| P0087 | Presion riel combustible baja | Inyeccion |
| P0088 | Presion riel combustible alta | Inyeccion |
| P0201-P0208 | Circuito inyector cil 1-8 | Inyeccion |
| P0300 | Multiples cilindros - falla | Motor |
| P0401 | EGR flujo insuficiente | Emision |
| P0404 | EGR rango/rendimiento | Emision |
| P2146 | Inyector grupo A - circuito | Inyeccion |
| P2263 | Turbo - rendimiento | Turbo |
---
## Tareas Tecnicas
**Database:**
- [ ] DB-030: Crear tabla `diagnostics` en schema `service_management`
- [ ] DB-031: Crear tabla `diagnostic_dtc` para codigos
- [ ] DB-032: Crear tabla `dtc_catalog` con codigos conocidos
- [ ] DB-033: Cargar catalogo de codigos DTC diesel
**Backend:**
- [ ] BE-070: Crear DiagnosticEntity
- [ ] BE-071: Crear DiagnosticDtcEntity
- [ ] BE-072: Endpoint POST /api/diagnostics
- [ ] BE-073: Endpoint POST /api/diagnostics/:id/dtc
- [ ] BE-074: Busqueda de codigos en catalogo
**Frontend:**
- [ ] FE-070: Crear DiagnosticForm component
- [ ] FE-071: Crear DtcInput con autocompletado
- [ ] FE-072: Crear DtcList component
- [ ] FE-073: Crear FreezeFrameForm
---
## Dependencias
**Depende de:**
- [ ] MMD-001: Fundamentos
- [ ] MMD-005: Vehiculos (vinculado a vehiculo)
**Bloquea:**
- [ ] US-MMD003-006: Recomendaciones
---
## Definition of Done (DoD)
- [ ] Agregar codigos DTC
- [ ] Busqueda con autocompletado
- [ ] Registro de freeze frame
- [ ] Marcar como resuelto
- [ ] Tests pasando
---
**Creada por:** Requirements-Analyst
**Fecha:** 2025-12-06