作者 lyh

gx

... ... @@ -12,10 +12,41 @@ namespace App\Http\Controllers\Bside\Gpt;
use App\Enums\Common\Code;
use App\Http\Controllers\Bside\BaseController;
use App\Http\Logic\Bside\Gpt\ChatLogic;
use App\Models\Gpt\Chat;
use App\Models\Gpt\ChatItem;
class ChatController extends BaseController
{
/**
* @remark :获取消息列表
* @name :list
* @author :lyh
* @method :post
* @time :2025/4/2 15:51
*/
public function list(Chat $chat){
$list = $chat->lists(['user_id'=>$this->user['id'],'status'=>1],$this->page,$this->row);
$this->response('success',Code::SUCCESS,$list);
}
/**
* @remark :获取所有子消息
* @name :itemList
* @author :lyh
* @method :post
* @time :2025/4/2 15:55
*/
public function itemList(ChatItem $chatItem){
$this->request->validate([
'chat_id'=>['required'],
],[
'chat_id.required' => 'chat_id不能为空',
]);
$list = $chatItem->list(['user_id'=>$this->user['id'],'chat_id'=>$this->map['chat_id'],'status'=>1]);
$this->response('success',Code::SUCCESS,$list);
}
/**
* @remark :发送消息
* @name :sendMessage
* @author :lyh
... ... @@ -31,4 +62,21 @@ class ChatController extends BaseController
$data = $logic->sendMessage();
$this->response('success',Code::SUCCESS,$data);
}
/**
* @remark :删除消息
* @name :del
* @author :lyh
* @method :post
* @time :2025/4/2 15:54
*/
public function del(Chat $chat){
$this->request->validate([
'id'=>['required'],
],[
'id.required' => 'id不能为空',
]);
$data = $chat->edit(['status'=>0],['id'=>$this->param['id']]);
$this->response('success',Code::SUCCESS,$data);
}
}
... ...
... ... @@ -51,7 +51,7 @@ class ChatLogic extends BaseLogic
];
$result = $gptService->get_ai_chat($data);
$this->saveChatItem($chatInfo['id'],$result['text'] ?? '服务器繁忙,请重试',1);
return $this->success($result);
return $this->success(['text'=>$result['text']]);
}
}
$id = $this->saveChat($this->param['message']);
... ... @@ -64,7 +64,7 @@ class ChatLogic extends BaseLogic
];
$result = $gptService->get_ai_chat($data);
$this->saveChatItem($id,$result['text'] ?? '服务器繁忙,请重试',1);
return $this->success($result);
return $this->success(['text'=>$result['text']]);
}
/**
... ...
... ... @@ -714,6 +714,9 @@ Route::middleware(['bloginauth'])->group(function () {
});
//大模型会话
Route::prefix('gpt')->group(function () {
Route::any('/', [\App\Http\Controllers\Bside\Gpt\ChatController::class, 'list'])->name('gpt_list');
Route::any('/itemList', [\App\Http\Controllers\Bside\Gpt\ChatController::class, 'itemList'])->name('gpt_itemList');
Route::any('/del', [\App\Http\Controllers\Bside\Gpt\ChatController::class, 'del'])->name('gpt_del');
Route::any('/sendMessage', [\App\Http\Controllers\Bside\Gpt\ChatController::class, 'sendMessage'])->name('gpt_sendMessage');
});
});
... ...