wkw 1 month ago
parent
commit
07fed922d8
2 changed files with 7 additions and 4 deletions
  1. 3 3
      src/stores/modules/webSocketStore.js
  2. 4 1
      src/views/im/hook/messagesHook.js

+ 3 - 3
src/stores/modules/webSocketStore.js

@@ -486,7 +486,7 @@ export const useWebSocketStore = defineStore("webSocketStore", {
       }
       systemStore.messageList[sessionId] = [...systemStore.messageList[sessionId]].map(item => {
         // 消息发送成功确认
-        if (!item.id && msg.msgId && item.msgId + '' === msg.msgId + '') return {...item, id: msg.id, msgId: undefined, err: !msg.id?true:undefined};
+        if (!item.id && msg.msgId && item.msgId + '' === msg.msgId + '') return { ...item, file: null, localUrl: null, id: msg.id, url: msg.url || item.localUrl, msgId: undefined, err: !msg.id?true:undefined};
         // 阅后即焚
         // console.log(item.id, msg?.id)
         if (item.id + '' === msg?.id + '') return {...item, isTemp: true, content: "", url: ""};
@@ -496,13 +496,13 @@ export const useWebSocketStore = defineStore("webSocketStore", {
       if (this.toUserInfo.uuid === sessionId) { 
         this.messages = [...this.messages].map(item => {
           // 消息发送成功确认
-          if (!item.id && msg.msgId && item.msgId + '' === msg?.msgId + '') return { ...item, id: msg.id, msgId: undefined, err: !msg.id?true:undefined};
+          if (!item.id && msg.msgId && item.msgId + '' === msg?.msgId + '') return { ...item, file: null, localUrl: null, url: msg.url || item.localUrl, id: msg.id, msgId: undefined, err: !msg.id?true:undefined};
           // 阅后即焚
           if (item.id + '' === msg?.id + '') return { ...item, isTemp: true, content: "", url: ""};
           return item;
         });
       }
-      console.log("修改消息", message, sessionId, systemStore.messageList,this.messages);
+      // console.log("修改消息", message, sessionId, systemStore.messageList,this.messages);
     },
     // 更新本地消息
     modifyMessage(message, msgId, sessionId = null) { 

+ 4 - 1
src/views/im/hook/messagesHook.js

@@ -123,6 +123,7 @@ export const setMessageHook = (message, wsStore) => {
     const url = URL.createObjectURL(blob);
     wsStore.pushMessage(formatMessageExt({
       ...message,
+      file:null,
       toUuid: message.to,
       fromUuid: message.from,
       align: 'right',
@@ -136,6 +137,7 @@ export const setMessageHook = (message, wsStore) => {
     const url = URL.createObjectURL(blob);
     wsStore.pushMessage(formatMessageExt({
       ...message,
+      file: null,
       toUuid: message.to,
       fromUuid: message.from,
       align: 'right',
@@ -149,6 +151,7 @@ export const setMessageHook = (message, wsStore) => {
     const url = URL.createObjectURL(blob);
     wsStore.pushMessage(formatMessageExt({
       ...message,
+      file: null,
       toUuid: message.to,
       fromUuid: message.from,
       align: 'right',
@@ -194,7 +197,7 @@ export const handleMessageHook = async (payload, wsStore) => {
   // 处理消息回执, 更新消息id
   if (message.messageType === MsgType.MESSAGE_RECEIPT) { 
     // 检测是否在群内或是好友
-    wsStore.modifyMessageId(message, { id: msg.id, uniqueId: msg.uniqueId, msgId: msg.msgId }, message.from)
+    wsStore.modifyMessageId(message, { id: msg.id, uniqueId: msg.uniqueId, msgId: msg.msgId, url: msg.url }, message.from)
     return;
   }