erp-mecanicas-diesel/docs/02-definicion-modulos/MMD-005-vehiculos/historias-usuario/US-MMD005-001-registrar-vehiculo.md

120 lines
2.5 KiB
Markdown

# US-MMD005-001: Registrar Vehiculo
## Metadata
| Campo | Valor |
|-------|-------|
| **ID** | US-MMD005-001 |
| **Epica** | EPIC-MMD-005 - Vehiculos |
| **Modulo** | vehiculos |
| **Prioridad** | P0 |
| **Story Points** | 5 |
| **Sprint** | Sprint 2 |
| **Estado** | Backlog |
---
## Historia de Usuario
**Como** recepcionista,
**quiero** registrar un vehiculo con datos basicos (placas, marca, modelo),
**para** identificarlo en el sistema y crear ordenes de servicio.
## Descripcion Detallada
El registro de vehiculo es el primer paso cuando un cliente nuevo llega. Se capturan datos basicos de identificacion y se asocia a un cliente (propietario o empresa).
---
## Criterios de Aceptacion
**Escenario 1: Registrar vehiculo nuevo**
```gherkin
DADO que un vehiculo nuevo llega al taller
CUANDO registro sus datos:
| Campo | Valor |
| Placas | ABC-123 |
| Marca | Kenworth |
| Modelo | T680 |
| Ano | 2020 |
| Tipo | TRACTO |
| Color | Blanco |
| VIN | 1XKAD49X1LJ123456 |
ENTONCES el vehiculo se registra en el sistema
Y se asocia al cliente seleccionado
```
**Escenario 2: Placas unicas**
```gherkin
DADO que intento registrar placas existentes "ABC-123"
CUANDO guardo
ENTONCES el sistema muestra "Vehiculo ya existe"
Y me lleva al registro existente
```
**Escenario 3: Validar formato VIN**
```gherkin
DADO que ingreso VIN
CUANDO el VIN tiene menos de 17 caracteres
ENTONCES el sistema muestra error de formato
Y no permite guardar
```
**Escenario 4: Registrar sin VIN**
```gherkin
DADO que el vehiculo no tiene VIN visible
CUANDO dejo el campo vacio
ENTONCES el sistema permite guardar
Y marca el campo como "pendiente"
```
---
## Campos del Vehiculo
| Campo | Tipo | Requerido |
|-------|------|-----------|
| placas | string | Si |
| vin | string(17) | No |
| marca | string | Si |
| modelo | string | Si |
| anio | number | Si |
| tipo | enum | Si |
| color | string | No |
| cliente_id | FK | Si |
---
## Tareas Tecnicas
**Database:**
- [ ] DB-050: Crear schema `vehicle_management`
- [ ] DB-051: Crear tabla `vehicles`
- [ ] DB-052: Indice unico por placas
**Backend:**
- [ ] BE-090: Crear VehicleEntity
- [ ] BE-091: Crear VehicleService
- [ ] BE-092: Crear VehicleController
- [ ] BE-093: Validacion de VIN
**Frontend:**
- [ ] FE-090: Crear VehiclesListPage
- [ ] FE-091: Crear VehicleForm
- [ ] FE-092: Selector de cliente
---
## Definition of Done (DoD)
- [ ] CRUD de vehiculos
- [ ] Placas unicas
- [ ] Validacion VIN
- [ ] Asociacion a cliente
- [ ] Tests pasando
---
**Creada por:** Requirements-Analyst
**Fecha:** 2025-12-06