# US-MMD005-007: Configurar Recordatorios de Mantenimiento

## Metadata

| Campo | Valor |
|-------|-------|
| **ID** | US-MMD005-007 |
| **Epica** | EPIC-MMD-005 - Vehiculos y Flotas |
| **Modulo** | vehiculos |
| **Prioridad** | P2 |
| **Story Points** | 5 |
| **Sprint** | Sprint 6 |
| **Estado** | Backlog |

---

## Historia de Usuario

**Como** recepcionista,
**quiero** configurar recordatorios de mantenimiento para vehiculos,
**para** contactar a los clientes cuando corresponda su proximo servicio.

## Descripcion Detallada

Los vehiculos requieren mantenimiento periodico. El sistema debe permitir programar recordatorios por tiempo o kilometraje y notificar automaticamente.

---

## Criterios de Aceptacion

**Escenario 1: Crear recordatorio por tiempo**
```gherkin
DADO que configuro recordatorio
CUANDO defino:
  | Tipo | Cambio de aceite |
  | Frecuencia | Cada 3 meses |
  | Ultimo | Nov 2025 |
ENTONCES calcula proximo: Feb 2026
Y programa notificacion
```

**Escenario 2: Recordatorio por kilometraje**
```gherkin
DADO que configuro por kilometraje
CUANDO defino:
  | Tipo | Cambio de aceite |
  | Intervalo | 25,000 km |
  | Ultimo km | 150,000 |
ENTONCES programa para 175,000 km
```

**Escenario 3: Notificacion al cliente**
```gherkin
DADO que se acerca la fecha de servicio
CUANDO faltan 7 dias
ENTONCES envia notificacion:
  - Email al cliente
  - SMS si configurado
  - Tarea para recepcionista
```

**Escenario 4: Ver vehiculos pendientes**
```gherkin
DADO que accedo a recordatorios
CUANDO veo lista pendiente
ENTONCES muestra:
  | Vehiculo | Servicio | Vence | Estado |
  | T680 ABC-123 | Cambio aceite | 3 dias | Proximo |
  | Cascadia XYZ | Calibracion | Vencido | Atrasado |
```

**Escenario 5: Completar recordatorio**
```gherkin
DADO que se realizo el servicio
CUANDO completo el recordatorio
ENTONCES se recalcula el proximo
Basado en la configuracion
```

---

## Tipos de Recordatorio

| Tipo | Frecuencia tipica |
|------|-------------------|
| Cambio aceite | 3 meses / 25,000 km |
| Calibracion inyectores | 6 meses / 100,000 km |
| Revision general | 12 meses |
| Cambio filtros | 3 meses / 25,000 km |

---

## Tareas Tecnicas

**Database:**
- [ ] DB-103: Crear tabla `maintenance_reminders`
- [ ] DB-104: Crear tabla `reminder_notifications`

**Backend:**
- [ ] BE-204: CRUD recordatorios
- [ ] BE-205: Job de verificacion diaria
- [ ] BE-206: Envio de notificaciones
- [ ] BE-207: Recalculo al completar

**Frontend:**
- [ ] FE-201: Crear ReminderForm
- [ ] FE-202: Crear PendingReminders dashboard
- [ ] FE-203: Crear ReminderNotifications

---

## Definition of Done (DoD)

- [ ] Crear recordatorios por tiempo
- [ ] Crear recordatorios por km
- [ ] Notificacion automatica
- [ ] Dashboard de pendientes
- [ ] Completar y recalcular
- [ ] Tests pasando

---

**Creada por:** Requirements-Analyst
**Fecha:** 2025-12-06
