From 51fc6573e1479e04c93fb7066240f977cdeacd48 Mon Sep 17 00:00:00 2001 From: liapples Date: Tue, 7 Sep 2021 11:07:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96SQL=E8=AF=AD=E5=8F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Api/MessageController.php | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/Api/MessageController.php b/app/Http/Controllers/Api/MessageController.php index c7167df..174ba62 100644 --- a/app/Http/Controllers/Api/MessageController.php +++ b/app/Http/Controllers/Api/MessageController.php @@ -16,16 +16,13 @@ class MessageController extends Controller { public function index() { - $list = Message::where('agent_id', $this->agent_id) + $list = Message::query()->where('agent_id', $this->agent_id) ->whereIn('user_id', [$this->user_id, 0]) //0是所有人都接收的系统消息 - ->select('id', 'user_id', 'title', 'created_at') + ->select('id', 'title', 'created_at') + ->selectRaw('IF(( SELECT 1 FROM `message_reads` AS `mr` WHERE mr.id = messages.id AND mr.user_id = messages.user_id ), 1, 0) AS `is_read`') ->orderBy('id', 'DESC') ->simplePaginate(15); - if (!empty($list->items())) { - foreach ($list->items() as &$v) { - $v->is_read = (int)MessageRead::where(['id' => $v->id, 'user_id' => $this->user_id])->exists(); - } - } + return $this->success($list); }