6
0

Compare commits

...

6 Commits

Author SHA1 Message Date
liguanjie
c81fa6be2c test(passport): 更新客户端测试用例和找回密码接口
- 修改了 ChangePassword 请求的密码参数
- 优化了测试用例的断言和日志输出
2025-09-11 18:09:29 +08:00
liguanjie
07bdfcb7b3 fix(response):修正响应格式判断条件 2025-09-11 17:33:21 +08:00
liguanjie
353e07b984 Merge branch 'master' into develop/lgj/resetPwd 2025-09-11 14:58:56 +08:00
liguanjie
743883792d feat(cs): 添加获取人工客服链接游戏配置功能
- 新增 GetLinkGameConfig 方法用于获取人工客服链接和游戏配置
2025-09-11 11:49:43 +08:00
liguanjie
ab3c9f33d0 feat(cs): 在热门 FAQ 结构中添加父级 ID 和标题字段 2025-09-10 15:32:31 +08:00
liguanjie
90c2b1213a feat(passport): 添加用户修改密码功能并优化响应解析
- 新增 ChangePassword 方法支持用户修改密码- 添加 ChangePasswordRequest 和 ChangePasswordResponse 结构体
- 实现用户修改密码的请求创建和响应解析
- 优化 response.go 中的解析逻辑,支持 text 格式
- 更新 client_test.go 中的测试用例
2025-09-09 17:54:16 +08:00
8 changed files with 143 additions and 2 deletions

View File

@ -116,5 +116,6 @@ func Unmarshal(response AcsResponse, httpResponse *http.Response, format string)
return errors.New("json Unmarshal:" + err.Error())
}
}
return
}

View File

@ -154,3 +154,9 @@ func (client *Client) ClearHotFaqCache(req *ClearHotFaqCacheRequest) (resp *Clea
err = client.DoAction(req, resp)
return
}
func (client *Client) GetLinkGameConfig(req *GetLinkGameConfigRequest) (resp *GetLinkGameConfigResponse, err error) {
resp = CreateGetLinkGameConfigResponse()
err = client.DoAction(req, resp)
return
}

View File

@ -456,3 +456,23 @@ func TestClearHotFaqCache(t *testing.T) {
}
fmt.Printf(fmt.Sprintf("%v", res))
}
// 获取人工客服链接,主体与游戏参数配置详情
func TestGetLinkGameConfigDetail(t *testing.T) {
client, newErr := NewClient()
if newErr != nil {
panic(newErr)
}
req := CreateGetLinkGameConfigRequest(LinkGameConfigRequest{
Company: "JJW",
})
res, err := client.GetLinkGameConfig(req)
if err != nil {
t.Error(err)
return
}
if res.Code != 0 || res.Data.SubjectSign == "" {
t.Error("获取人工客服链接,主体与游戏参数配置详情失败")
}
fmt.Printf(fmt.Sprintf("%v", res.Data))
}

45
services/cs/config.go Normal file
View File

@ -0,0 +1,45 @@
package cs
import (
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
)
// 中旭人工客服链接,主体与游戏配置
type LinkGameConfig struct {
SubjectSign string `json:"subject_sign"`
SubjectName string `json:"subject_name"`
LinkGameId int64 `json:"link_game_id"`
CreatedAt string `json:"created_at"`
}
type GetLinkGameConfigRequest struct {
*requests.JsonRequest
Company string `position:"Json" field:"company"`
}
type GetLinkGameConfigResponse struct {
*responses.BaseResponse
Code int `json:"code"`
Msg string `json:"msg"`
Data *LinkGameConfig `json:"data"`
}
type LinkGameConfigRequest struct {
Company string `json:"company"`
}
func CreateGetLinkGameConfigRequest(param LinkGameConfigRequest) (req *GetLinkGameConfigRequest) {
req = &GetLinkGameConfigRequest{
JsonRequest: &requests.JsonRequest{},
Company: param.Company,
}
req.InitWithApiInfo(HOST, VERSION, "/v1/config/get_link_game_config")
req.Method = requests.POST
return
}
func CreateGetLinkGameConfigResponse() (response *GetLinkGameConfigResponse) {
response = &GetLinkGameConfigResponse{
BaseResponse: &responses.BaseResponse{},
}
return
}

View File

@ -91,8 +91,10 @@ func CreateGetFaqDetailResponse() (response *GetFaqDetailResponse) {
// 热门faq列表
type HotFaq struct {
Id int64 `json:"id"`
Title string `json:"title"`
Id int64 `json:"id"`
Title string `json:"title"`
ParentId int64 `json:"parent_id"`
ParentTitle string `json:"parent_title"`
}
type GetHotFaqRequest struct {
*requests.JsonRequest

View File

@ -63,3 +63,11 @@ func (c *Client) GetUserGameSign(req *GetUserGameSignRequest) (response *GetUser
err = c.DoAction(req, response)
return
}
// ChangePassword
// 用户修改密码
func (c *Client) ChangePassword(req *ChangePasswordRequest) (response *ChangePasswordResponse, err error) {
response = CreateChangePasswordResponse()
err = c.DoAction(req, response)
return
}

View File

@ -78,3 +78,19 @@ func TestGetUserGameSign(t *testing.T) {
t.Logf("resp code:%+v", resp.Code)
t.Logf("resp data:%+v", resp.Data)
}
// 测试用户修改密码
func TestChangePassword(t *testing.T) {
client, err := NewClient()
if err != nil {
t.Error(err)
}
req := CreateChangePasswordRequest("rz35990497", "7654321")
resp, err := client.ChangePassword(req)
if err != nil {
t.Error(err)
}
// 记录文本结果
t.Logf("resp code:%+v, msg:%s", resp.Code, resp.Msg)
}

View File

@ -0,0 +1,43 @@
package passport
import (
"fmt"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
)
type ChangePasswordRequest struct {
*requests.RpcRequest
}
func CreateChangePasswordRequest(userName string, newPwd string) (req *ChangePasswordRequest) {
ts, sign := GetSign()
req = &ChangePasswordRequest{
RpcRequest: &requests.RpcRequest{},
}
req.InitWithApiInfo(HOST, VERSION, "/remote_login.php")
req.FormParams = map[string]string{
"act": "getpwd",
"do": "passwd",
"username": userName,
"newpwd": newPwd,
"time": fmt.Sprintf("%v", ts),
"sign": sign,
"format": "json",
}
req.Method = requests.POST
return
}
func CreateChangePasswordResponse() (response *ChangePasswordResponse) {
response = &ChangePasswordResponse{
BaseResponse: &responses.BaseResponse{},
}
return
}
type ChangePasswordResponse struct {
*responses.BaseResponse
}