diff --git a/app/Filament/Resources/UserResource.php b/app/Filament/Resources/UserResource.php index e0a5921..dbe4daf 100644 --- a/app/Filament/Resources/UserResource.php +++ b/app/Filament/Resources/UserResource.php @@ -229,8 +229,15 @@ class UserResource extends Resource ->toggleable(), Tables\Columns\TextColumn::make('permissions_count') ->label('权限数量') - ->counts('permissions') - ->sortable() + ->getStateUsing(function (User $record): int { + // 获取用户所有权限(包括通过角色继承的) + return $record->getAllPermissions()->count(); + }) + ->sortable(query: function ($query, string $direction): void { + // 使用子查询进行排序 + $query->withCount('permissions') + ->orderBy('permissions_count', $direction); + }) ->toggleable(), Tables\Columns\TextColumn::make('created_at') ->label('创建时间')