Le bouton « Appeler le suivant » en temps réel
Le geste central du commerçant : un clic appelle le client suivant, la liste se met à jour en direct sur tous les écrans.
Module 5 · Les fonctionnalités qui font vendre
Objectif du chapitre
Sur /dashboard/[queueId], le commerçant voit sa file en direct et appelle le suivant en un clic. Deux onglets ouverts restent synchronisés. Durée : 1 h 15 · 85 % pratique.
Prérequis : la page publique (chapitre 16).

Étape 1 : appeler le suivant, côté base
create or replace function public.call_next(p_queue_id uuid)
returns int
language plpgsql security invoker set search_path = public as $$
declare v_number int;
begin
update public.tickets set status = 'called', called_at = now()
where id = (
select id from public.tickets
where queue_id = p_queue_id and status = 'waiting'
order by number limit 1
for update skip locked)
returning number into v_number;
return v_number;
end $$;
alter publication supabase_realtime add table public.tickets;
security invoker : la fonction s’exécute avec les droits du commerçant connecté, donc la RLS s’applique. Impossible d’appeler le suivant dans la file d’un autre.
La suite de cette leçon est réservée aux abonnés
Les 3 premières leçons de chaque formation sont gratuites. Débloquez la suite pour continuer.
Déjà abonné ? Se connecter
