69 lines
2.1 KiB
Go
69 lines
2.1 KiB
Go
package user
|
|
|
|
import (
|
|
"go_dreamfactory/comm"
|
|
"go_dreamfactory/modules"
|
|
|
|
"go_dreamfactory/lego/base"
|
|
"go_dreamfactory/lego/core"
|
|
)
|
|
|
|
const (
|
|
UserSubTypeLogin = "login"
|
|
UserSubTypeLogout = "logout"
|
|
UserSubTypeCreate = "create"
|
|
UserSubTypeAddRes = "addres" //添加用户资源 金币、宝石等
|
|
UserSubTypeGetSetting = "getsetting" //获取设置
|
|
UserSubTypeUpdatesetting = "updatesetting" //更新设置
|
|
UserSubTypeVeriCode = "vericode" //验证码
|
|
UserSubTypeInitData = "initdata" //初始化用户
|
|
UserGetTujianResp = "gettujian" //获取图鉴信息
|
|
UserSubTypeLvChangedPush = "lvchanged" //等级变化推送
|
|
UserSubTypeModifyName = "modifyname" //修改名称
|
|
UserSubTypeModifyFigure = "modifyfigure" //修改形象
|
|
UserSubTypeModifySign = "modifysign" //修改签名
|
|
UserSubTypeModifyAvatar = "modifyavatar" //修改头像
|
|
UserSubTYpeModifyBgp = "modifybgp" //修改背景
|
|
UserSubTypeInfo = "info" //用户信息
|
|
UserSubTypeBattlerecord = "battlerecord" //玩家战斗记录
|
|
UserSubTypeShowteam = "showteam" //展示阵容
|
|
UserSubTypeSettingteam = "settingteam" //设置阵容展示
|
|
)
|
|
|
|
type apiComp struct {
|
|
modules.MCompGate
|
|
service base.IRPCXService
|
|
module *User
|
|
hero comm.IHero
|
|
mail comm.Imail
|
|
chat comm.IChat
|
|
}
|
|
|
|
func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
|
this.MCompGate.Init(service, module, comp, options)
|
|
this.service = service.(base.IRPCXService)
|
|
this.module = module.(*User)
|
|
return
|
|
}
|
|
|
|
func (this *apiComp) Start() (err error) {
|
|
err = this.MCompGate.Start()
|
|
var module core.IModule
|
|
|
|
//get module hero
|
|
if module, err = this.service.GetModule(comm.ModuleHero); err != nil {
|
|
return
|
|
}
|
|
this.hero = module.(comm.IHero)
|
|
|
|
if module, err = this.service.GetModule(comm.ModuleMail); err != nil {
|
|
return
|
|
}
|
|
this.mail = module.(comm.Imail)
|
|
if module, err = this.service.GetModule(comm.ModuleChat); err != nil {
|
|
return
|
|
}
|
|
this.chat = module.(comm.IChat)
|
|
return
|
|
}
|