From 2bfc250f213b00616440dd5d89fcaeb4b6d57260 Mon Sep 17 00:00:00 2001 From: markwang <617514823@qq.com> Date: Fri, 16 Jan 2026 23:31:39 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=81=E4=B8=9A=E5=BE=AE=E4=BF=A1-?= =?UTF-8?q?=E9=80=9A=E8=AE=AF=E5=BD=95=E7=AE=A1=E7=90=86-=E6=88=90?= =?UTF-8?q?=E5=91=98=E7=AE=A1=E7=90=86=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=20(#873)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- work/addresslist/user.go | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/work/addresslist/user.go b/work/addresslist/user.go index 434b6b1..06abb2c 100644 --- a/work/addresslist/user.go +++ b/work/addresslist/user.go @@ -24,6 +24,10 @@ const ( convertToOpenIDURL = "https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_openid" // convertToUserIDURL openID转userID convertToUserIDURL = "https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_userid" + // userBatchDeleteURL 批量删除成员 + userBatchDeleteURL = "https://qyapi.weixin.qq.com/cgi-bin/user/batchdelete?access_token=%s" + // userAuthSuccURL 登录二次验证 + userAuthSuccURL = "https://qyapi.weixin.qq.com/cgi-bin/user/authsucc?access_token=%s&userid=%s" ) type ( @@ -447,3 +451,42 @@ func (r *Client) ConvertToUserID(openID string) (string, error) { err = util.DecodeWithError(response, result, "ConvertToUserID") return result.UserID, err } + +// UserBatchDeleteRequest 批量删除成员请求 +type UserBatchDeleteRequest struct { + UseridList []string `json:"useridlist"` +} + +// UserBatchDelete 批量删除成员 +// see https://developer.work.weixin.qq.com/document/path/90199 +func (r *Client) UserBatchDelete(req *UserBatchDeleteRequest) error { + var ( + accessToken string + err error + ) + if accessToken, err = r.GetAccessToken(); err != nil { + return err + } + var response []byte + if response, err = util.PostJSON(fmt.Sprintf(userBatchDeleteURL, accessToken), req); err != nil { + return err + } + return util.DecodeWithCommonError(response, "UserBatchDelete") +} + +// UserAuthSucc 登录二次验证 +// @see https://developer.work.weixin.qq.com/document/path/90203 +func (r *Client) UserAuthSucc(userID string) error { + var ( + accessToken string + err error + ) + if accessToken, err = r.GetAccessToken(); err != nil { + return err + } + var response []byte + if response, err = util.HTTPGet(fmt.Sprintf(userAuthSuccURL, accessToken, userID)); err != nil { + return err + } + return util.DecodeWithCommonError(response, "UserAuthSucc") +}