package router import ( "kra/internal/server/handler" platformmodule "kra/pkg/module" "github.com/gin-gonic/gin" ) type Routes struct { handlers *handler.Set } func NewRoutes(handlers *handler.Set) *Routes { return &Routes{handlers: handlers} } var _ platformmodule.RouteRegistrar = (*Routes)(nil) func (r *Routes) RegisterRoutes(public, private *gin.RouterGroup, engine *gin.Engine) { if r == nil || r.handlers == nil { return } registrations := []func(){ func() { RegisterBusinessPerformance(private, r.handlers.BusinessPerformance) }, func() { RegisterOtherSettings(private, r.handlers.OtherSettings) }, func() { private.GET("/sw/rank/channel", r.handlers.Ranking.Channel) private.GET("/sw/rank/business", r.handlers.Ranking.Business) private.GET("/sw/rank/game", r.handlers.Ranking.Game) }, func() { private.GET("/sw/workbench/summary", r.handlers.Workbench.Summary) private.GET("/sw/workbench/registerTop", r.handlers.Workbench.RegisterTop) private.GET("/sw/workbench/payRank", r.handlers.Workbench.PayRank) private.GET("/sw/workbench/unloginTop", r.handlers.Workbench.UnloginTop) }, func() { private.GET("/sw/serverAnalysis/servers", r.handlers.ServerAnalysis.Servers) private.GET("/sw/serverAnalysis/list", r.handlers.ServerAnalysis.List) }, func() { private.GET("/sw/channelData/list", r.handlers.Analytics.Channels) private.GET("/sw/gameData/list", r.handlers.Analytics.Games) }, func() { RegisterLedger(private, r.handlers.Ledger) }, func() { private.GET("/sw/promote/portrait", r.handlers.ChannelPortrait.Portrait) }, func() { private.GET("/sw/business/:userId/portrait", r.handlers.BusinessPortrait.ForUser) private.GET("/sw/business/bindPlatform/portrait", r.handlers.BusinessPortrait.ForBinding) }, func() { RegisterChannel(private, r.handlers.Channel) }, func() { private.GET("/sw/promoteActivePool/bindList", r.handlers.Activation.List) private.GET("/sw/promoteActivePool/bindSpendDetail", r.handlers.Activation.SpendDetail) }, func() { RegisterAlertRecord(private, r.handlers.AlertRecord) }, func() { RegisterAlertRule(private, r.handlers.AlertRule) }, func() { RegisterAlertGovernance(private, r.handlers.AlertGovernance) }, func() { private.GET("/sw/business/:userId/promotes", r.handlers.BusinessPromote.List) }, func() { RegisterBusiness(private, r.handlers.Business) }, func() { RegisterBusinessPassword(public, r.handlers.BusinessPassword) }, func() { RegisterPublic(public, engine, r.handlers.Public) }, func() { RegisterUser(private, r.handlers.User) }, func() { RegisterNavigation(private, r.handlers.Navigation) }, func() { RegisterSession(private, r.handlers.Session) }, func() { RegisterAuthority(private, r.handlers.Authority) }, func() { RegisterMenu(private, r.handlers.Menu) }, func() { RegisterAPI(private, public, engine, r.handlers.API) }, func() { RegisterPermission(private, r.handlers.Permission) }, func() { RegisterOrganization(private, r.handlers.Organization) }, func() { RegisterDictionary(private, r.handlers.Dictionary) }, func() { RegisterParameter(private, r.handlers.Parameter) }, func() { RegisterAPIToken(private, r.handlers.APIToken) }, func() { RegisterSystemConfig(private, r.handlers.SystemConfig) }, func() { RegisterVersion(private, r.handlers.Version) }, func() { RegisterExport(private, public, r.handlers.Export) }, func() { RegisterAudit(private, public, r.handlers.Audit) }, func() { RegisterTask(private, r.handlers.Task) }, func() { RegisterMedia(private, r.handlers.Media) }, func() { RegisterAnnouncement(private, public, r.handlers.Announcement) }, func() { RegisterEmail(private, r.handlers.Email) }, func() { RegisterIntegrationConfig(private, r.handlers.IntegrationConfig) }, func() { private.POST("/integration/sms/:provider/send", r.handlers.SMS.Send) }, func() { RegisterPayment(private, public, r.handlers.Payment) }, } for _, register := range registrations { register() } }