2.8 KiB
US-MGN-005-007-002: Reporte de Movimientos de Stock
RF Asociado: RF-MGN-005-003 Módulo: MGN-005 - Inventario Básico Epic: Reportes de Inventario Prioridad: P0 Story Points: 2 Sprint: Sprint 12 Estado: Ready for Development Fecha: 2025-11-24
User Story
Como usuario de inventario, Quiero visualizar historial de movimientos de stock con filtros, Para auditar y analizar el flujo de productos.
Descripción Detallada
El reporte muestra todos los movimientos de stock con:
- Fecha
- Producto
- Ubicación origen → destino
- Cantidad
- Tipo de movimiento (entrada, salida, transferencia)
- Referencia (picking, ajuste, etc.)
- Estado
Filtros por fecha, producto, ubicación, tipo.
Criterios de Aceptación
Escenario 1: Listar movimientos con filtros (Camino Feliz)
Dado que hay movimientos validados, Cuando filtro por producto_id=1 y rango de fechas, Entonces el sistema muestra movimientos ordenados por fecha desc.
Escenario 2: Filtrar por tipo de movimiento
Dado que filtro por tipo="entrada", Cuando genero reporte, Entonces el sistema muestra solo movimientos de entrada (supplier → internal).
Escenario 3: Exportar reporte
Dado que visualizo movimientos, Cuando exporto a Excel, Entonces el sistema descarga archivo con todos los movimientos filtrados.
Reglas de Negocio
- RN-1: Reporte incluye solo movimientos validados (state=done).
- RN-2: Ordenado por fecha descendente por defecto.
- RN-3: Exportable a Excel, PDF.
Tareas Técnicas
Backend
- Endpoint: GET /api/v1/inventory/reports/stock-moves
- Service: ReportService.getStockMovesReport(filters)
- DTO: StockMoveReportFiltersDto
- Export service
- Unit tests
- Integration tests
- Swagger docs
Frontend
- Componente: StockMovesReportPage.tsx
- Filtros: fecha, producto, ubicación, tipo
- Tabla paginada
- Botón exportar
- API client: reportApi.getStockMoves()
- Component tests
- E2E test
Database
- View: vw_stock_moves_report
- Índices: idx_stock_moves_date
Estimación Detallada
| Tarea | Horas |
|---|---|
| Backend | 1.5 |
| Frontend | 1.5 |
| Testing | 0.5 |
| Code Review | 0.5 |
| TOTAL | 4 horas = 2 SP |
Definition of Done
- Código implementado según ET
- Tests pasando (>80%)
- Code review aprobado
- Exportación funciona
- QA validado
- PO aprobado