c980ce1d8d
- getDashboardData aggregates open jobs, pending-action jobs, unread notifications, pending finance totals, approved connection count, recent jobs (up to 8) and recent notifications (up to 5) — single Promise.all so the dashboard renders in one round-trip. - Four stat cards, each a Link to the relevant module; tone (positive / negative) flips between clinic (payable) and lab (receivable). - Clinic users with zero approved connections see a 'Bağlantı Kur' prompt card so they don't get stuck on /jobs/new. - Recent jobs table is role-aware: lab sees Klinik column + 'Son Gelen İşler' header, clinic sees Laboratuvar column + 'Son Giden İşler' header. - Recent notifications panel with read/unread dot, clickable header arrow to /notifications. - ActiveContext now carries 'kind' (mirror of TenantSettings.kind) so we no longer reach into ctx.settings?.kind in callers.