|
|
@@ -80,6 +80,7 @@ export interface Message {
|
|
|
sender?: string;
|
|
|
senderId?: string;
|
|
|
timestamp: number;
|
|
|
+ fileId?: number; // 用于图片消息的文件ID
|
|
|
}
|
|
|
|
|
|
export const useClassroom = ({ user }:{ user : User }) => {
|
|
|
@@ -162,7 +163,8 @@ export const useClassroom = ({ user }:{ user : User }) => {
|
|
|
content: message.content,
|
|
|
senderId: message.senderId || null,
|
|
|
senderName: message.sender || null,
|
|
|
- timestamp: message.timestamp
|
|
|
+ timestamp: message.timestamp,
|
|
|
+ fileId: message.fileId || null // 添加fileId字段
|
|
|
}
|
|
|
});
|
|
|
} catch (error) {
|
|
|
@@ -749,7 +751,7 @@ export const useClassroom = ({ user }:{ user : User }) => {
|
|
|
// 将历史消息添加到消息列表
|
|
|
const historyMessages: Message[] = historyData.data.map((msg) => ({
|
|
|
type: msg.type,
|
|
|
- content: msg.content,
|
|
|
+ content: msg.type === 'image' && msg.file ? msg.file.fullUrl : msg.content,
|
|
|
sender: msg.senderName || msg.senderId || '',
|
|
|
senderId: msg.senderId || '',
|
|
|
timestamp: msg.timestamp
|
|
|
@@ -888,13 +890,14 @@ export const useClassroom = ({ user }:{ user : User }) => {
|
|
|
if (!imMessageManager.current || !classId) return;
|
|
|
|
|
|
try {
|
|
|
- // 先保存消息到数据库,保存fileId而不是完整的URL
|
|
|
+ // 先保存消息到数据库,保存fileId到fileId字段
|
|
|
const message: Message = {
|
|
|
type: 'image',
|
|
|
- content: fileId.toString(),
|
|
|
+ content: '[图片]', // 内容字段保存描述文本
|
|
|
sender: user?.nickname || user?.username || '',
|
|
|
senderId: userId,
|
|
|
- timestamp: Date.now()
|
|
|
+ timestamp: Date.now(),
|
|
|
+ fileId: fileId // 新增fileId字段
|
|
|
};
|
|
|
await saveMessageToDatabase(message);
|
|
|
|