Files
2026-08-24 08:13:43 +02:00

1.4 KiB

POS-FIX-11: Implementer Evidence

Problema

Al guardar un ticket pendiente sin cliente asociado, no había forma de identificarlo. Solo se mostraba el ID o receipt number.

Cambios realizados

Migración

project/migrations/059_pos_pending_label.js

  • Añade columna pos_label a orders_orders para almacenar nombre identificativo

Backend

project/src/modules/pos/domain/pos-sale.ts

  • Añade campo posLabel?: string a PosSaleInput

project/src/modules/pos/api/pos.routes.ts

  • Schema: acepta posLabel en POST /pos/sales
  • Query listSales: devuelve pos_label AS "posLabel"

project/src/modules/pos/application/create-pos-sale.ts

  • INSERT: guarda input.posLabel en columna pos_label

Frontend

project/apps/pos/src/types/checkout.ts

  • Añade posLabel?: string | null a PosPendingSale

project/apps/pos/src/app/(terminal)/page.tsx

  • Nuevo estado pendingParkName para el diálogo de nombre
  • Nueva función doParkSale(name?) que acepta nombre opcional
  • parkSale ahora abre diálogo si no hay cliente
  • Diálogo para pedir nombre con input y botones Guardar/Cancelar
  • Panel de ventas pendientes muestra: nombre/receipt → fecha+hora · total · pendiente

Verificación

  • TypeScript compila sin errores
  • Diálogo aparece al guardar pendiente sin cliente
  • Nombre se muestra en el panel junto con fecha
  • Migración creada correctamente