Files
arenax-server/internal/model/task.go
2025-07-01 14:14:26 +08:00

146 lines
6.6 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package model
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
)
type Task struct {
Id int64 `json:"-" orm:"id" description:"任务唯一标识符"` // 任务唯一标识符
CreatedAt *gtime.Time `json:"-" orm:"created_at" description:"创建时间"` // 创建时间
UpdatedAt *gtime.Time `json:"-" orm:"updated_at" description:"更新时间"` // 更新时间
DeletedAt *gtime.Time `json:"-" orm:"deleted_at" description:"软删除时间戳"` // 软删除时间戳
GameId int64 `json:"-" orm:"game_id" description:"游戏唯一id"` // 游戏唯一id
StoreId int64 `json:"-" orm:"store_id" description:"门店 id"` // 门店 id
Status int `json:"status" orm:"status" description:"1启用 2禁用"` //用户奖励状态1 未完成2 未领取3 已领取4-奖励限量且已抢光5用户限量
//QqNetbarTaskId string `json:"qqNetbarTaskId" orm:"qq_netbar_task_id" description:"QQ网吧任务ID"` // QQ网吧任务ID
//QqNetbarTaskRules string `json:"qqNetbarTaskRules" orm:"qq_netbar_task_rules" description:"任务规则"` // 任务规则
//QqNetbarTaskMemo string `json:"qqNetbarTaskMemo" orm:"qq_netbar_task_memo" description:"任务描述"` // 任务描述
//QqNetbarTaskName string `json:"qqNetbarTaskName" orm:"qq_netbar_task_name" description:"QQ网吧任务名称"` // QQ网吧任务名称
//QqNetbarTargetName string `json:"qqNetbarTargetName" orm:"qq_netbar_target_name" description:"任务指标名称"` // 任务指标名称
//QqNetbarTargetTime int `json:"qqNetbarTargetTime" orm:"qq_netbar_target_time" description:"qq 网吧任务指标"` // qq 网吧任务指标
//StartTime int64 `json:"startTime" orm:"start_time" description:"任务开始时间"` // 任务开始时间
//EndTime int64 `json:"endTime" orm:"end_time" description:"任务结束时间"` // 任务结束时间
Rewards []Reward `json:"rewards" orm:"-"`
//UserTaskResult UserTaskResult `json:"userTaskResult,omitempty"`
TaskId string `json:"taskId" orm:"task_id" description:"任务 id"` // 任务 id
TaskRewards []TaskReward `json:"taskRewards" orm:"with:task_id=task_id"`
Task string `json:"task" orm:"task" description:"任务"` // 任务
GameTask GameTask `json:"gameTask"`
}
type UserTaskResult struct {
Usertimes int64 `json:"usertimes,omitempty"`
}
type GetTaskListIn struct {
NetBarAccount string `json:"netbar_account"` //网关账号
//Page int `json:"page"` // 分页索引
//Size int `json:"size"` // 分页大小
Pageidx string `json:"pageidx"` // 分页索引
Num int `json:"num"` //
Gid int `json:"gid"` // 游戏唯一id
Source string `json:"source"` // 不能为空
BrandId string `json:"brand_id"` // 品牌id(可选)
PopenId string `json:"POpenId"`
BindType int `json:"bindType"` // 1:QQ 2:微信
UserId int64 `json:"user_id"`
}
type GetNonLoginTaskListOut struct {
// List interface{} `json:"list"`
// Total int `json:"total"`
Data interface{} `json:"data"`
}
type GetLoginTaskListIn struct {
NetBarAccount string `json:"netbar_account"` //网关账号
Gid int `json:"gid"` // 游戏唯一id
POpenId string `json:"POpenId"` //POpenId
Pageidx string `json:"pageidx"` // 分页索引
Num int `json:"num"` //
}
// GetTenCentLoginTaskListIn 获取腾讯游戏任务列表已登录入参
type GetTenCentLoginTaskListIn struct {
NetBarAccount string `json:"netbar_account"` //网关账号
Pageidx string `json:"pageidx"` // 分页索引
Num int `json:"num"` //
Gid int `json:"gid"` // 游戏唯一id
BrandId string `json:"brand_id"` // 品牌id(可选)
}
type GetTaskListOut struct {
PageIdx string `json:"pageidx"`
Data interface{} `json:"taskList"`
}
// MyData 定义一个与 JSON 结构匹配的结构体
type MyData struct {
TaskId string `json:"task_id"`
//GameId int `json:"game_id"`
QQNetBarTaskMemo string `json:"task_desc"`
QQNetBarTaskName string `json:"title"`
QQNetBarTaskRules string `json:"rule_desc"`
//StoreId int `json:"store_id"`
PrizeList []PrizeList `json:"prize_list"`
}
type PrizeList struct {
PrizeName string `json:"prize_name"`
}
type TaskListIn struct {
Gid int `json:"gid" v:"required#游戏唯一id不能为空" dc:"游戏唯一id"`
NetBarAccount string `json:"netBarAccount"`
Page int `json:"page" dc:"页数"`
Size int `json:"size" dc:"条数"`
StoreId int `json:"store_id"`
}
type TaskListOut struct {
List interface{} `json:"list"`
Total int `json:"total"`
}
// SelectorIn 系统管理员任务列表二级选择器
type SelectorIn struct {
}
type SelectorOut struct {
g.Meta `orm:"table:merchants"`
Id int `json:"id" orm:"id"`
MerchantName string `json:"merchantName" orm:"name"`
StoreDatas []StoreData `json:"StoreDatas" orm:"with:merchant_id=id"`
//StoreData []StoreData `json:"storeData"`
}
type StoreData struct {
g.Meta `orm:"table:stores"`
Id int `json:"id" orm:"id"`
MerchantId int `json:"merchantId" orm:"merchant_id"`
StoreName string `json:"storeName" orm:"name"`
NetbarAccount string `json:"netbarAccount" orm:"netbar_account"`
}
// GetTaskListV2In 获取任务列表入参
type GetTaskListV2In struct {
NetBarAccount string `json:"netbar_account"` // 网关账号
//Page int `json:"page"` // 分页索引
//Size int `json:"size"` // 分页大小
Pageidx string `json:"pageidx"` // 分页索引
Num int `json:"num"` //
Gid int `json:"gid"` // 游戏唯一id
Source string `json:"source"` // 不能为空
BrandId string `json:"brand_id"` // 品牌id(可选)
PopenId string `json:"POpenId"`
BindType int `json:"bindType"` // 1:QQ 2:微信
IsBound int `json:"isBound"` // 是否绑定 0否 1
UserId int64 `json:"user_id"`
StoreId int64 `json:"store_id"`
}
type GetTaskListV2Out struct {
PageIdx string `json:"pageidx"`
Data interface{} `json:"taskList"`
}