diff --git a/comm/const.go b/comm/const.go index 146dadf1d..2cb106f2f 100644 --- a/comm/const.go +++ b/comm/const.go @@ -87,6 +87,7 @@ const ( ModuleCaravan core.M_Modules = "caravan" //巨怪商队 ModuleBuried core.M_Modules = "buried" //埋点中心 ModuleActivity core.M_Modules = "acrivity" //活动 + ModuleGuidance core.M_Modules = "guidance" //引导 ) // 数据表名定义处 @@ -268,6 +269,8 @@ const ( //世界任务 TableWtask = "wtask" + //新手引导 + TableGuidance = "guidance" ) // RPC服务接口定义处 diff --git a/modules/guidance/api.go b/modules/guidance/api.go new file mode 100644 index 000000000..4619813dd --- /dev/null +++ b/modules/guidance/api.go @@ -0,0 +1,29 @@ +package guidance + +import ( + "go_dreamfactory/modules" + + "go_dreamfactory/lego/core" +) + +/* +装备模块 API +*/ +type apiComp struct { + modules.MCompGate + service core.IService + module *Guidance +} + +// 组件初始化接口 +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.module = module.(*Guidance) + this.service = service + return +} + +func (this *apiComp) Start() (err error) { + err = this.MCompGate.Start() + return +} diff --git a/modules/guidance/api_complete.go b/modules/guidance/api_complete.go new file mode 100644 index 000000000..d8b193ecf --- /dev/null +++ b/modules/guidance/api_complete.go @@ -0,0 +1,54 @@ +package guidance + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +// 参数校验 +func (this *apiComp) CompleteCheck(session comm.IUserSession, req *pb.GuidanceCompleteReq) (errdata *pb.ErrorData) { + + return +} + +// 获取引导信息 +func (this *apiComp) Complete(session comm.IUserSession, req *pb.GuidanceCompleteReq) (errdata *pb.ErrorData) { + if errdata = this.CompleteCheck(session, req); errdata != nil { + return + } + var ( + gourmet *pb.DBGuidance + err error + ok bool + ) + if gourmet, err = this.module.modelGuidance.getUserGourmet(session.GetUserId()); err == nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + for _, v := range gourmet.Complete { + if req.Gid == v { + ok = true + } + } + + if !ok { + gourmet.Complete = append(gourmet.Complete, req.Gid) + } + + if err = this.module.modelGuidance.Change(session.GetUserId(), map[string]interface{}{ + "complete": gourmet.Complete, + }); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + session.SendMsg(string(this.module.GetType()), "complete", &pb.GuidanceCompleteResp{Gid: req.Gid}) + return +} diff --git a/modules/guidance/api_info.go b/modules/guidance/api_info.go new file mode 100644 index 000000000..01be8053d --- /dev/null +++ b/modules/guidance/api_info.go @@ -0,0 +1,33 @@ +package guidance + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +// 参数校验 +func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.GuidanceInfoReq) (errdata *pb.ErrorData) { + + return +} + +// 获取引导信息 +func (this *apiComp) Info(session comm.IUserSession, req *pb.GuidanceInfoReq) (errdata *pb.ErrorData) { + if errdata = this.InfoCheck(session, req); errdata != nil { + return + } + var ( + gourmet *pb.DBGuidance + err error + ) + if gourmet, err = this.module.modelGuidance.getUserGourmet(session.GetUserId()); err == nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + session.SendMsg(string(this.module.GetType()), "info", &pb.GuidanceInfoResp{Info: gourmet}) + return +} diff --git a/modules/guidance/api_start.go b/modules/guidance/api_start.go new file mode 100644 index 000000000..6f0ffebcd --- /dev/null +++ b/modules/guidance/api_start.go @@ -0,0 +1,44 @@ +package guidance + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" +) + +// 参数校验 +func (this *apiComp) BeginCheck(session comm.IUserSession, req *pb.GuidanceBeginReq) (errdata *pb.ErrorData) { + + return +} + +// 获取引导信息 +func (this *apiComp) Begin(session comm.IUserSession, req *pb.GuidanceBeginReq) (errdata *pb.ErrorData) { + if errdata = this.BeginCheck(session, req); errdata != nil { + return + } + var ( + gourmet *pb.DBGuidance + err error + ) + if gourmet, err = this.module.modelGuidance.getUserGourmet(session.GetUserId()); err == nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + gourmet.Lastguidance = req.Gid + if err = this.module.modelGuidance.Change(session.GetUserId(), map[string]interface{}{ + "lastguidance": gourmet.Lastguidance, + }); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } + session.SendMsg(string(this.module.GetType()), "begin", &pb.GuidanceBeginResp{Gid: req.Gid}) + return +} diff --git a/modules/guidance/comp_configure.go b/modules/guidance/comp_configure.go new file mode 100644 index 000000000..fc8f83ba6 --- /dev/null +++ b/modules/guidance/comp_configure.go @@ -0,0 +1,21 @@ +package guidance + +import ( + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" + "sync" +) + +const () + +// /配置管理基础组件 +type configureComp struct { + hlock sync.RWMutex + modules.MCompConfigure +} + +// 组件初始化接口 +func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + err = this.MCompConfigure.Init(service, module, comp, options) + return +} diff --git a/modules/guidance/modelGuidance.go b/modules/guidance/modelGuidance.go new file mode 100644 index 000000000..0e30a345b --- /dev/null +++ b/modules/guidance/modelGuidance.go @@ -0,0 +1,50 @@ +package guidance + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/core" + "go_dreamfactory/lego/sys/log" + "go_dreamfactory/lego/sys/mgo" + "go_dreamfactory/modules" + "go_dreamfactory/pb" + + "go.mongodb.org/mongo-driver/bson/primitive" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/x/bsonx" +) + +type ModelGuidance struct { + modules.MCompModel + module *Guidance +} + +func (this *ModelGuidance) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + err = this.MCompModel.Init(service, module, comp, options) + this.TableName = comm.TableGuidance + this.module = module.(*Guidance) + this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ + Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, + }) + return +} + +// 获取用户全部的埋点数据 +func (this *ModelGuidance) getUserGourmet(uid string) (results *pb.DBGuidance, err error) { + results = &pb.DBGuidance{} + if err = this.Get(uid, results); err != nil && err != mgo.MongodbNil { + this.module.Errorln(err) + return + } + if err == mgo.MongodbNil { + err = nil + results = &pb.DBGuidance{ + Id: primitive.NewObjectID().Hex(), + Uid: uid, + Complete: make([]int32, 0), + } + if err = this.Add(uid, results); err != nil { + this.module.Error("add User DBGuidance fail!", log.Field{Key: "err", Value: err.Error()}) + } + } + return +} diff --git a/modules/guidance/module.go b/modules/guidance/module.go new file mode 100644 index 000000000..72b89c96a --- /dev/null +++ b/modules/guidance/module.go @@ -0,0 +1,52 @@ +package guidance + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/base" + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" +) + +/* +模块名:新手引导 +描述:新手引导 +开发:李伟 +*/ +func NewModule() core.IModule { + m := new(Guidance) + return m +} + +type Guidance struct { + modules.ModuleBase + api_comp *apiComp + service base.IRPCXService + configure *configureComp + modelGuidance *ModelGuidance +} + +// 模块名 +func (this *Guidance) GetType() core.M_Modules { + return comm.ModuleGuidance +} + +// 模块初始化接口 注册用户创建角色事件 +func (this *Guidance) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) { + err = this.ModuleBase.Init(service, module, options) + this.service = service.(base.IRPCXService) + return +} + +// 模块初始化接口 注册用户创建角色事件 +func (this *Guidance) Start() (err error) { + err = this.ModuleBase.Start() + return +} + +// 装备组件 +func (this *Guidance) OnInstallComp() { + this.ModuleBase.OnInstallComp() + this.api_comp = this.RegisterComp(new(apiComp)).(*apiComp) + this.configure = this.RegisterComp(new(configureComp)).(*configureComp) + this.modelGuidance = this.RegisterComp(new(ModelGuidance)).(*ModelGuidance) +} diff --git a/modules/guidance/module_test.go b/modules/guidance/module_test.go new file mode 100644 index 000000000..a1ed409e8 --- /dev/null +++ b/modules/guidance/module_test.go @@ -0,0 +1,77 @@ +package guidance_test + +import ( + "fmt" + "go_dreamfactory/comm" + "go_dreamfactory/lego" + "go_dreamfactory/lego/base/rpcx" + "go_dreamfactory/lego/core" + "go_dreamfactory/lego/sys/log" + "go_dreamfactory/modules/equipment" + "go_dreamfactory/modules/gm" + "go_dreamfactory/modules/hero" + "go_dreamfactory/modules/items" + "go_dreamfactory/modules/user" + "go_dreamfactory/services" + "go_dreamfactory/sys/configure" + "go_dreamfactory/sys/db" + "os" + "testing" + "time" +) + +func newService(ops ...rpcx.Option) core.IService { + s := new(TestService) + s.Configure(ops...) + return s +} + +// 梦工厂基础服务对象 +type TestService struct { + rpcx.RPCXService +} + +// 初始化相关系统 +func (this *TestService) InitSys() { + this.RPCXService.InitSys() + if err := db.OnInit(this.GetSettings().Sys["db"]); err != nil { + panic(fmt.Sprintf("init sys.db err: %s", err.Error())) + } else { + log.Infof("init sys.db success!") + } + if err := configure.OnInit(this.GetSettings().Sys["configure"]); err != nil { + panic(fmt.Sprintf("init sys.configure err: %s", err.Error())) + } else { + log.Infof("init sys.configure success!") + } +} + +var service core.IService +var s_gateComp comm.ISC_GateRouteComp = services.NewGateRouteComp() +var module = new(gm.GM) + +// 测试环境下初始化db和cache 系统 +func TestMain(m *testing.M) { + service = newService( + rpcx.SetConfPath("../../bin/conf/worker_1.yaml"), + rpcx.SetVersion("1.0.0.0"), + ) + service.OnInstallComp( //装备组件 + s_gateComp, //此服务需要接受用户的消息 需要装备网关组件 + ) + go func() { + lego.Run(service, //运行模块 + module, + hero.NewModule(), + user.NewModule(), + items.NewModule(), + equipment.NewModule(), + ) + }() + time.Sleep(time.Second * 3) + defer os.Exit(m.Run()) +} + +func Test_Module(t *testing.T) { + +} diff --git a/modules/wtask/api_info.go b/modules/wtask/api_info.go index 313712252..986ba66cf 100644 --- a/modules/wtask/api_info.go +++ b/modules/wtask/api_info.go @@ -13,11 +13,22 @@ func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.WTaskInfoReq) // /获取系统公告 func (this *apiComp) Info(session comm.IUserSession, req *pb.WTaskInfoReq) (errdata *pb.ErrorData) { - var () + var ( + wtask *pb.DBWTask + err error + ) if errdata = this.InfoCheck(session, req); errdata != nil { return } + if wtask, err = this.module.modelwtask.getUserWTasks(session.GetUserId()); err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_DBError, + Title: pb.ErrorCode_DBError.ToString(), + Message: err.Error(), + } + return + } - session.SendMsg(string(this.module.GetType()), "info", &pb.WTaskInfoReq{}) + session.SendMsg(string(this.module.GetType()), "info", &pb.WTaskInfoResp{Activations: wtask.Activations, Completes: wtask.Completes}) return } diff --git a/modules/wtask/configure.go b/modules/wtask/configure.go index 2cf0a41b5..9d5e1667b 100644 --- a/modules/wtask/configure.go +++ b/modules/wtask/configure.go @@ -2,7 +2,6 @@ package wtask import ( "fmt" - "go_dreamfactory/comm" "go_dreamfactory/lego/core" "go_dreamfactory/modules" "go_dreamfactory/sys/configure" @@ -20,12 +19,14 @@ const ( type configureComp struct { modules.MCompConfigure - lock sync.RWMutex - worldtaskConf map[int32]*cfg.GameWorldTaskData //key 条件ID + module *WTask + lock sync.RWMutex + condlTask map[int32][]*cfg.GameWorldTaskData //key 条件ID } func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { err = this.MCompConfigure.Init(service, module, comp, options) + this.module = module.(*WTask) err = this.LoadMultiConfigure(map[string]interface{}{ gameWorldTask: cfg.NewGameWorldTask, gameWorldtaskBattle: cfg.NewGameWorldBattle, @@ -33,11 +34,12 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp gameburiedCond: cfg.NewGameBuriedCondi, gamerdtasknpc: cfg.NewGameRdtaskNpc, }) - this.worldtaskConf = make(map[int32]*cfg.GameWorldTaskData) + this.condlTask = make(map[int32][]*cfg.GameWorldTaskData) configure.RegisterConfigure(gameWorldTask, cfg.NewGameBuriedCondi, this.updateconfigure) return } +// 读取任务配置表 func (this *configureComp) getWorldtaskCfg() (data *cfg.GameWorldTask, err error) { var ( v interface{} @@ -47,110 +49,31 @@ func (this *configureComp) getWorldtaskCfg() (data *cfg.GameWorldTask, err error return } else { if data, ok = v.(*cfg.GameWorldTask); !ok { - err = fmt.Errorf("%T is *cfg.GameWorldTask", v) + err = fmt.Errorf("%T is *cfg.GameWorldTask", v) return } } return } +// 更新任务配置表 func (this *configureComp) updateconfigure() { gwt, err := this.getWorldtaskCfg() if err != nil { + this.module.Error("世界任务配置表异常!") return } + worldtaskConf := make(map[int32][]*cfg.GameWorldTaskData) + for _, v := range gwt.GetDataList() { + for _, condl := range v.Completetask { + if _, ok := worldtaskConf[condl]; !ok { + worldtaskConf[condl] = make([]*cfg.GameWorldTaskData, 0) + } + worldtaskConf[condl] = append(worldtaskConf[condl], v) + } + } this.lock.Lock() - this.worldtaskConf = gwt.GetDataMap() + this.condlTask = worldtaskConf this.lock.Unlock() } - -func (this *configureComp) getWorldAllCfg() (data *cfg.GameWorldAll, err error) { - var ( - v interface{} - ok bool - ) - if v, err = this.GetConfigure(gameWorldAll); err != nil { - return - } else { - if data, ok = v.(*cfg.GameWorldAll); !ok { - err = fmt.Errorf("%T is *cfg.GameWorldAll", v) - return - } - } - return -} - -func (this *configureComp) getWorldtaskById(taskId int32) (*cfg.GameWorldTaskData, error) { - gwt, err := this.getWorldtaskCfg() - if err != nil { - return nil, err - } - if data, ok := gwt.GetDataMap()[taskId]; ok { - return data, nil - } - return nil, comm.NewNotFoundConfErr(modulename, gameWorldTask, taskId) -} - -func (this *configureComp) getNPCById(npcId int32) (npc *cfg.GameRdtaskNpcData, err error) { - var ( - v interface{} - ) - if v, err = this.GetConfigure(gamerdtasknpc); err != nil { - return - } else { - data, ok := v.(*cfg.GameRdtaskNpc) - if !ok { - err = fmt.Errorf("%T is *cfg.GameRdtaskNpc", v) - return - } - if npc, ok = data.GetDataMap()[npcId]; ok { - return - } - err = comm.NewNotFoundConfErr(modulename, gamerdtasknpc, npc) - } - return -} - -func (this *configureComp) getWorldtaskBattleCfg() (data *cfg.GameWorldBattle, err error) { - var ( - v interface{} - ok bool - ) - if v, err = this.GetConfigure(gameWorldtaskBattle); err != nil { - return - } else { - if data, ok = v.(*cfg.GameWorldBattle); !ok { - err = fmt.Errorf("%T is *cfg.GameWorldBattle", v) - return - } - } - return -} - -func (this *configureComp) getWorldtaskBattleById(confId int32) (*cfg.GameWorldBattleData, error) { - gwt, err := this.getWorldtaskBattleCfg() - if err != nil { - return nil, err - } - if data, ok := gwt.GetDataMap()[confId]; ok { - return data, nil - } - return nil, fmt.Errorf("GameWorldBattleData config id:%v not found", confId) -} - -func (this *configureComp) getBuriedCondCfg() (data *cfg.GameBuriedCondi, err error) { - var ( - v interface{} - ok bool - ) - if v, err = this.GetConfigure(gameburiedCond); err != nil { - return - } else { - if data, ok = v.(*cfg.GameBuriedCondi); !ok { - err = fmt.Errorf("%T is *cfg.GameWorldAll", v) - return - } - } - return -} diff --git a/modules/wtask/modelWTask.go b/modules/wtask/modelWTask.go index efbba1d57..30cb42395 100644 --- a/modules/wtask/modelWTask.go +++ b/modules/wtask/modelWTask.go @@ -37,8 +37,11 @@ func (this *ModelWTask) getUserWTasks(uid string) (results *pb.DBWTask, err erro if err == mgo.MongodbNil { err = nil results = &pb.DBWTask{ - Id: primitive.NewObjectID().Hex(), - Uid: uid, + Id: primitive.NewObjectID().Hex(), + Uid: uid, + Activations: make([]int32, 0), + Accepttask: make([]int32, 0), + Completes: make([]int32, 0), } err = this.Add(uid, results) } diff --git a/modules/wtask/module.go b/modules/wtask/module.go index 61a84ab59..497c42b39 100644 --- a/modules/wtask/module.go +++ b/modules/wtask/module.go @@ -4,6 +4,7 @@ import ( "go_dreamfactory/comm" "go_dreamfactory/lego/core" "go_dreamfactory/modules" + cfg "go_dreamfactory/sys/configure/structs" ) const modulename = "世界任务" @@ -35,3 +36,40 @@ func (this *WTask) OnInstallComp() { this.configure = this.RegisterComp(new(configureComp)).(*configureComp) } + +// 查询可接取任务列表 +func (this *WTask) inquireActivations(lv int32, complete []int32, opencmd []string) (err error, activations []int32) { + var ( + conf *cfg.GameWorldTask + completeMap map[int32]struct{} = make(map[int32]struct{}) + opencmdMap map[string]struct{} = make(map[string]struct{}) + ok bool + ) + activations = make([]int32, 0) + if conf, err = this.configure.getWorldtaskCfg(); err != nil { + return + } + + for _, v := range complete { + completeMap[v] = struct{}{} + } + for _, v := range opencmd { + opencmdMap[v] = struct{}{} + } + for _, v := range conf.GetDataList() { + if _, ok = completeMap[v.Key]; ok { //已完成 + continue + } + if lv < v.Lock || lv > v.Lockend { //等级不符合 + continue + } + if _, ok = completeMap[v.Ontxe]; v.Ontxe != 0 && !ok { //前置任务判断 + continue + } + if v.Des == 5 { //商队任务不主动触发 + continue + } + activations = append(activations, v.Key) + } + return +} diff --git a/pb/guidance_db.pb.go b/pb/guidance_db.pb.go new file mode 100644 index 000000000..7a997bdaa --- /dev/null +++ b/pb/guidance_db.pb.go @@ -0,0 +1,170 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: guidance/guidance_db.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type DBGuidance struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"` //用户id + Complete []int32 `protobuf:"varint,3,rep,packed,name=complete,proto3" json:"complete"` //完成队列 + Lastguidance int32 `protobuf:"varint,4,opt,name=lastguidance,proto3" json:"lastguidance"` //上一次的引导id +} + +func (x *DBGuidance) Reset() { + *x = DBGuidance{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_db_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DBGuidance) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DBGuidance) ProtoMessage() {} + +func (x *DBGuidance) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_db_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DBGuidance.ProtoReflect.Descriptor instead. +func (*DBGuidance) Descriptor() ([]byte, []int) { + return file_guidance_guidance_db_proto_rawDescGZIP(), []int{0} +} + +func (x *DBGuidance) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DBGuidance) GetUid() string { + if x != nil { + return x.Uid + } + return "" +} + +func (x *DBGuidance) GetComplete() []int32 { + if x != nil { + return x.Complete + } + return nil +} + +func (x *DBGuidance) GetLastguidance() int32 { + if x != nil { + return x.Lastguidance + } + return 0 +} + +var File_guidance_guidance_db_proto protoreflect.FileDescriptor + +var file_guidance_guidance_db_proto_rawDesc = []byte{ + 0x0a, 0x1a, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x67, 0x75, 0x69, 0x64, 0x61, + 0x6e, 0x63, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6e, 0x0a, 0x0a, + 0x44, 0x42, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, + 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, + 0x6c, 0x61, 0x73, 0x74, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x06, 0x5a, 0x04, + 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_guidance_guidance_db_proto_rawDescOnce sync.Once + file_guidance_guidance_db_proto_rawDescData = file_guidance_guidance_db_proto_rawDesc +) + +func file_guidance_guidance_db_proto_rawDescGZIP() []byte { + file_guidance_guidance_db_proto_rawDescOnce.Do(func() { + file_guidance_guidance_db_proto_rawDescData = protoimpl.X.CompressGZIP(file_guidance_guidance_db_proto_rawDescData) + }) + return file_guidance_guidance_db_proto_rawDescData +} + +var file_guidance_guidance_db_proto_msgTypes = make([]protoimpl.MessageInfo, 1) +var file_guidance_guidance_db_proto_goTypes = []interface{}{ + (*DBGuidance)(nil), // 0: DBGuidance +} +var file_guidance_guidance_db_proto_depIdxs = []int32{ + 0, // [0:0] is the sub-list for method output_type + 0, // [0:0] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_guidance_guidance_db_proto_init() } +func file_guidance_guidance_db_proto_init() { + if File_guidance_guidance_db_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_guidance_guidance_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBGuidance); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_guidance_guidance_db_proto_rawDesc, + NumEnums: 0, + NumMessages: 1, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_guidance_guidance_db_proto_goTypes, + DependencyIndexes: file_guidance_guidance_db_proto_depIdxs, + MessageInfos: file_guidance_guidance_db_proto_msgTypes, + }.Build() + File_guidance_guidance_db_proto = out.File + file_guidance_guidance_db_proto_rawDesc = nil + file_guidance_guidance_db_proto_goTypes = nil + file_guidance_guidance_db_proto_depIdxs = nil +} diff --git a/pb/guidance_msg.pb.go b/pb/guidance_msg.pb.go new file mode 100644 index 000000000..109f02bd2 --- /dev/null +++ b/pb/guidance_msg.pb.go @@ -0,0 +1,456 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: guidance/guidance_msg.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +//引导信息请求 +type GuidanceInfoReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GuidanceInfoReq) Reset() { + *x = GuidanceInfoReq{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceInfoReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceInfoReq) ProtoMessage() {} + +func (x *GuidanceInfoReq) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceInfoReq.ProtoReflect.Descriptor instead. +func (*GuidanceInfoReq) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{0} +} + +//引导信息回应 +type GuidanceInfoResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *DBGuidance `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` +} + +func (x *GuidanceInfoResp) Reset() { + *x = GuidanceInfoResp{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceInfoResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceInfoResp) ProtoMessage() {} + +func (x *GuidanceInfoResp) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceInfoResp.ProtoReflect.Descriptor instead. +func (*GuidanceInfoResp) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{1} +} + +func (x *GuidanceInfoResp) GetInfo() *DBGuidance { + if x != nil { + return x.Info + } + return nil +} + +//完成引导信息请求 +type GuidanceCompleteReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Gid int32 `protobuf:"varint,1,opt,name=gid,proto3" json:"gid"` //引导id +} + +func (x *GuidanceCompleteReq) Reset() { + *x = GuidanceCompleteReq{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceCompleteReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceCompleteReq) ProtoMessage() {} + +func (x *GuidanceCompleteReq) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceCompleteReq.ProtoReflect.Descriptor instead. +func (*GuidanceCompleteReq) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{2} +} + +func (x *GuidanceCompleteReq) GetGid() int32 { + if x != nil { + return x.Gid + } + return 0 +} + +//完成引导信息回应 +type GuidanceCompleteResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Gid int32 `protobuf:"varint,1,opt,name=gid,proto3" json:"gid"` //引导id +} + +func (x *GuidanceCompleteResp) Reset() { + *x = GuidanceCompleteResp{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceCompleteResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceCompleteResp) ProtoMessage() {} + +func (x *GuidanceCompleteResp) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceCompleteResp.ProtoReflect.Descriptor instead. +func (*GuidanceCompleteResp) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{3} +} + +func (x *GuidanceCompleteResp) GetGid() int32 { + if x != nil { + return x.Gid + } + return 0 +} + +//设置开始引导 请求 +type GuidanceBeginReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Gid int32 `protobuf:"varint,1,opt,name=gid,proto3" json:"gid"` //引导id +} + +func (x *GuidanceBeginReq) Reset() { + *x = GuidanceBeginReq{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceBeginReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceBeginReq) ProtoMessage() {} + +func (x *GuidanceBeginReq) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceBeginReq.ProtoReflect.Descriptor instead. +func (*GuidanceBeginReq) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{4} +} + +func (x *GuidanceBeginReq) GetGid() int32 { + if x != nil { + return x.Gid + } + return 0 +} + +//设置开始引导 请求回应 +type GuidanceBeginResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Gid int32 `protobuf:"varint,1,opt,name=gid,proto3" json:"gid"` //成功回应 +} + +func (x *GuidanceBeginResp) Reset() { + *x = GuidanceBeginResp{} + if protoimpl.UnsafeEnabled { + mi := &file_guidance_guidance_msg_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuidanceBeginResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuidanceBeginResp) ProtoMessage() {} + +func (x *GuidanceBeginResp) ProtoReflect() protoreflect.Message { + mi := &file_guidance_guidance_msg_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GuidanceBeginResp.ProtoReflect.Descriptor instead. +func (*GuidanceBeginResp) Descriptor() ([]byte, []int) { + return file_guidance_guidance_msg_proto_rawDescGZIP(), []int{5} +} + +func (x *GuidanceBeginResp) GetGid() int32 { + if x != nil { + return x.Gid + } + return 0 +} + +var File_guidance_guidance_msg_proto protoreflect.FileDescriptor + +var file_guidance_guidance_msg_proto_rawDesc = []byte{ + 0x0a, 0x1b, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x67, 0x75, 0x69, 0x64, 0x61, + 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x67, + 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x2f, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, + 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x11, 0x0a, 0x0f, 0x47, 0x75, 0x69, + 0x64, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x33, 0x0a, 0x10, + 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, + 0x2e, 0x44, 0x42, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, + 0x6f, 0x22, 0x27, 0x0a, 0x13, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x67, 0x69, 0x64, 0x22, 0x28, 0x0a, 0x14, 0x47, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x67, 0x69, 0x64, 0x22, 0x24, 0x0a, 0x10, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, + 0x42, 0x65, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x67, 0x69, 0x64, 0x22, 0x25, 0x0a, 0x11, 0x47, 0x75, + 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x67, 0x69, + 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_guidance_guidance_msg_proto_rawDescOnce sync.Once + file_guidance_guidance_msg_proto_rawDescData = file_guidance_guidance_msg_proto_rawDesc +) + +func file_guidance_guidance_msg_proto_rawDescGZIP() []byte { + file_guidance_guidance_msg_proto_rawDescOnce.Do(func() { + file_guidance_guidance_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_guidance_guidance_msg_proto_rawDescData) + }) + return file_guidance_guidance_msg_proto_rawDescData +} + +var file_guidance_guidance_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_guidance_guidance_msg_proto_goTypes = []interface{}{ + (*GuidanceInfoReq)(nil), // 0: GuidanceInfoReq + (*GuidanceInfoResp)(nil), // 1: GuidanceInfoResp + (*GuidanceCompleteReq)(nil), // 2: GuidanceCompleteReq + (*GuidanceCompleteResp)(nil), // 3: GuidanceCompleteResp + (*GuidanceBeginReq)(nil), // 4: GuidanceBeginReq + (*GuidanceBeginResp)(nil), // 5: GuidanceBeginResp + (*DBGuidance)(nil), // 6: DBGuidance +} +var file_guidance_guidance_msg_proto_depIdxs = []int32{ + 6, // 0: GuidanceInfoResp.info:type_name -> DBGuidance + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_guidance_guidance_msg_proto_init() } +func file_guidance_guidance_msg_proto_init() { + if File_guidance_guidance_msg_proto != nil { + return + } + file_guidance_guidance_db_proto_init() + if !protoimpl.UnsafeEnabled { + file_guidance_guidance_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_guidance_guidance_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_guidance_guidance_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceCompleteReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_guidance_guidance_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceCompleteResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_guidance_guidance_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceBeginReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_guidance_guidance_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuidanceBeginResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_guidance_guidance_msg_proto_rawDesc, + NumEnums: 0, + NumMessages: 6, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_guidance_guidance_msg_proto_goTypes, + DependencyIndexes: file_guidance_guidance_msg_proto_depIdxs, + MessageInfos: file_guidance_guidance_msg_proto_msgTypes, + }.Build() + File_guidance_guidance_msg_proto = out.File + file_guidance_guidance_msg_proto_rawDesc = nil + file_guidance_guidance_msg_proto_goTypes = nil + file_guidance_guidance_msg_proto_depIdxs = nil +} diff --git a/pb/wtask_msg.pb.go b/pb/wtask_msg.pb.go index d5141dda7..032eda213 100644 --- a/pb/wtask_msg.pb.go +++ b/pb/wtask_msg.pb.go @@ -67,6 +67,7 @@ type WTaskInfoResp struct { Activations []int32 `protobuf:"varint,1,rep,packed,name=activations,proto3" json:"activations"` //可接取任务列表 Accepttask []*DBWTaskItem `protobuf:"bytes,2,rep,name=accepttask,proto3" json:"accepttask"` //已接取任务列表 + Completes []int32 `protobuf:"varint,3,rep,packed,name=completes,proto3" json:"completes"` //完成任务列表 } func (x *WTaskInfoResp) Reset() { @@ -115,6 +116,13 @@ func (x *WTaskInfoResp) GetAccepttask() []*DBWTaskItem { return nil } +func (x *WTaskInfoResp) GetCompletes() []int32 { + if x != nil { + return x.Completes + } + return nil +} + // 接取任务 请求 type WTaskAcceptReq struct { state protoimpl.MessageState @@ -675,57 +683,59 @@ var file_wtask_wtask_msg_proto_rawDesc = []byte{ 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x0e, 0x0a, 0x0c, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x65, 0x71, 0x22, 0x5f, 0x0a, 0x0d, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x71, 0x22, 0x7d, 0x0a, 0x0d, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x74, - 0x61, 0x73, 0x6b, 0x22, 0x22, 0x0a, 0x0e, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x22, 0x33, 0x0a, 0x0f, 0x57, 0x54, 0x61, 0x73, 0x6b, - 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x04, 0x74, 0x61, - 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, 0x57, 0x54, 0x61, - 0x73, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x74, 0x61, 0x73, 0x6b, 0x22, 0x63, 0x0a, 0x13, - 0x57, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, - 0x66, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x22, 0x37, 0x0a, 0x14, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, - 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x61, 0x0a, 0x14, 0x57, 0x54, - 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, - 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x17, 0x0a, - 0x15, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, - 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x22, 0x0a, 0x0e, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x46, - 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x22, 0x46, 0x0a, 0x0f, 0x57, 0x54, - 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, - 0x03, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x12, - 0x21, 0x0a, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, - 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, - 0x72, 0x64, 0x22, 0x38, 0x0a, 0x14, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x75, 0x73, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x49, 0x0a, 0x19, - 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x2c, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x65, 0x70, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, - 0x44, 0x42, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x61, 0x63, 0x63, - 0x65, 0x70, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x22, 0x55, 0x0a, 0x12, 0x57, 0x54, 0x61, 0x73, 0x6b, - 0x41, 0x75, 0x74, 0x6f, 0x46, 0x69, 0x6e, 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x05, 0x61, - 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55, 0x73, 0x65, - 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, - 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x73, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x73, 0x22, 0x22, 0x0a, 0x0e, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, + 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x03, 0x74, 0x69, 0x64, 0x22, 0x33, 0x0a, 0x0f, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, + 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x04, 0x74, 0x61, 0x73, 0x6b, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, 0x57, 0x54, 0x61, 0x73, 0x6b, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x74, 0x61, 0x73, 0x6b, 0x22, 0x63, 0x0a, 0x13, 0x57, 0x54, + 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x22, + 0x37, 0x0a, 0x14, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x61, 0x0a, 0x14, 0x57, 0x54, 0x61, 0x73, + 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, + 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x57, + 0x54, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x22, 0x0a, 0x0e, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x22, 0x46, 0x0a, 0x0f, 0x57, 0x54, 0x61, 0x73, + 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x12, 0x21, 0x0a, + 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55, + 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, + 0x22, 0x38, 0x0a, 0x14, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x75, 0x73, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x49, 0x0a, 0x19, 0x57, 0x54, + 0x61, 0x73, 0x6b, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x2c, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x70, + 0x74, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, + 0x57, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x70, + 0x74, 0x74, 0x61, 0x73, 0x6b, 0x22, 0x55, 0x0a, 0x12, 0x57, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x75, + 0x74, 0x6f, 0x46, 0x69, 0x6e, 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x05, 0x61, 0x77, 0x61, + 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, + 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, 0x5a, 0x04, + 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/services/worker/main.go b/services/worker/main.go index c64a739e2..8727a43bd 100644 --- a/services/worker/main.go +++ b/services/worker/main.go @@ -20,6 +20,7 @@ import ( "go_dreamfactory/modules/gm" "go_dreamfactory/modules/gourmet" "go_dreamfactory/modules/growtask" + "go_dreamfactory/modules/guidance" "go_dreamfactory/modules/hero" "go_dreamfactory/modules/horoscope" "go_dreamfactory/modules/hunting" @@ -124,6 +125,7 @@ func main() { caravan.NewModule(), buried.NewModule(), activity.NewModule(), + guidance.NewModule(), ) }