perf(前端): 接收消息推送, 更新会话列表

dev/supplier-email-drawer
Lei OT 9 months ago
parent 01b5991ba0
commit 3fe605c562

@ -434,7 +434,8 @@ const messageSlice = (set, get) => ({
...conversationsList[targetIndex],
last_received_time: message.status === 'received' ? dayjs(message.deliverTime).add(8, 'hours').format(DATETIME_FORMAT) : conversationsList[targetIndex].last_received_time,
conversation_expiretime: message?.conversation?.expireTime || conversationsList[targetIndex].conversation_expiretime || '', // 保留使用UTC时间
});
last_message: { ...message, source: message.msg_source },
})
} else if (targetIndex === -1) {
// 当前客户端不存在的会话
// todo: 设置为当前(在WhatsApp返回号码不一致时)
@ -451,7 +452,7 @@ const messageSlice = (set, get) => ({
whatsapp_phone_number: message.type === 'email' ? null : message.to,
show_default: message?.conversation?.name || message.to || '',
session_type: message?.conversation?.type === 'group' ? 1 : 0,
last_message: message,
last_message: { ...message, source: message.msg_source },
channels: {
"email": message.type === 'email' ? message.from : null,
"phone_number": message.type === 'email' ? null : message.from,
@ -486,7 +487,7 @@ const messageSlice = (set, get) => ({
Number(targetId) !== Number(currentConversation.sn) && message.sender !== 'me'
? conversationsList[targetIndex].unread_msg_count + 1
: conversationsList[targetIndex].unread_msg_count,
last_message: message,
last_message: { ...message, source: message.msg_source },
}
: {
...conversationRow,
@ -500,7 +501,7 @@ const messageSlice = (set, get) => ({
whatsapp_phone_number: message.type === 'email' ? null : message.from,
show_default: message?.conversation?.name || message?.senderName || message?.sender || message.from || '',
session_type: message?.conversation?.type === 'group' ? 1 : 0,
last_message: message,
last_message: { ...message, source: message.msg_source },
channels: {
"email": message.type === 'email' ? message.from : null,
"phone_number": message.type === 'email' ? null : message.from,
@ -525,7 +526,7 @@ const messageSlice = (set, get) => ({
...currentConversation,
last_received_time: dayjs(message.date).add(8, 'hours').format(DATETIME_FORMAT),
conversation_expiretime: dayjs(message.date).add(24, 'hours').format(DATETIME_FORMAT),
last_message: message,
last_message: { ...message, source: message.msg_source },
}
: {...currentConversation, last_message: message,};

Loading…
Cancel
Save