From cfe8df43d154bbc3b11dde4be8c81c9c6fe99207 Mon Sep 17 00:00:00 2001 From: CrescentLeaf Date: Sun, 9 Nov 2025 00:32:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BA=20MessageBean=20=E6=B7=BB=E5=8A=A0=20?= =?UTF-8?q?chat=5Fid=20=E5=AD=97=E6=AE=B5=3F=20*=20=E4=B8=8D=E7=9F=A5?= =?UTF-8?q?=E9=81=93=E6=9C=89=E6=B2=A1=E6=9C=89=E7=94=A8,=20=E6=9C=89?= =?UTF-8?q?=E5=8F=AF=E8=83=BD=E4=BC=9A=E8=A2=AB=E7=A7=BB=E9=99=A4=20*=20?= =?UTF-8?q?=E6=9C=89=E5=8F=AF=E8=83=BD=E6=98=AF=E5=8F=B2=E5=B1=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/api/ChatApi.ts | 13 +++++++++---- server/data/MessageBean.ts | 1 + server/data/MessagesManager.ts | 6 +++++- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/server/api/ChatApi.ts b/server/api/ChatApi.ts index 698eb44..d35cd9e 100644 --- a/server/api/ChatApi.ts +++ b/server/api/ChatApi.ts @@ -62,17 +62,22 @@ export default class ChatApi extends BaseApi { const userInst = User.findById(id) userInst?.updateRecentChat(chat.bean.id, args.text as string) }) + const m = { + ...msg, + id, + chat_id: chat.bean.id, + } this.boardcastToUsers(users, 'Client.onMessage', { chat: chat.bean.id, - msg: { - ...msg, - id - } + msg: m }) return { code: 200, msg: "成功", + data: { + msg: m, + } } }) /** diff --git a/server/data/MessageBean.ts b/server/data/MessageBean.ts index 5426a56..931436d 100644 --- a/server/data/MessageBean.ts +++ b/server/data/MessageBean.ts @@ -2,6 +2,7 @@ export default class MessageBean { declare id: number declare text: string declare user_id?: string + declare chat_id?: string declare time: string [key: string]: unknown diff --git a/server/data/MessagesManager.ts b/server/data/MessagesManager.ts index ae01948..f22653d 100644 --- a/server/data/MessagesManager.ts +++ b/server/data/MessagesManager.ts @@ -60,7 +60,11 @@ export default class MessagesManager { }) } getMessages(limit: number = 15, offset: number = 0) { - return MessagesManager.database.prepare(`SELECT * FROM ${this.getTableName()} ORDER BY id DESC LIMIT ? OFFSET ?;`).all(limit, offset) as unknown as MessageBean[] + const ls = MessagesManager.database.prepare(`SELECT * FROM ${this.getTableName()} ORDER BY id DESC LIMIT ? OFFSET ?;`).all(limit, offset) as unknown as MessageBean[] + return ls.map((v) => ({ + ...v, + chat_id: this.chat.bean.id, + })) } getMessagesWithPage(limit: number = 15, page: number = 0) { return this.getMessages(limit, limit * page)