package app import ( "joybuywork/internal/server/depend" c_fuserpb "gits.branchcn.com/backend/certified/proto/go_proto/c_fuser" c_guserpb "gits.branchcn.com/backend/certified/proto/go_proto/c_guser" c_userpb "gits.branchcn.com/backend/certified/proto/go_proto/c_user" chatpb "gits.branchcn.com/backend/deepai/proto/go_proto/ai_chat" ddevicepb "gits.branchcn.com/backend/deeplink/proto/go_proto/ddevice" deventpb "gits.branchcn.com/backend/deeplink/proto/go_proto/devent" dlinkpb "gits.branchcn.com/backend/deeplink/proto/go_proto/dlink" analyzepb "gits.branchcn.com/backend/fissionbi/proto/go_proto/bi_analyze" factionpb "gits.branchcn.com/backend/fissionbi/proto/go_proto/bi_fission_action" oprojectpb "gits.branchcn.com/backend/oplatform/proto/go_proto/oproject" linkpb "gits.branchcn.com/backend/shortlink/proto/go_proto/link" t_centerpb "gits.branchcn.com/backend/taskcenter/proto/go_proto/t_center" t_center_statpb "gits.branchcn.com/backend/taskcenter/proto/go_proto/t_center_stat" ) const ( certifiedName = "certified" deepLinkName = "deeplink" shortLinkName = "shortlink" fissionBiName = "fissionbi" oplatformName = "oplatform" deepAiName = "deepai" taskcenterName = "taskcenter" ) func InitMicro() { certified = certifiedService{ cUser: c_userpb.NewCUserService(certifiedName, depend.M.Client()), fUser: c_fuserpb.NewCFUserService(certifiedName, depend.M.Client()), gUser: c_guserpb.NewCGUserService(certifiedName, depend.M.Client()), } deepLink = deepLinkService{ link: dlinkpb.NewDLinkService(deepLinkName, depend.M.Client()), event: deventpb.NewDEventService(deepLinkName, depend.M.Client()), device: ddevicepb.NewDDeviceService(deepLinkName, depend.M.Client()), } shortLink = shortLinkService{ link: linkpb.NewLinkService(shortLinkName, depend.M.Client()), } fissionBi = fissionBiService{ analyze: analyzepb.NewBiAnalyzeService(fissionBiName, depend.M.Client()), faction: factionpb.NewBiFissionActionService(fissionBiName, depend.M.Client()), } oplatform = oplatformService{ oproject: oprojectpb.NewOProjectService(oplatformName, depend.M.Client()), } deepAi = deepAiService{ chat: chatpb.NewChatService(deepAiName, depend.M.Client()), } taskcenter = taskcenterService{ center: t_centerpb.NewTCenterService(taskcenterName, depend.M.Client()), centerStat: t_center_statpb.NewTCenterStatService(taskcenterName, depend.M.Client()), } } // 认证 type certifiedService struct { cUser c_userpb.CUserService fUser c_fuserpb.CFUserService gUser c_guserpb.CGUserService } var certified certifiedService func NewCertifiedUser() c_userpb.CUserService { return certified.cUser } func NewCertifiedFUser() c_fuserpb.CFUserService { return certified.fUser } func NewCertifiedGUser() c_guserpb.CGUserService { return certified.gUser } // 深度链接 type deepLinkService struct { link dlinkpb.DLinkService event deventpb.DEventService device ddevicepb.DDeviceService } var deepLink deepLinkService func NewDeepLinkLink() dlinkpb.DLinkService { return deepLink.link } func NewDeepLinkEvent() deventpb.DEventService { return deepLink.event } func NewDeepLinkDevice() ddevicepb.DDeviceService { return deepLink.device } // 短链 type shortLinkService struct { link linkpb.LinkService } var shortLink shortLinkService func NewShortLinkNameLink() linkpb.LinkService { return shortLink.link } // 玩法报表 type fissionBiService struct { analyze analyzepb.BiAnalyzeService faction factionpb.BiFissionActionService } var fissionBi fissionBiService func NewFissionBiAnalyze() analyzepb.BiAnalyzeService { return fissionBi.analyze } func NewFissionBiFissionAction() factionpb.BiFissionActionService { return fissionBi.faction } // 开放平台 type oplatformService struct { oproject oprojectpb.OProjectService } var oplatform oplatformService func NewOProject() oprojectpb.OProjectService { return oplatform.oproject } type deepAiService struct { chat chatpb.ChatService } var deepAi deepAiService func NewDeepAiChat() chatpb.ChatService { return deepAi.chat } type taskcenterService struct { centerStat t_center_statpb.TCenterStatService center t_centerpb.TCenterService } var taskcenter taskcenterService func NewTaskcenterCenterStat() t_center_statpb.TCenterStatService { return taskcenter.centerStat } func NewTaskcenterCenter() t_centerpb.TCenterService { return taskcenter.center }