package account import ( cfacade "github.com/mhaya/facade" "github.com/mhaya/game/game_cluster/internal/code" "github.com/mhaya/game/game_cluster/internal/mdb/models" "github.com/mhaya/game/game_cluster/internal/param" cactor "github.com/mhaya/net/actor" "strings" ) type ( ActorAccount struct { cactor.Base } ) func (p *ActorAccount) AliasID() string { return "account" } // OnInit center为后端节点,不直接与客户端通信,所以了一些remote函数,供RPC调用 func (p *ActorAccount) OnInit() { p.Remote().Register("registerAccount", p.registerOrLoinAccount) } // registerDevAccount 注册开发者帐号 func (p *ActorAccount) registerOrLoinAccount(req *param.LoginReq) (*param.LoginResp, int32) { if strings.TrimSpace(req.OpenID) == "" || strings.TrimSpace(req.IP) == "" { return nil, code.Error } account, err := models.AccountRegisterOrLogin(req) if err > 0 { return nil, code.Error } return ¶m.LoginResp{ UserName: account.UserName, OpenId: account.OpenId, TargetPath: cfacade.NewChildPath(10001, "player", account.UserName), }, code.OK }