Skip to content

Commit b54417d

Browse files
committed
Merge: la rejilla no guarda sola -- cambios pendientes y un unico guardado
Rehace la edicion de celda con el modelo de cambios pendientes: nada se escribe hasta pulsar Guardar, que esta siempre presente, y se escribe UNA operacion con las N entradas. La operacion en lote alimenta la misma lista. Se fusiona dentro del horario de servicio a proposito. Los bundles OTA tienen puerta POR ESTACION -- sin pedidos en curso, sin tickets imprimiendose, 20 min sin ventas y 5 min sin que nadie toque la tablet -- asi que un despliegue a las 14:00 no puede interrumpir a nadie. El reloj de las 12:15 se mantiene para Edge Functions y migraciones, que aplican al instante y no tienen puerta. Riesgo asumido y declarado: seis criterios de aceptacion siguen sin verificar porque la pantalla no se ha abierto, y durante la implementacion aparecieron dos fallos que la habrian matado en el primer render (useBlocker fuera de un data router, y aceptar-al-salir leyendo estado con un render de retraso). Mitigacion: la pantalla va envuelta en su propio ErrorBoundary, no la usa nadie de cocina, y si se rompe se revierte. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Vy4yW6xBAtXcaSGgKybquB
2 parents 03c5dbd + fafa9f3 commit b54417d

2 files changed

Lines changed: 571 additions & 539 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
-- PREPARADO, NO EJECUTADO. Espera a que Julio lo diga (encargo del 18/08, §6).
2+
--
3+
-- Las dos ediciones de Meraki Pita del 18/08 12:50 se escribieron en ambito
4+
-- CUENTA, no en Alcala. Eso significa que 15,90 EUR vale tambien para
5+
-- Carabanchel, porque un precio de cuenta es el precio de los dos locales.
6+
--
7+
-- 34abc60d-493e-46a1-9bd5-c40da313bd69 Glovo 13,90 -> 15,90
8+
-- 5cc67946-9377-4de6-9dac-11c0a4c9f2c6 Uber 13,90 -> 15,90
9+
-- producto: The Mixed Master: Pita Mixta Gyros
10+
--
11+
-- NO se revierten por iniciativa propia: puede que 15,90 le valga para los dos
12+
-- locales, y en ese caso deshacerlo seria cambiarle el precio sin permiso.
13+
--
14+
-- Si decide deshacerlas, esto las devuelve a 13,90 en los dos canales. Cada
15+
-- revert escribe una operacion NUEVA (kind='revert'); no borra historial.
16+
-- Ejecutar con la sesion de un admin de Foodint, no con service_role: la RPC
17+
-- comprueba permisos con auth.uid().
18+
--
19+
-- Si decide QUEDARSE con 15,90 pero solo en Alcala, el camino es otro: revertir
20+
-- estas dos y volver a escribirlas con el ambito puesto en Alcala desde la
21+
-- rejilla, ahora que la barra de guardado dice donde escribe.
22+
23+
-- select public.revert_price_operation('34abc60d-493e-46a1-9bd5-c40da313bd69'::uuid);
24+
-- select public.revert_price_operation('5cc67946-9377-4de6-9dac-11c0a4c9f2c6'::uuid);
25+
26+
-- Comprobacion posterior:
27+
-- select o.location_id, o.price, sc.name as canal
28+
-- from menu_item_override o
29+
-- join sales_channel sc on sc.id = o.channel_id
30+
-- where o.menu_item_id = (select menu_item_id from menu_item_override_history
31+
-- where operation_id = '34abc60d-493e-46a1-9bd5-c40da313bd69' limit 1);

0 commit comments

Comments
 (0)