|
@@ -461,7 +461,7 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
if (!systemStore.messageList[sessionId]) {
|
|
|
systemStore.messageList[sessionId] = [];
|
|
|
if (sessionId == message.from){
|
|
|
- this.getMessages({ uuid: message.from, friendUsername: message.to, messageType: message.messageType },true);
|
|
|
+ // this.getMessages({ uuid: message.from, friendUsername: message.to, messageType: message.messageType },true);
|
|
|
}
|
|
|
}
|
|
|
systemStore.messageList[sessionId].push(message);
|
|
@@ -483,20 +483,24 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
if (!systemStore.messageList[sessionId]) {
|
|
|
systemStore.messageList[sessionId] = [];
|
|
|
}
|
|
|
- systemStore.messageList[sessionId] = systemStore.messageList[sessionId].map(item => {
|
|
|
- if (!item.id && item.msgId + '' === msg?.msgId + '') return {...item, id: msg.id, fromUuids:msg.fromUuid, msgId: undefined, err: !msg.id?true:undefined};
|
|
|
- if (item.id + '' === msg?.msgId + '') return {...item, content: "", url: ""};
|
|
|
+ systemStore.messageList[sessionId] = [...systemStore.messageList[sessionId]].map(item => {
|
|
|
+ // 消息发送成功确认
|
|
|
+ if (!item.id && item.msgId + '' === msg?.msgId + '') return {...item, id: msg.id, msgId: undefined, err: !msg.id?true:undefined};
|
|
|
+ // 阅后即焚
|
|
|
+ if (item.id + '' === msg?.id + '') return {...item, isTemp: true, content: "", url: ""};
|
|
|
return item;
|
|
|
});
|
|
|
// 检测当前消息
|
|
|
if (this.toUserInfo.uuid === sessionId) {
|
|
|
- this.messages = this.messages.map(item => {
|
|
|
- if (!item.id && item.msgId + '' === msg?.msgId + '') return { ...item, id: msg.id, fromUuids: msg.fromUuid, msgId: undefined, err: !msg.id?true:undefined};
|
|
|
- if (item.id + '' === msg?.msgId + '') return {...item, content: "", url: ""};
|
|
|
+ this.messages = [...this.messages].map(item => {
|
|
|
+ // 消息发送成功确认
|
|
|
+ if (!item.id && item.msgId + '' === msg?.msgId + '') return { ...item, 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.toUserInfo.uuid, this.messages);
|
|
|
+ console.log("修改消息", message, sessionId, systemStore.messageList, this.toUserInfo.uuid, this.messages);
|
|
|
},
|
|
|
// 更新本地消息
|
|
|
modifyMessage(message, msgId, sessionId = null) {
|
|
@@ -507,19 +511,19 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
if (!systemStore.messageList[sessionId]) {
|
|
|
systemStore.messageList[sessionId] = [];
|
|
|
}
|
|
|
- systemStore.messageList[sessionId] = systemStore.messageList[sessionId].map(item => {
|
|
|
+ systemStore.messageList[sessionId] = [...systemStore.messageList[sessionId]].map(item => {
|
|
|
if(typeof msgId === 'function'){
|
|
|
let msg = {};
|
|
|
if(msg = msgId(item, sessionId)){
|
|
|
- return {...item,...msg};
|
|
|
+ return { ...item, ...message,...msg};
|
|
|
}
|
|
|
}
|
|
|
- else if (item.id + '' === msgId + '') return {...item, ...message, content: "", url: ""};
|
|
|
+ else if (item.id + '' === msgId + '') return {...item, ...message};
|
|
|
return item;
|
|
|
});
|
|
|
// 检测当前消息
|
|
|
if (this.toUserInfo.uuid === sessionId) {
|
|
|
- this.messages = this.messages.map(item => {
|
|
|
+ this.messages = [...this.messages].map(item => {
|
|
|
if(typeof msgId === 'function'){
|
|
|
let msg = {};
|
|
|
if(msg = msgId(item, sessionId)){
|
|
@@ -576,7 +580,7 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
timestamp: Date.now(),
|
|
|
}),
|
|
|
};
|
|
|
- console.log("systemReceiptMessage", response);
|
|
|
+ // console.log("systemReceiptMessage", response);
|
|
|
this.sendMessage(response)
|
|
|
},
|
|
|
// 获取会话消息
|
|
@@ -714,6 +718,19 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
// 强制刷新会话列表
|
|
|
this.chatRefresh += 1;
|
|
|
},
|
|
|
+ // 修改好友备注后,将好友会话名称更改
|
|
|
+ updateNote(newName,uuid){
|
|
|
+ const systemStore = useSystemStore();
|
|
|
+ systemStore.ImsessionList = [...systemStore.ImsessionList].map((item) => {
|
|
|
+ if (item.uuid == uuid) {
|
|
|
+ return { ...item, sessionName: newName };
|
|
|
+ }
|
|
|
+ return item;
|
|
|
+ })
|
|
|
+ if (this.toUserInfo.uuid == uuid){
|
|
|
+ this.toUserInfo.sessionName = newName;
|
|
|
+ }
|
|
|
+ },
|
|
|
|
|
|
|
|
|
// ************ 接收方 方法 ************//
|
|
@@ -785,7 +802,7 @@ export const useWebSocketStore = defineStore("webSocketStore", {
|
|
|
// 处理群个人昵称
|
|
|
if (message.messageType == MsgType.MESSAGE_NICKNAME_GROUP){
|
|
|
this.modifyMessage(message,(val)=>{
|
|
|
- return msg.uuid == val.fromUuids?{
|
|
|
+ return msg.uuid == val.fromUuid?{
|
|
|
fromUsername: msg.name
|
|
|
} : (msg.uuid == val.toUuid ? {
|
|
|
toUsername: msg.name
|