From 34f70342f4c97ab76f0a52e14e1095fbba28a167 Mon Sep 17 00:00:00 2001 From: huangqz Date: Mon, 22 Jun 2026 20:01:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(userlive):=20=E6=96=B0=E5=A2=9E=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E6=A3=80=E6=9F=A5=E7=94=A8=E6=88=B7=E5=B0=81=E7=A6=81?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=8E=A5=E5=8F=A3=20CheckBatch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/userlive/client.go | 10 ++++++++ services/userlive/user_ban.go | 44 +++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) diff --git a/services/userlive/client.go b/services/userlive/client.go index 4bde54a..247adbc 100644 --- a/services/userlive/client.go +++ b/services/userlive/client.go @@ -53,3 +53,13 @@ func (c *Client) CreateRemoveBanRuleCacheReq(req *RemoveBanRuleCacheReq) (resp * } return } + +// CreateCheckBatchReq 批量检查用户是否被封禁 +func (c *Client) CreateCheckBatchReq(req *CheckBatchReq) (resp *CheckBatchResp, err error) { + resp = CreateCheckBatchResp() + err = c.DoAction(req, resp) + if err != nil { + return + } + return +} diff --git a/services/userlive/user_ban.go b/services/userlive/user_ban.go index dcdee4a..8dfb37a 100644 --- a/services/userlive/user_ban.go +++ b/services/userlive/user_ban.go @@ -158,3 +158,47 @@ func CreateRemoveBanRuleCacheResp() *RemoveBanRuleCacheResp { BaseResponse: &responses.BaseResponse{}, } } + +// CheckBatchReq +// 批量检查用户是否被封禁(只读,按身份维度匹配现行封禁规则) +type CheckBatchReq struct { + *requests.JsonRequest +} + +type CheckBatchReqParam struct { + UserNames []string `json:"user_names"` // 要检查的用户名列表 +} + +type CheckBatchItem struct { + UserName string `json:"user_name"` // 用户名 + Ban bool `json:"ban"` // 是否被封禁 + BanRuleId int64 `json:"ban_rule_id"` // 命中的封禁规则id(未命中为0) + BanEndTime string `json:"ban_end_time"` // 封禁结束时间(未命中为空) +} + +type CheckBatchResp struct { + *responses.BaseResponse + Code int `json:"code"` + Msg string `json:"msg"` + Data struct { + List []CheckBatchItem `json:"list"` + } `json:"data"` +} + +func CreateCheckBatchReq(param CheckBatchReqParam) *CheckBatchReq { + req := &CheckBatchReq{ + &requests.JsonRequest{}, + } + req.InitWithApiInfo(HOST, VERSION, "/api/user_ban/check_batch") + req.Method = requests.POST + + marshal, _ := json.Marshal(param) + _ = json.Unmarshal(marshal, &req.JsonParams) + return req +} + +func CreateCheckBatchResp() *CheckBatchResp { + return &CheckBatchResp{ + BaseResponse: &responses.BaseResponse{}, + } +}