diff --git a/entity/friend.go b/entity/friend.go index 74c7040..4a5cbda 100644 --- a/entity/friend.go +++ b/entity/friend.go @@ -1,15 +1,17 @@ package entity -import "time" +import ( + "time" +) // Friend // @description: 好友列表 type Friend struct { + Wxid string `json:"wxid"` // 微信原始Id CustomAccount string `json:"customAccount"` // 微信号 Nickname string `json:"nickname"` // 昵称 Pinyin string `json:"pinyin"` // 昵称拼音大写首字母 PinyinAll string `json:"pinyinAll"` // 昵称全拼 - Wxid string `json:"wxid"` // 微信原始Id EnableAi bool `json:"enableAI" gorm:"type:tinyint(1) default 0 not null"` // 是否使用AI EnableChatRank bool `json:"enableChatRank" gorm:"type:tinyint(1) default 0 not null"` // 是否使用聊天排行 IsOk bool `json:"isOk" gorm:"type:tinyint(1) default 0 not null"` // 是否正常 @@ -23,11 +25,12 @@ func (Friend) TableName() string { // @description: 群成员 type GroupUser struct { GroupId string `json:"groupId"` // 群Id + Wxid string `json:"wxid"` // 微信Id Account string `json:"account"` // 账号 HeadImage string `json:"headImage"` // 头像 Nickname string `json:"nickname"` // 昵称 - Wxid string `json:"wxid"` // 微信Id IsMember bool `json:"isMember" gorm:"type:tinyint(1) default 0 not null"` // 是否群成员 + JoinTime time.Time `json:"joinTime"` // 加入时间 LeaveTime *time.Time `json:"leaveTime"` // 离开时间 SkipChatRank bool `json:"skipChatRank" gorm:"type:tinyint(1) default 0 not null"` // 是否跳过聊天排行 } diff --git a/service/group.go b/service/group.go index 2e7ea9d..85c3187 100644 --- a/service/group.go +++ b/service/group.go @@ -19,7 +19,7 @@ func GetGroupUsersByGroupId(groupId string) (records []vo.GroupUserItem, err err Select("tgu.*", "MAX(tm.create_at) AS last_active_time"). Where("tgu.group_id = ?", groupId). Group("tgu.group_id, tgu.wxid"). - Order("tgu.wxid ASC"). + Order("tgu.join_time DESC"). Find(&records).Error return } diff --git a/tasks/friends/friends.go b/tasks/friends/friends.go index 69348f7..c164918 100644 --- a/tasks/friends/friends.go +++ b/tasks/friends/friends.go @@ -154,6 +154,7 @@ func syncGroupUsers(tx *gorm.DB, gid string) { Nickname: cp.Nickname, Wxid: cp.Wxid, IsMember: true, + JoinTime: time.Now().Local(), }).Error if err != nil { log.Printf("新增群成员失败: %s", err.Error()) diff --git a/views/index.html b/views/index.html index 5e84bf4..fff044e 100644 --- a/views/index.html +++ b/views/index.html @@ -165,6 +165,7 @@