Files
arenax-server/utility/tencent/tencent.go

94 lines
2.3 KiB
Go

package tencent
import (
"bytes"
"context"
"encoding/json"
"fmt"
"github.com/gogf/gf/v2/frame/g"
"golang.org/x/net/context/ctxhttp"
"io"
"net/http"
"server/internal/consts"
"server/internal/model"
"server/utility/ecode"
)
// GetNonLoginTaskList 获取下发到指定网吧的任务列表(未登录)
func GetNonLoginTaskList(ctx context.Context, in *model.GetNonLoginTaskListIn) (data interface{}, err error) {
// 请求参数
jsonStr, err := json.Marshal(in)
if err != nil {
return nil, ecode.Fail.Sub("参数序列化失败")
}
resp, err := ctxhttp.Post(ctx, http.DefaultClient, consts.TestAddr+"GetNonloginTaskList", "application/json", bytes.NewBuffer(jsonStr))
if err != nil {
return nil, ecode.Fail.Sub("请求失败")
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
return nil, ecode.Fail.Sub("读取响应失败")
}
err = json.Unmarshal(body, &data)
if err != nil {
return nil, ecode.Fail.Sub("解析响应失败")
}
return data, err
}
// GetLoginTaskList 获取下发到指定网吧的任务列表(已登录)
func GetLoginTaskList(ctx context.Context, in *model.GetLoginTaskListIn) (data interface{}, err error) {
value, err := g.Redis().Get(ctx, fmt.Sprintf(consts.GameLifeUserKey, in.POpenId))
if value.IsEmpty() {
return nil, ecode.Fail.Sub("从redis获取值异常")
}
if err != nil {
return nil, ecode.Fail.Sub("从redis读取数据失败")
}
var cache model.UserGamelifeCache
err = json.Unmarshal(value.Bytes(), &cache)
if err != nil {
return nil, ecode.Fail.Sub("获取用户信息失败")
}
req := &model.GetTenCentLoginTaskListIn{
Gid: in.Gid,
NetBarAccount: in.NetBarAccount,
Num: 10,
Pageidx: "",
BrandId: "",
}
// 请求参数
jsonStr, err := json.Marshal(req)
if err != nil {
return nil, ecode.Fail.Sub("参数序列化失败")
}
resp, err := ctxhttp.Post(ctx, http.DefaultClient, consts.TestAddr+"GetTaskList"+"?"+cache.Params, "application/json", bytes.NewBuffer(jsonStr))
if err != nil {
return nil, ecode.Fail.Sub("请求失败")
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
return nil, ecode.Fail.Sub("解析响应体失败")
}
err = json.Unmarshal(body, &data)
if err != nil {
return nil, ecode.Fail.Sub("反序列化异常")
}
return data, err
}