7.9 KiB
7.9 KiB
EPICA: EPIC-RT-004 - Compras y Reabastecimiento
Metadata
| Campo | Valor |
|---|---|
| ID | EPIC-RT-004 |
| Nombre | Compras y Reabastecimiento |
| Modulo | compras |
| Fase | Fase 1 - MVP |
| Prioridad | P0 (Critico) |
| Estado | Backlog |
| Story Points | 38 |
| Sprint(s) | Sprint 5-6 |
Descripcion
Gestión de compras a proveedores para reabastecimiento de tiendas. Incluye sugerencias automáticas de compra basadas en stock mínimo, gestión de órdenes de compra, recepción de mercancía y evaluación de proveedores.
Objetivo de Negocio
- Evitar quiebres de stock
- Optimizar niveles de inventario
- Negociar mejores condiciones con proveedores
- Automatizar proceso de reabastecimiento
- Control de costos de compra
Historias de Usuario
| ID | Historia | Prioridad | SP | Estado |
|---|---|---|---|---|
| US-RT004-001 | Como comprador, quiero ver sugerencias de compra basadas en stock mínimo | P0 | 5 | Backlog |
| US-RT004-002 | Como comprador, quiero crear orden de compra desde sugerencias | P0 | 5 | Backlog |
| US-RT004-003 | Como comprador, quiero agregar productos manualmente a orden de compra | P0 | 3 | Backlog |
| US-RT004-004 | Como comprador, quiero enviar orden de compra al proveedor por email | P0 | 3 | Backlog |
| US-RT004-005 | Como almacenista, quiero recibir mercancía validando contra orden de compra | P0 | 5 | Backlog |
| US-RT004-006 | Como almacenista, quiero registrar diferencias en recepción (faltantes/sobrantes) | P0 | 3 | Backlog |
| US-RT004-007 | Como comprador, quiero gestionar catálogo de proveedores con datos de contacto | P0 | 3 | Backlog |
| US-RT004-008 | Como comprador, quiero ver historial de compras por proveedor | P1 | 3 | Backlog |
| US-RT004-009 | Como gerente, quiero ver métricas de cumplimiento de proveedores | P1 | 5 | Backlog |
| US-RT004-010 | Como admin, quiero configurar lead times por proveedor para sugerencias | P2 | 3 | Backlog |
Total Story Points: 38 SP
Flujo de Orden de Compra
┌─────────────┐
│ BORRADOR │ ← OC siendo creada
└──────┬──────┘
│
▼
┌─────────────┐
│ CONFIRMADA │ ← Aprobada internamente
└──────┬──────┘
│
▼
┌─────────────┐
│ ENVIADA │ ← Enviada al proveedor
└──────┬──────┘
│
├──────────────┐
▼ ▼
┌─────────────┐ ┌─────────────┐
│ RECIB_PARC │ │ RECIBIDA │
│ (parcial) │ │ (completa) │
└──────┬──────┘ └──────┬──────┘
│ │
▼ ▼
┌─────────────────────────┐
│ CERRADA │
└─────────────────────────┘
Algoritmo de Sugerencias
┌─────────────────────────────────────────────────────────┐
│ CÁLCULO DE SUGERENCIA DE COMPRA │
├─────────────────────────────────────────────────────────┤
│ │
│ PARA CADA PRODUCTO: │
│ │
│ stock_actual = consultar_stock(producto, sucursal) │
│ stock_minimo = producto.stock_minimo │
│ stock_maximo = producto.stock_maximo │
│ ventas_diarias = promedio_ventas(producto, 30_dias) │
│ lead_time = proveedor.lead_time_dias │
│ │
│ punto_reorden = stock_minimo + (ventas_diarias * lead_time)
│ │
│ SI stock_actual <= punto_reorden: │
│ cantidad_sugerida = stock_maximo - stock_actual │
│ CREAR_SUGERENCIA(producto, cantidad_sugerida) │
│ │
└─────────────────────────────────────────────────────────┘
Criterios de Aceptacion de la Epica
Funcionales:
- Sugerencias automáticas de compra
- Crear OC desde sugerencias
- Agregar productos manualmente
- Enviar OC por email
- Recibir mercancía con validación
- Registrar diferencias
- Catálogo de proveedores
- Métricas de cumplimiento
No Funcionales:
- Cálculo de sugerencias < 30 segundos (todos los productos)
- Historial de 2 años de OC
- Soporte para 50+ proveedores
Tecnicos:
- Integración con módulo Inventario
- Envío de emails con PDF adjunto
- Job programado para sugerencias
Dependencias
Esta epica depende de:
| Epica/Modulo | Estado | Bloqueante |
|---|---|---|
| EPIC-RT-001 Fundamentos | Backlog | Si |
| EPIC-RT-003 Inventario | Backlog | Si |
Esta epica bloquea:
| Epica/Modulo | Razon |
|---|---|
| EPIC-RT-003 Inventario | Recepciones actualizan stock |
Desglose Tecnico
Database:
- Schema:
purchases - Tablas: 7 (purchase_orders, po_items, suppliers, supplier_products, receipts, receipt_items, suggestions)
- Funciones: 3 (calculate_suggestions, validate_receipt, evaluate_supplier)
- Indices: Por proveedor, fecha, estado
Backend:
- Modulo:
purchases - Entities: 6 (PurchaseOrder, POItem, Supplier, SupplierProduct, Receipt, Suggestion)
- Endpoints: 15
- Tests: 30
Frontend:
- Paginas: 5 (Suggestions, PurchaseOrders, PODetail, Suppliers, Receipts)
- Componentes: 12 (SuggestionCard, POForm, SupplierSelector, ReceiptValidator, etc.)
- Stores: 1 (purchasesStore)
Endpoints API
| Metodo | Endpoint | Descripcion |
|---|---|---|
| GET | /api/purchases/suggestions | Ver sugerencias de compra |
| POST | /api/purchases/orders | Crear orden de compra |
| GET | /api/purchases/orders/:id | Detalle de OC |
| PATCH | /api/purchases/orders/:id | Actualizar OC |
| POST | /api/purchases/orders/:id/send | Enviar a proveedor |
| POST | /api/purchases/receipts | Registrar recepción |
| GET | /api/purchases/suppliers | Listar proveedores |
| POST | /api/purchases/suppliers | Crear proveedor |
| GET | /api/purchases/suppliers/:id/metrics | Métricas de proveedor |
| POST | /api/purchases/calculate-suggestions | Recalcular sugerencias |
Riesgos
| Riesgo | Probabilidad | Impacto | Mitigacion |
|---|---|---|---|
| Sugerencias incorrectas | Media | Alto | Validación manual antes de OC |
| Proveedor no cumple | Media | Alto | Proveedores alternativos |
| Recepciones incompletas | Media | Medio | Flujo de diferencias |
Definition of Ready (DoR)
- Historias de usuario definidas
- Criterios de aceptacion claros
- Dependencias identificadas
- Estimacion completada
- Catálogo inicial de proveedores
- Lead times definidos
Definition of Done (DoD)
- Sugerencias de compra funcionando
- Flujo completo de OC operativo
- Recepción con validación
- Métricas de proveedores
- Tests de integración pasando
- Documentación de API
Historial
| Fecha | Cambio | Autor |
|---|---|---|
| 2025-12-08 | Creacion de epica | Claude-Agent |
Creada por: Claude-Agent Fecha: 2025-12-08 Ultima actualizacion: 2025-12-08