erp-mecanicas-diesel/docs/02-definicion-modulos/MMD-004-inventario/historias-usuario/US-MMD004-003-solicitar-refaccion.md

4.0 KiB

US-MMD004-003: Solicitar Refaccion desde Orden

Metadata

Campo Valor
ID US-MMD004-003
Epica EPIC-MMD-004 - Inventario
Modulo inventario
Prioridad P0
Story Points 5
Sprint Sprint 3
Estado Backlog

Historia de Usuario

Como mecanico, quiero solicitar refacciones al almacen desde la orden de servicio, para obtener las piezas necesarias para la reparacion.

Descripcion Detallada

Desde la orden de servicio, el mecanico puede buscar y solicitar refacciones. El almacenista recibe la solicitud, verifica stock, y despacha las piezas. El sistema actualiza el inventario automaticamente.


Criterios de Aceptacion

Escenario 1: Solicitar refaccion con stock

DADO que necesito un filtro de diesel
CUANDO busco "filtro diesel" y selecciono "Filtro Diesel FD-001"
Y solicito cantidad: 2
ENTONCES se crea solicitud para almacen
Y el almacenista recibe notificacion
Y estado de solicitud es "PENDIENTE"

Escenario 2: Ver stock disponible

DADO que busco una refaccion
CUANDO veo los resultados
ENTONCES veo el stock disponible de cada una:
  | Refaccion | Stock | Ubicacion |
  | Filtro FD-001 | 5 | B-02-01 |
  | Filtro FD-002 | 0 | - |
Y las sin stock aparecen deshabilitadas

Escenario 3: Solicitud sin stock suficiente

DADO que solicito 3 unidades de una refaccion con stock 2
CUANDO confirmo la solicitud
ENTONCES el sistema advierte "Solo hay 2 en stock"
Y puedo ajustar cantidad o confirmar parcial

Escenario 4: Almacenista despacha

DADO que hay una solicitud pendiente
CUANDO el almacenista la despacha
ENTONCES el stock se descuenta automaticamente
Y la refaccion se agrega a la orden de servicio
Y estado cambia a "DESPACHADO"

Escenario 5: Devolver refaccion no usada

DADO que no use una refaccion solicitada
CUANDO la devuelvo al almacen
ENTONCES el stock se incrementa
Y se registra el movimiento de devolucion

Flujo de Solicitud

MECANICO                    ALMACENISTA
    │                            │
    │──── Solicita refaccion ────▶│
    │                            │
    │◀─── Notificacion ──────────│
    │                            │
    │                            │ Verifica stock
    │                            │ Prepara piezas
    │                            │
    │◀─── Despacha ──────────────│
    │                            │
    │ Recibe piezas              │ Stock actualizado
    │ Usa en reparacion          │
    │                            │

Estados de Solicitud

Estado Descripcion
PENDIENTE Esperando atencion de almacen
EN_PREPARACION Almacenista preparando
DESPACHADO Entregado al mecanico
PARCIAL Entrega parcial (falta stock)
CANCELADO Solicitud cancelada
DEVUELTO Refaccion devuelta

Tareas Tecnicas

Database:

  • DB-045: Crear tabla part_requests
  • DB-046: Estados de solicitud
  • DB-047: Trigger para actualizar stock

Backend:

  • BE-085: Crear PartRequestEntity
  • BE-086: Endpoint POST /api/orders/:id/part-request
  • BE-087: Endpoint PATCH /api/part-requests/:id/dispatch
  • BE-088: Notificacion a almacenista
  • BE-089: Actualizar stock automaticamente

Frontend:

  • FE-084: Crear PartRequestForm en orden
  • FE-085: Crear PartRequestsList (almacen)
  • FE-086: Crear DispatchDialog
  • FE-087: Indicador de stock en busqueda

Dependencias

Depende de:

  • US-MMD004-001: Refacciones registradas
  • US-MMD002-001: Orden de servicio

Bloquea:

  • US-MMD002-005: Registrar trabajos (refacciones)

Definition of Done (DoD)

  • Solicitar desde orden
  • Ver stock disponible
  • Notificacion a almacen
  • Despachar y descontar stock
  • Devolucion
  • Tests pasando

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