# US-MMD004-006: Alertas de Stock Minimo

## Metadata

| Campo | Valor |
|-------|-------|
| **ID** | US-MMD004-006 |
| **Epica** | EPIC-MMD-004 - Inventario y Refacciones |
| **Modulo** | inventario |
| **Prioridad** | P1 |
| **Story Points** | 3 |
| **Sprint** | Sprint 5 |
| **Estado** | Backlog |

---

## Historia de Usuario

**Como** encargado de compras,
**quiero** recibir alertas cuando el stock llegue al minimo,
**para** hacer pedidos a tiempo y evitar desabasto.

## Descripcion Detallada

El sistema debe monitorear niveles de inventario y generar alertas automaticas cuando se alcance el punto de reorden, considerando tiempos de entrega de proveedores.

---

## Criterios de Aceptacion

**Escenario 1: Alerta de stock bajo**
```gherkin
DADO que el stock minimo es 5 unidades
CUANDO el stock llega a 5 o menos
ENTONCES se genera alerta:
  | Refaccion | Stock actual | Minimo | Estado |
  | Filtro aceite | 4 | 5 | BAJO |
Y se notifica por email/push
```

**Escenario 2: Configurar niveles**
```gherkin
DADO que configuro niveles para una refaccion
CUANDO defino:
  | Stock minimo | 5 |
  | Punto reorden | 8 |
  | Stock maximo | 20 |
ENTONCES el sistema usa estos valores
```

**Escenario 3: Sugerencia de compra**
```gherkin
DADO que hay alertas de stock bajo
CUANDO accedo a sugerencias
ENTONCES veo lista consolidada:
  | Refaccion | Actual | Sugerido | Proveedor |
  | Filtro aceite | 4 | 15 | CUMMINS |
  | Inyector | 1 | 4 | DELPHI |
Y puedo generar orden de compra
```

**Escenario 4: Historial de consumo**
```gherkin
DADO que configuro punto de reorden
CUANDO el sistema analiza consumo
ENTONCES sugiere nivel basado en:
  - Promedio mensual: 12 unidades
  - Tiempo entrega: 5 dias
  - Stock seguridad: 5 unidades
  - Sugerencia reorden: 8 unidades
```

**Escenario 5: Dashboard de alertas**
```gherkin
DADO que accedo al dashboard
CUANDO veo seccion de inventario
ENTONCES muestra:
  | Indicador | Valor |
  | Sin stock | 3 refs |
  | Stock bajo | 8 refs |
  | Por vencer | 2 refs |
```

---

## Tareas Tecnicas

**Database:**
- [ ] DB-086: Agregar campos min/max a parts
- [ ] DB-087: Crear tabla `stock_alerts`

**Backend:**
- [ ] BE-173: Servicio de monitoreo de stock
- [ ] BE-174: Job de verificacion diaria
- [ ] BE-175: Generador de sugerencias
- [ ] BE-176: Notificaciones push/email

**Frontend:**
- [ ] FE-172: Crear StockAlertsDashboard
- [ ] FE-173: Crear StockLevelsConfig
- [ ] FE-174: Crear PurchaseSuggestions

---

## Definition of Done (DoD)

- [ ] Alerta automatica de stock bajo
- [ ] Configurar niveles min/max
- [ ] Sugerencias de compra
- [ ] Dashboard de alertas
- [ ] Notificaciones
- [ ] Tests pasando

---

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