go_dreamfactory/modules/task/api_activelist.go
2023-06-06 10:11:23 +08:00

50 lines
1.2 KiB
Go

package task
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
// 活跃度列表
func (this *apiComp) ActiveListCheck(session comm.IUserSession, req *pb.TaskActiveListReq) (errdata *pb.ErrorData) {
if req.TaskTag <= 0 || req.TaskTag > 2 {
code = pb.ErrorCode_TaskTagEmpty
}
return
}
func (this *apiComp) ActiveList(session comm.IUserSession, req *pb.TaskActiveListReq) (errdata *pb.ErrorData) {
if code = this.ActiveListCheck(session, req); errdata != nil {
return
}
resp := &pb.TaskActiveListResp{}
defer func() {
if err := session.SendMsg(string(this.module.GetType()), TaskSubTypeActiveList, resp); err != nil {
code = pb.ErrorCode_SystemError
return
}
}()
// 获取玩家活跃度
expand, err := this.module.ModuleUser.GetUserExpand(session.GetUserId())
if err != nil {
code = pb.ErrorCode_DBError
return
}
if expand != nil {
// 返回活跃度
if req.TaskTag == int32(comm.TASK_DAILY) {
resp.Active = expand.Activeday
} else if req.TaskTag == int32(comm.TASK_WEEKLY) {
resp.Active = expand.Activeweek
}
}
//获取当前Tag的活跃度列表
resp.List = this.module.modelTaskActive.getActiveListByTag(session.GetUserId(), comm.TaskTag(req.TaskTag))
return
}