From 38169691cd984f8afef4fe529f166fecfff0b573 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Fri, 6 Feb 2026 18:52:52 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E7=AE=AD=E5=A4=B4=E6=94=B9=E6=88=90?= =?UTF-8?q?=E5=AF=B9=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/chatService.ts | 17 ++++++++++++++++- src/pages/ChatPage.tsx | 15 +++++++++++---- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/electron/services/chatService.ts b/electron/services/chatService.ts index a4614c5..c0568e2 100644 --- a/electron/services/chatService.ts +++ b/electron/services/chatService.ts @@ -2431,8 +2431,23 @@ class ChatService { } } - // 解析付款方名称:群昵称 > 备注 > 昵称 > alias > wxid + // 获取当前用户 wxid,用于识别"自己" + const myWxid = this.configService.get('myWxid') + const cleanedMyWxid = myWxid ? this.cleanAccountDirName(myWxid) : '' + + // 解析付款方名称:自己 > 群昵称 > 备注 > 昵称 > alias > wxid const resolveName = async (username: string): Promise => { + // 特判:如果是当前用户自己(contact 表通常不包含自己) + if (myWxid && (username === myWxid || username === cleanedMyWxid)) { + // 先查群昵称中是否有自己 + const myGroupNick = groupNicknames[username] + if (myGroupNick) return myGroupNick + // 尝试从缓存获取自己的昵称 + const cached = this.avatarCache.get(username) || this.avatarCache.get(myWxid) + if (cached?.displayName) return cached.displayName + return '我' + } + // 先查群昵称 const groupNick = groupNicknames[username] if (groupNick) return groupNick diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index a4e33f7..bbbab33 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -3187,10 +3187,17 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o return (
- - - - + {isReceived ? ( + + + + + ) : ( + + + + + )}
{displayAmount}