tenant_id) ->with(['waitingList', 'dailyMetrics' => function($q) { // Otimização: Traz apenas as métricas de HOJE para não carregar histórico antigo $q->whereDate('date', Carbon::today()); }]); // Aplica o filtro de setor do supervisor, se existir if (!empty($user->allowed_sector)) { $query->where('sector', $user->allowed_sector); } $queues = $query->get(); // --- 2. BUSCA DE AGENTES (NOVO) --- // Aqui pegamos todos os agentes do Tenant. // Usamos orderByRaw para mostrar quem está FALANDO primeiro, depois PAUSADO. $agents = Agent::where('tenant_id', $user->tenant_id) ->orderByRaw("FIELD(status, 'talking', 'paused', 'available', 'offline')") ->orderBy('name') ->get(); // 3. Entrega tudo para o Vue return Inertia::render('Dashboard', [ 'queues' => $queues, 'agents' => $agents // <--- Agora o Dashboard recebe os agentes ]); } }