fix: 修复用户管理中权限数量显示为0的问题
- 使用 getAllPermissions() 获取用户所有权限 - 包括直接分配的权限和通过角色继承的权限 - 修复排序功能以支持新的计算方式
This commit is contained in:
@@ -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('创建时间')
|
||||
|
||||
Reference in New Issue
Block a user