attributes->get('syncToken'); abort_unless(collect($token->abilities ?? [])->contains('classes'), 403, 'Token tidak memiliki akses ke data kelas.'); $items = SchoolClass::query() ->orderByDesc('academic_year_id') ->orderBy('name') ->get([ 'id', 'academic_year_id', 'department_id', 'name', 'level', 'homeroom_teacher', 'capacity', 'is_active', 'updated_at', ]); return response()->json([ 'success' => true, 'source' => 'database-kesiswaan', 'resource' => 'classes', 'count' => $items->count(), 'data' => $items, ]); } }