From 99a0b63f0e448ea5653374b4d93b14fbe65f68f1 Mon Sep 17 00:00:00 2001 From: zhenhui <1276357500@qq.com> Date: Mon, 9 Mar 2026 14:55:27 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=8E=A5=E5=8F=A3v1]=E5=AF=B9=E6=8E=A5?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0API-=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/api/controller/v1/GameController.php | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/server/app/api/controller/v1/GameController.php b/server/app/api/controller/v1/GameController.php index 3184fe3..c59ce81 100644 --- a/server/app/api/controller/v1/GameController.php +++ b/server/app/api/controller/v1/GameController.php @@ -118,6 +118,17 @@ class GameController extends OpenController } $list = $query->page($page, $limit)->select()->toArray(); + $playerIds = array_unique(array_column($list, 'player_id')); + if (!empty($playerIds)) { + $players = DicePlayer::whereIn('id', $playerIds)->field('id,username,phone')->select()->toArray(); + $playerMap = []; + foreach ($players as $p) { + $playerMap[(int) ($p['id'] ?? 0)] = $p; + } + foreach ($list as &$item) { + $item['dice_player'] = $playerMap[(int) ($item['player_id'] ?? 0)] ?? null; + } + } return $this->success($list); } @@ -159,7 +170,9 @@ class GameController extends OpenController $query->where('create_time', '<=', $endCreateTime); } - $list = $query->page($page, $limit)->select()->toArray(); + $list = $query->with(['dicePlayer' => function ($q) { + $q->field('id,username,phone'); + }])->page($page, $limit)->select()->toArray(); return $this->success($list); } @@ -201,7 +214,9 @@ class GameController extends OpenController $query->where('create_time', '<=', $endCreateTime); } - $list = $query->page($page, $limit)->select()->toArray(); + $list = $query->with(['dicePlayer' => function ($q) { + $q->field('id,username,phone'); + }])->page($page, $limit)->select()->toArray(); return $this->success($list); } @@ -267,6 +282,8 @@ class GameController extends OpenController return $this->fail('操作失败:' . $e->getMessage(), ReturnCode::SERVER_ERROR); } - return $this->success($record->toArray()); + $recordArr = $record->toArray(); + $recordArr['dice_player'] = ['id' => (int) $player->id, 'username' => $player->username ?? '', 'phone' => $player->phone ?? '']; + return $this->success($recordArr); } }