forked from lxh/go-wxhelper
✨ 新增退群时间
This commit is contained in:
parent
e6198a88c1
commit
af4b4d1b4f
@ -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 {
|
||||||
|
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user