user()->isAdmin() || auth()->user()->isManager(), 403); $this->user = $user->load('department'); } public function render() { $assigned = ServiceRequest::query()->where('assigned_to', $this->user->id)->count(); $resolved = ServiceRequest::query() ->where('assigned_to', $this->user->id) ->whereHas('status', fn ($q) => $q->whereIn('slug', ['resolved', 'closed'])) ->count(); $avgRating = ServiceRequest::query()->where('assigned_to', $this->user->id)->whereNotNull('client_rating')->avg('client_rating'); return view('livewire.users.user-show-page', [ 'assigned' => $assigned, 'resolved' => $resolved, 'avgRating' => $avgRating ? round((float) $avgRating, 2) : 0, 'activities' => ActivityLog::query()->where('user_id', $this->user->id)->latest('created_at')->limit(20)->get(), 'recentRequests' => ServiceRequest::query()->where('assigned_to', $this->user->id)->latest()->limit(10)->get(), ])->title("Профиль: {$this->user->name}"); } }