Feat: 后台用户列表增加金币/魅力列,表头支持点击排序(等级/经验/金币/魅力)
This commit is contained in:
@@ -23,7 +23,7 @@ use Illuminate\View\View;
|
||||
class UserManagerController extends Controller
|
||||
{
|
||||
/**
|
||||
* 显示拥护列表及搜索
|
||||
* 显示用户列表及搜索(支持按等级/经验/金币/魅力排序)
|
||||
*/
|
||||
public function index(Request $request): View
|
||||
{
|
||||
@@ -33,13 +33,17 @@ class UserManagerController extends Controller
|
||||
$query->where('username', 'like', '%'.$request->input('username').'%');
|
||||
}
|
||||
|
||||
// 分页获取用户
|
||||
$users = $query->orderBy('id', 'desc')->paginate(20);
|
||||
// 排序:允许的字段白名单,防止 SQL 注入
|
||||
$sortable = ['user_level', 'exp_num', 'jjb', 'meili', 'id'];
|
||||
$sortBy = in_array($request->input('sort_by'), $sortable) ? $request->input('sort_by') : 'id';
|
||||
$sortDir = $request->input('sort_dir') === 'asc' ? 'asc' : 'desc';
|
||||
|
||||
$users = $query->orderBy($sortBy, $sortDir)->paginate(20)->withQueryString();
|
||||
|
||||
// VIP 等级选项列表(供编辑弹窗使用)
|
||||
$vipLevels = \App\Models\VipLevel::orderBy('sort_order')->get();
|
||||
|
||||
return view('admin.users.index', compact('users', 'vipLevels'));
|
||||
return view('admin.users.index', compact('users', 'vipLevels', 'sortBy', 'sortDir'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user