erp-core/docs/05-user-stories/mgn-005/US-MGN-005-007-002-reporte-movimientos-stock.md

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

Referencias