Staff — POS pages

Each POS screen is a flat URL under PosShell. Content for most tabs is rendered by AdminPage; Müdavim has its own feature page wired through the same shell.

Role → page matrix

Page Path Garson Barkasa Patron
Masalar /masalar
Ürünler /urunler
Adisyonlar /checks
Raporlar /reports
İşlem geçmişi /islem-gecmisi
Rezervasyon /rezervasyon ✓* ✓*
Müdavim /mudavim
Ayarlar /ayarlar

*Requires reservation.manage.

Shared host behavior

  • Tab id comes from the URL slug (paths.ts), so refresh restores the same page.
  • Unauthorized tab URLs bounce to Masalar.
  • Many floor mutations require an open business day; closed days show gates/overlays on Masalar.
  • Live lists poll about every 10 seconds while relevant queries are active.
  • Deep order work (approve, pay, add items, flags) opens dialogs from Masalar and reuses permission checks from Auth & roles.

Page docs

  1. Masalar — live floor
  2. Ürünler — catalog
  3. Adisyonlar — calendar-day checks
  4. Raporlar — business day & export
  5. İşlem geçmişi — audit
  6. Rezervasyon — bookings
  7. Müdavim — house accounts
  8. Ayarlar — settings & personnel