新增退群时间

This commit is contained in:
李寻欢 2023-10-11 14:46:47 +08:00
parent e6198a88c1
commit af4b4d1b4f
2 changed files with 15 additions and 7 deletions

View File

@ -1,5 +1,7 @@
package entity package entity
import "time"
// Friend // Friend
// @description: 好友列表 // @description: 好友列表
type Friend struct { type Friend struct {
@ -17,12 +19,13 @@ func (Friend) TableName() string {
// GroupUser // GroupUser
// @description: 群成员 // @description: 群成员
type GroupUser struct { type GroupUser struct {
GroupId string `json:"groupId"` // 群Id GroupId string `json:"groupId"` // 群Id
Account string `json:"account"` // 账号 Account string `json:"account"` // 账号
HeadImage string `json:"headImage"` // 头像 HeadImage string `json:"headImage"` // 头像
Nickname string `json:"nickname"` // 昵称 Nickname string `json:"nickname"` // 昵称
Wxid string `json:"wxid"` // 微信Id Wxid string `json:"wxid"` // 微信Id
IsMember bool `json:"isMember" gorm:"type:tinyint(1)"` // 是否群成员 IsMember bool `json:"isMember" gorm:"type:tinyint(1)"` // 是否群成员
LeaveTime time.Time `json:"leaveTime"` // 离开时间
} }
func (GroupUser) TableName() string { func (GroupUser) TableName() string {

View File

@ -11,6 +11,7 @@ import (
"log" "log"
"slices" "slices"
"strings" "strings"
"time"
) )
// 同步群成员 // 同步群成员
@ -115,7 +116,11 @@ func syncGroupUsers(tx *gorm.DB, gid string) {
log.Printf(" 群成员数: %d", len(wxIds)) log.Printf(" 群成员数: %d", len(wxIds))
// 修改不在数组的群成员状态为不在 // 修改不在数组的群成员状态为不在
err = tx.Model(&entity.GroupUser{}).Where("group_id = ?", gid).Where("wxid NOT IN (?)", wxIds).Update("is_member", false).Error pm := map[string]any{
"is_member": false,
"leave_time": time.Now().Local(),
}
err = tx.Model(&entity.GroupUser{}).Where("group_id = ?", gid).Where("wxid NOT IN (?)", wxIds).Updates(pm).Error
if err != nil { if err != nil {
log.Printf("修改群成员状态失败: %s", err.Error()) log.Printf("修改群成员状态失败: %s", err.Error())
return return