FIX 获取联系人详情的时候该联系人信息未格式化
This commit is contained in:
parent
917be730bd
commit
8f09d7a509
17
bot_test.go
17
bot_test.go
@ -1,6 +1,7 @@
|
||||
package openwechat
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
@ -110,3 +111,19 @@ func TestPinUser(t *testing.T) {
|
||||
f.UnPin()
|
||||
}
|
||||
}
|
||||
|
||||
func TestSender(t *testing.T) {
|
||||
bot := DefaultBot(Desktop)
|
||||
bot.MessageHandler = func(msg *Message) {
|
||||
if msg.IsSendByGroup() {
|
||||
fmt.Println(msg.SenderInGroup())
|
||||
} else {
|
||||
fmt.Println(msg.Sender())
|
||||
}
|
||||
}
|
||||
if err := bot.Login(); err != nil {
|
||||
t.Error(err)
|
||||
return
|
||||
}
|
||||
bot.Block()
|
||||
}
|
||||
|
@ -82,6 +82,7 @@ func (m *Message) SenderInGroup() (*User, error) {
|
||||
if users == nil {
|
||||
return nil, noSuchUserFoundError
|
||||
}
|
||||
users.init(m.Bot.self)
|
||||
return users.First(), nil
|
||||
}
|
||||
|
||||
|
28
user.go
28
user.go
@ -90,8 +90,8 @@ func (u *User) Detail() (*User, error) {
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
newMembers.init(u.Self)
|
||||
user := newMembers.First()
|
||||
user.Self = u.Self
|
||||
return user, nil
|
||||
}
|
||||
|
||||
@ -157,12 +157,7 @@ func (s *Self) updateMembers() error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
members.SetOwner(s)
|
||||
// 格式化emoji表情
|
||||
for _, member := range members {
|
||||
member.NickName = FormatEmoji(member.NickName)
|
||||
member.RemarkName = FormatEmoji(member.RemarkName)
|
||||
}
|
||||
members.init(s)
|
||||
s.members = members
|
||||
return nil
|
||||
}
|
||||
@ -453,14 +448,6 @@ func (m Members) Last() *User {
|
||||
return nil
|
||||
}
|
||||
|
||||
// SetOwner 设置owner
|
||||
// 请不要随意设置
|
||||
func (m Members) SetOwner(s *Self) {
|
||||
for _, member := range m {
|
||||
member.Self = s
|
||||
}
|
||||
}
|
||||
|
||||
// SearchByUserName 根据用户名查找
|
||||
func (m Members) SearchByUserName(limit int, username string) (results Members) {
|
||||
return m.Search(limit, func(user *User) bool { return user.UserName == username })
|
||||
@ -580,12 +567,21 @@ func (m Members) detail(self *Self) error {
|
||||
newMembers = append(newMembers, nMembers...)
|
||||
}
|
||||
if len(newMembers) > 0 {
|
||||
newMembers.SetOwner(self)
|
||||
newMembers.init(self)
|
||||
self.members = newMembers
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m Members) init(self *Self) {
|
||||
for _, member := range m {
|
||||
member.Self = self
|
||||
member.NickName = FormatEmoji(member.NickName)
|
||||
member.RemarkName = FormatEmoji(member.RemarkName)
|
||||
member.DisplayName = FormatEmoji(member.DisplayName)
|
||||
}
|
||||
}
|
||||
|
||||
// NewFriendHelper 这里为了兼容Desktop版本找不到文件传输助手的问题
|
||||
// 文件传输助手的微信身份标识符永远是filehelper
|
||||
// 这种形式的对象可能缺少一些其他属性
|
||||
|
Loading…
x
Reference in New Issue
Block a user