fix user carries no role info

This commit is contained in:
2026-03-19 08:45:32 +08:00
parent 1f66b261f4
commit 770f26afb1
2 changed files with 5 additions and 2 deletions
@@ -413,6 +413,8 @@ class AuthController extends AbstractController
])->withStatus(401); ])->withStatus(401);
} }
$user->load('role');
return [ return [
'code' => 0, 'code' => 0,
'message' => '获取成功', 'message' => '获取成功',
@@ -420,6 +422,7 @@ class AuthController extends AbstractController
'id' => $user->id, 'id' => $user->id,
'username' => $user->username, 'username' => $user->username,
'email' => $user->email, 'email' => $user->email,
'role' => $user->role?->name ?? 'accessor',
'status' => $user->status, 'status' => $user->status,
'ext' => $user->ext, 'ext' => $user->ext,
'created_at' => $user->created_at->toDateTimeString(), 'created_at' => $user->created_at->toDateTimeString(),
@@ -63,7 +63,7 @@ class UserController extends AbstractController
$page = max(1, (int) $this->request->input('page', 1)); $page = max(1, (int) $this->request->input('page', 1));
$per_page = min(100, max(1, (int) $this->request->input('per_page', 15))); $per_page = min(100, max(1, (int) $this->request->input('per_page', 15)));
$query = User::query(); $query = User::query()->with('role');
// 按 username 模糊搜索 // 按 username 模糊搜索
$username = $this->request->input('username'); $username = $this->request->input('username');
@@ -281,7 +281,7 @@ class UserController extends AbstractController
#[Middleware(PermissionMiddleware::class)] #[Middleware(PermissionMiddleware::class)]
public function show(int $id): \Psr\Http\Message\ResponseInterface|array public function show(int $id): \Psr\Http\Message\ResponseInterface|array
{ {
$user = User::query()->find($id); $user = User::query()->with('role')->find($id);
if (!$user) { if (!$user) {
return $this->response->json([ return $this->response->json([