From 8e6312914c32b029862ab65aa4d31a7dfa4cbd41 Mon Sep 17 00:00:00 2001 From: Ink33 Date: Fri, 26 Mar 2021 01:02:43 +0800 Subject: [PATCH] fix Mrs4s#594 --- coolq/api.go | 14 ++++++++++++-- server/api.go | 2 +- server/doc.go | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/coolq/api.go b/coolq/api.go index 8567ce8..9bfb792 100644 --- a/coolq/api.go +++ b/coolq/api.go @@ -139,12 +139,22 @@ func (bot *CQBot) CQGetGroupMemberList(groupID int64, noCache bool) MSG { // CQGetGroupMemberInfo 获取群成员信息 // // https://git.io/Jtz1s -func (bot *CQBot) CQGetGroupMemberInfo(groupID, userID int64) MSG { +func (bot *CQBot) CQGetGroupMemberInfo(groupID, userID int64, noCache bool) MSG { group := bot.Client.FindGroup(groupID) if group == nil { return Failed(100, "GROUP_NOT_FOUND", "群聊不存在") } - member := group.FindMember(userID) + var member *client.GroupMemberInfo + if noCache { + var err error + member, err = bot.Client.GetMemberInfo(groupID, userID) + if err != nil { + log.Warnf("刷新群 %v 中成员 %v 失败: %v", groupID, userID, err) + return Failed(100, "GET_MEMBER_INFO_API_ERROR", err.Error()) + } + } else { + member = group.FindMember(userID) + } if member == nil { return Failed(100, "MEMBER_NOT_FOUND", "群员不存在") } diff --git a/server/api.go b/server/api.go index 782ebe2..fdae847 100644 --- a/server/api.go +++ b/server/api.go @@ -39,7 +39,7 @@ func getGroupMemberList(bot *coolq.CQBot, p resultGetter) coolq.MSG { func getGroupMemberInfo(bot *coolq.CQBot, p resultGetter) coolq.MSG { return bot.CQGetGroupMemberInfo( - p.Get("group_id").Int(), p.Get("user_id").Int(), + p.Get("group_id").Int(), p.Get("user_id").Int(), p.Get("no_cache").Bool(), ) } func sendMSG(bot *coolq.CQBot, p resultGetter) coolq.MSG { diff --git a/server/doc.go b/server/doc.go index 946b80f..3d4b43d 100644 --- a/server/doc.go +++ b/server/doc.go @@ -1,2 +1,2 @@ -// Package server 包含Admin子站,HTTP,WebSocket,反向WebSocket请求处理的相关函数与结构体 +// Package server 包含HTTP,WebSocket,反向WebSocket请求处理的相关函数与结构体 package server