-- Check-out fuer Empfangs-Besucher.
-- ====================================================================
-- Wenn ein Besucher das Gebaeude verlaesst, kann der Empfangs-Mitarbeiter
-- (oder eine Empfang-Tablet-Kraft) den Besuch als "ausgecheckt" markieren.
-- card_leads dient ebenfalls als Empfangs-Buch: source_url = '/admin/empfang'
-- (oder '/empfang' aus dem Kiosk-Modus) markiert einen Empfang-Eintrag.
-- Die Spalte ist generisch nutzbar und steht jeden Lead zur Verfuegung,
-- aber UI-seitig nur fuer Empfangs-Eintraege gepflegt.

alter table public.card_leads
  add column if not exists checked_out_at timestamptz;

-- Index fuer "heute offen" — schnelle Filterung der noch nicht ausgecheckten
-- Besuche aus den letzten 24h.
create index if not exists card_leads_open_visits_idx
  on public.card_leads (created_at desc)
  where checked_out_at is null
    and source_url in ('/admin/empfang', '/empfang');
