From 78b14f4aad92f6d662c5b3583efed1e1378c4179 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Mon, 12 Jan 2026 15:03:04 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=20dialog=5Fonly=20?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=94=AF=E6=8C=81=E4=BB=85=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E5=AF=B9=E8=AF=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在 dialog/search 接口中增加 dialog_only 可选参数, 启用后仅搜索会话和联系人,跳过消息内容搜索。 --- app/Http/Controllers/Api/DialogController.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/Api/DialogController.php b/app/Http/Controllers/Api/DialogController.php index fedd7e180..fef042f55 100755 --- a/app/Http/Controllers/Api/DialogController.php +++ b/app/Http/Controllers/Api/DialogController.php @@ -109,7 +109,8 @@ class DialogController extends AbstractController * @apiGroup dialog * @apiName search * - * @apiParam {String} key 消息关键词 + * @apiParam {String} key 搜索关键词 + * @apiParam {String} [dialog_only] 仅搜索会话和联系人,不搜索消息内容(可选,传任意值启用) * * @apiSuccess {Number} ret 返回状态码(1正确、0错误) * @apiSuccess {String} msg 返回信息(错误描述) @@ -123,6 +124,7 @@ class DialogController extends AbstractController if (empty($key)) { return Base::retError('请输入搜索关键词'); } + $dialogOnly = Request::exists('dialog_only'); // 搜索会话 $take = 20; $list = WebSocketDialog::searchDialog($user->userid, $key, $take); @@ -153,8 +155,8 @@ class DialogController extends AbstractController }); $list = array_merge($list, $users->toArray()); } - // 搜索消息会话 - if (count($list) < $take) { + // 搜索消息会话(仅当 dialog_only 未设置时) + if (!$dialogOnly && count($list) < $take) { $searchResults = ManticoreMsg::searchDialogs($user->userid, $key, 0, $take - count($list)); if ($searchResults) { foreach ($searchResults as $item) {