package controller import ( "f1-game/internal/code" "f1-game/internal/component/redis" nameKey "f1-game/internal/name/key" "f1-game/nodes/web/internal/middleware" clog "github.com/cherry-game/cherry/logger" cgin "github.com/cherry-game/components/gin" ) type PlayerController struct { cgin.BaseController } func (p *PlayerController) Init() { group := p.Group("/player", middleware.ValidateToken()) { group.GET("/last-login", p.lastLoginPlayer) group.GET("/cd-key", p.cdKey) } } func (p *PlayerController) cdKey(c *cgin.Context) { var ( pid = c.GetInt32(nameKey.PID, 0) openID = c.GetString(nameKey.OpenID, "") playerID = c.GetInt64(nameKey.PlayerID, 0) gameNodeID = c.GetInt32(nameKey.GameNodeID, 0) key = c.GetString(nameKey.Key, "") ) clog.Infof("pid=%s, openID=%s, playerID=%d, gameNodeID = %d, key = %s", pid, openID, playerID, gameNodeID, key, ) code.JSONResult(c, code.OK) //验证cdkey成功,则rpc消息到具体的游戏服 } // lastLogin 最后登录的玩家列表 // http://127.0.0.1/player/last-login?token=xxx func (p *PlayerController) lastLoginPlayer(c *cgin.Context) { var ( pid = c.GetInt32(nameKey.PID, 0) openID = c.GetString(nameKey.OpenID, "") ) rsp := redis.Center.GetLastLoginPlayer(pid, openID) code.JSONResult(c, code.OK, rsp) }