77 lines
1.9 KiB
Go
77 lines
1.9 KiB
Go
package growtask
|
|
|
|
import (
|
|
"go_dreamfactory/comm"
|
|
"go_dreamfactory/lego/base"
|
|
"go_dreamfactory/lego/core"
|
|
"go_dreamfactory/lego/sys/log"
|
|
"go_dreamfactory/modules"
|
|
"go_dreamfactory/pb"
|
|
)
|
|
|
|
var _ comm.IGrowtask = (*Growtask)(nil)
|
|
|
|
type Growtask struct {
|
|
modules.ModuleBase
|
|
api *apiComp
|
|
service base.IRPCXService
|
|
configure *configureComp
|
|
modelGrowtask *ModelGrowtask
|
|
}
|
|
|
|
func NewModule() core.IModule {
|
|
return &Growtask{}
|
|
}
|
|
func (this *Growtask) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) {
|
|
err = this.ModuleBase.Init(service, module, options)
|
|
return
|
|
}
|
|
|
|
func (this *Growtask) GetType() core.M_Modules {
|
|
return comm.ModuleGrowtask
|
|
}
|
|
|
|
func (this *Growtask) OnInstallComp() {
|
|
this.ModuleBase.OnInstallComp()
|
|
this.api = this.RegisterComp(new(apiComp)).(*apiComp)
|
|
this.modelGrowtask = this.RegisterComp(new(ModelGrowtask)).(*ModelGrowtask)
|
|
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
|
|
}
|
|
|
|
func (m *Growtask) BingoAllGrowTask(session comm.IUserSession) error {
|
|
uid := session.GetUserId()
|
|
|
|
gt := &pb.DBGrowtask{Uid: uid}
|
|
//初始任务
|
|
init, err := m.modelGrowtask.initGrowtask(uid, 1)
|
|
if err != nil {
|
|
m.Error("初始任务", log.Field{Key: "uid", Value: uid})
|
|
return err
|
|
}
|
|
gt.InitTaskList = init.InitTaskList
|
|
|
|
//中级任务
|
|
mid, err := m.modelGrowtask.initGrowtask(uid, 2)
|
|
if err != nil {
|
|
m.Error("中级任务", log.Field{Key: "uid", Value: uid})
|
|
return err
|
|
}
|
|
gt.MidTaskList = mid.MidTaskList
|
|
|
|
//高级任务
|
|
high, err := m.modelGrowtask.initGrowtask(uid, 3)
|
|
if err != nil {
|
|
m.Error("高级任务", log.Field{Key: "uid", Value: uid})
|
|
return err
|
|
}
|
|
gt.HighTaskList = high.HighTaskList
|
|
|
|
update := map[string]interface{}{
|
|
"initTaskList": gt.InitTaskList,
|
|
"midTaskList": gt.MidTaskList,
|
|
"highTaskList": gt.HighTaskList,
|
|
}
|
|
|
|
return m.modelGrowtask.Change(uid, update)
|
|
}
|