diff --git a/utils/wechat/message_to_db.py b/utils/wechat/message_to_db.py index 113adc4..3b7811d 100644 --- a/utils/wechat/message_to_db.py +++ b/utils/wechat/message_to_db.py @@ -253,12 +253,11 @@ class MessageStorage: # 格式化输出字符串,添加emoji和美化格式 ranking_str = f"🏆 {yesterday} 发言排行榜 🏆\n" - # 为不同名次添加不同的奖杯和样式,并发放积分 for rank, result in enumerate(results, start=1): username = result['wx_id'] speech_count = result['speech_count'] - display_name = allContacts.get(username, username) + display_name = self.client.get_chatroom_nickname(username, groupId) # 根据排名发放不同数量的积分 reward_points = 0 diff --git a/wechat_ipad/client/group.py b/wechat_ipad/client/group.py index fc26df8..5cd2449 100644 --- a/wechat_ipad/client/group.py +++ b/wechat_ipad/client/group.py @@ -167,7 +167,7 @@ class ChatroomMixin(WechatAPIClientBase): for member in data: if member.get("UserName") == wxid: # 优先返回DisplayName,如果不存在则返回NickName - return member.get("DisplayName") or member.get("NickName") or "" + return member.get("DisplayName") or member.get("NickName") or wxid return "" # 如果没找到对应的成员,返回空字符串 else: # wxid列表的情况 @@ -177,11 +177,11 @@ class ChatroomMixin(WechatAPIClientBase): for member in data: if member.get("UserName") == single_wxid: # 优先返回DisplayName,如果不存在则返回NickName - result.append(member.get("DisplayName") or member.get("NickName") or "") + result.append(member.get("DisplayName") or member.get("NickName") or wxid) found = True break if not found: - result.append("") # 如果没找到对应的成员,添加空字符串 + result.append(wxid) # 如果没找到对应的成员,添加空字符串 return result async def get_chatroom_member_detail(self, wxid: str, chatroom: str) -> dict: