159 lines
4.0 KiB
Markdown
159 lines
4.0 KiB
Markdown
# 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**
|
|
```gherkin
|
|
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**
|
|
```gherkin
|
|
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**
|
|
```gherkin
|
|
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**
|
|
```gherkin
|
|
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**
|
|
```gherkin
|
|
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
|