feat(F-187): completed feature

This commit is contained in:
chattie
2026-08-22 22:23:44 +02:00
parent a3f6edd325
commit ca12f46bff
22 changed files with 1053 additions and 59 deletions

View File

@@ -1,6 +1,6 @@
# TPV — Checkout, pagos mixtos y tickets
> Implementado en F-186. Complementa `POS_API.md` y sustituye el flujo inmediato de pago único descrito en documentos de discovery antiguos.
> Implementado en F-186 y ampliado en F-187. Complementa `POS_API.md` y sustituye el flujo inmediato de pago único descrito en documentos de discovery antiguos.
## Configuración en administración
@@ -35,6 +35,29 @@ Configura:
La asignación del siguiente número se bloquea dentro de la transacción de venta, evitando números duplicados entre terminales concurrentes.
### Cajeros
En **Administración → TPV → Cajeros** puedes crear cuentas con rol cajero y consultar su estado:
- **Activo**: puede iniciar sesión y abrir caja.
- **Inactivo**: no puede autenticarse; se puede reactivar.
- **Eliminado**: no puede autenticarse ni reactivarse.
**Desactivar** revoca inmediatamente todas las sesiones del cajero. Al reactivarlo tendrá que iniciar una sesión nueva.
**Eliminar** requiere confirmación y realiza una baja lógica irreversible. La fila y el UUID se conservan para que tickets, ventas, sesiones de caja, reporting y auditoría sigan indicando quién realizó la operación.
No se puede desactivar ni eliminar un cajero con una sesión de caja abierta. Primero debe cerrarse y cuadrarse esa sesión.
API administrativa:
- `GET /pos/users`: lista personal POS y estado de lifecycle.
- `POST /pos/users`: crea cajero/manager; contraseña mínima de ocho caracteres.
- `PATCH /pos/users/:id/status` con `{ "active": false }` o `{ "active": true }`.
- `DELETE /pos/users/:id`: baja lógica irreversible del cajero.
Las operaciones de estado y eliminación solo admiten objetivos con rol `pos_cashier`, requieren administrador y generan eventos de auditoría.
## Flujo de caja
1. Añade productos de catálogo o un **Artículo libre** (nombre y precio positivo).
@@ -137,7 +160,6 @@ El efectivo esperado aumenta por el importe aplicado, no por el efectivo entrega
## Próximas ampliaciones
- F-187: eliminar/desactivar cajeros preservando histórico.
- F-188: ventas con saldo pendiente.
- F-189: cantidades negativas, devoluciones parciales/totales y ticket de devolución.
- F-190: auditoría completa de actualización/refresco de reporting.