feat(POS-FIX-9): completed feature

This commit is contained in:
chattie
2026-08-24 07:44:30 +02:00
parent e15918058f
commit 75d0d5b6a7
8 changed files with 212 additions and 16 deletions

View File

@@ -0,0 +1,26 @@
# POS-FIX-9: Implementer Evidence
## Problema
1. El panel de ventas pendientes hacía polling cada 10 segundos causando flicker constante.
2. Al recuperar un ticket con artículos en el cashier, se hacía merge automático sin preguntar.
## Cambios realizados
### Frontend
**`project/apps/pos/src/app/(terminal)/page.tsx`**
- **Eliminado polling de 10s** — solo refresh manual via botón
- **Nueva función `doRecoverSale(sale)`** — recuperación real (reutilizada por parkAndRecover y merge)
- **Nueva función `parkAndRecover()`** — aparca ticket actual y recupera venta seleccionada
- **Nueva función `mergeRecoveredItems()`** — añade items recuperados al ticket actual
- **Modificada `recoverSale(sale)`** — si cart tiene items, abre merge dialog en vez de auto-merge
- **Nuevo estado `mergePendingSale`** — almacena la venta a recuperar para el diálogo
- **Diálogo de merge** con 3 opciones:
- 💾 "Dejar actual pendiente y recuperar" — parkAndRecover()
- "Añadir al ticket actual" — mergeRecoveredItems()
- "Cancelar" — cierra diálogo sin acción
## Verificación
- [x] TypeScript compila sin errores
- [x] Polling 10s eliminado del panel de ventas pendientes
- [x] Diálogo de merge visible al recuperar con cart items
- [x] Tres opciones funcionando correctamente