Files
novatask/internal/handler/routes.go
2025-01-06 19:45:03 +08:00

133 lines
3.0 KiB
Go

// Code generated by goctl. DO NOT EDIT.
// goctl 1.7.3
package handler
import (
"net/http"
admin "nova_task/internal/handler/admin"
carv "nova_task/internal/handler/carv"
task "nova_task/internal/handler/task"
"nova_task/internal/svc"
"github.com/zeromicro/go-zero/rest"
)
func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
server.AddRoutes(
rest.WithMiddlewares(
[]rest.Middleware{serverCtx.AdminSecretCheck},
[]rest.Route{
{
// 给指定邮箱增加待发放奖励
Method: http.MethodPost,
Path: "/email_reward",
Handler: admin.AddEmailRewardHandler(serverCtx),
},
{
// 执行发放奖励操作
Method: http.MethodGet,
Path: "/email_reward",
Handler: admin.SendEmailRewardHandler(serverCtx),
},
}...,
),
rest.WithPrefix("/gapi/admin"),
)
server.AddRoutes(
rest.WithMiddlewares(
[]rest.Middleware{serverCtx.ApiKeyCheck},
[]rest.Route{
{
// 下载并绑定Castile游戏角色
Method: http.MethodGet,
Path: "/bind_role",
Handler: carv.DownloadAndBindRoleHandler(serverCtx),
},
{
// 注册绑定钱包任务
Method: http.MethodGet,
Path: "/bind_wallet",
Handler: carv.BindWalletHandler(serverCtx),
},
{
// 每日钱包签到任务
Method: http.MethodGet,
Path: "/check_in_wallet",
Handler: carv.WalletCheckInHandler(serverCtx),
},
{
// 游戏主线解锁第x章节
Method: http.MethodGet,
Path: "/unlock_chapter",
Handler: carv.UnlockChapterHandler(serverCtx),
},
}...,
),
rest.WithPrefix("/gapi/carv"),
)
server.AddRoutes(
[]rest.Route{
{
// 获取社区列表
Method: http.MethodGet,
Path: "/community",
Handler: task.GetCommunityListHandler(serverCtx),
},
{
// 获取任务列表
Method: http.MethodGet,
Path: "/tasks",
Handler: task.GetTaskListHandler(serverCtx),
},
},
rest.WithPrefix("/gapi/task/v1"),
)
server.AddRoutes(
[]rest.Route{
{
// 质押NFT
Method: http.MethodPost,
Path: "/nft/stake",
Handler: task.StakeNftHandler(serverCtx),
},
{
// 取消质押NFT
Method: http.MethodPost,
Path: "/nft/unstake",
Handler: task.UnStakeNftHandler(serverCtx),
},
{
// 拉取玩家持有的nft列表
Method: http.MethodGet,
Path: "/nfts",
Handler: task.GetNftListHandler(serverCtx),
},
{
// 领取任务奖励
Method: http.MethodGet,
Path: "/reward/:id",
Handler: task.GetTaskRewardHandler(serverCtx),
},
{
// 校验任务结果
Method: http.MethodGet,
Path: "/task",
Handler: task.VerifyTaskResultHandler(serverCtx),
},
{
// 质押任务详情
Method: http.MethodGet,
Path: "/task/stake",
Handler: task.GetStakeTaskDetailHandler(serverCtx),
},
},
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
rest.WithPrefix("/gapi/task/v1"),
)
}