router.go 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. package router
  2. import (
  3. "github.com/gin-gonic/gin"
  4. mhayaGin "github.com/mhaya/components/gin"
  5. cfacade "github.com/mhaya/facade"
  6. "github.com/mhaya/game/game_cluster/nodes/webadmin/controller"
  7. )
  8. type Controller struct {
  9. mhayaGin.BaseController
  10. }
  11. func (c *Controller) Init() {
  12. c.SetRouter()
  13. }
  14. // CreateUserController 创建用户的控制
  15. func (c *Controller) CreateUserController() {
  16. // parentActor := &user.User{}
  17. // c.CreateActor(parentActor.AliasID(), parentActor)
  18. }
  19. func (c *Controller) CreateActor(id string, handler cfacade.IActorHandler) {
  20. // system := bcwinActor.NewSystem()
  21. // system.SetApp(c.App)
  22. // system.CreateActor(id, handler)
  23. }
  24. // SetRouter 设置路由
  25. func (c *Controller) SetRouter() {
  26. u := c.Group("/v1")
  27. uu := u.Group("/admin")
  28. login := uu.Group("/user/login")
  29. login.Use(loginRecordMiddleware(c.App))
  30. login.POST("", controller.NewAdmin().Login)
  31. c.InitApiRouter(uu)
  32. }
  33. func (c *Controller) InitApiRouter(u *gin.RouterGroup) {
  34. u.Use(Auth(c.App))
  35. nodeId := c.App.NodeId()
  36. // 综合统计
  37. u.POST("/statistics/overview", controller.NewSynthesis(nodeId).Overview)
  38. // 活动统计 目前没有活动模块
  39. u.POST("/statistics/activity", controller.NewSynthesis(nodeId).Activity)
  40. // 用户统计
  41. u.POST("/statistics/user/list", controller.NewSynthesis(nodeId).UserList)
  42. u.POST("/user/log/daily", controller.NewSynthesis(nodeId).FindUserLogDaily)
  43. // 玩家相关信息
  44. u.POST("/player/list", controller.NewPlayerManage().GetPlayerlist)
  45. u.POST("/player/info", controller.NewPlayerManage().GetPlayerInfo)
  46. u.POST("/player/rewardList", controller.NewPlayerManage().GetRewardList)
  47. // 转盘统计
  48. u.POST("/statistics/turntable", controller.NewSynthesis(nodeId).Turntable)
  49. // 资产统计
  50. u.POST("/statistics/assets", controller.NewSynthesis(nodeId).Assets)
  51. u.POST("/statistics/assetsRecord", controller.NewSynthesis(nodeId).AssetsRecord)
  52. // 邀请统计
  53. u.POST("/statistics/invite", controller.NewSynthesis(nodeId).Invite)
  54. // 任务完成度统计
  55. u.POST("/statistics/taskCompletion", controller.NewSynthesis(nodeId).TaskCompletion)
  56. // 用户行为检测
  57. u.POST("/user/behaviorMonitoring", controller.NewSynthesis(nodeId).BehaviorMonitoring)
  58. // 后台操作记录
  59. u.POST("/user/log", controller.NewSynthesis(nodeId).Records)
  60. // 活跃统计
  61. u.POST("/statistics/active", controller.NewSynthesis(nodeId).Active)
  62. u.POST("/user/retention", controller.NewSynthesis(nodeId).FindUserRetention)
  63. u.POST("/user/country", controller.NewSynthesis(nodeId).FindUserCountryCount)
  64. u.POST("/user/level", controller.NewSynthesis(nodeId).FindUserLevel)
  65. // 提现统计
  66. u.POST("/user/withdrawal", controller.NewSynthesis(nodeId).FindWithdrawal)
  67. u.POST("/user/withdrawal/export", controller.NewSynthesis(nodeId).WithdrawalExport)
  68. u.POST("/user/withdrawal/status", controller.NewSynthesis(nodeId).WithdrawalStatus)
  69. u.POST("/user/withdrawal/status_batch", controller.NewSynthesis(nodeId).WithdrawalStatusBatch)
  70. // 账号管理
  71. u.POST("/user/changePassword", controller.NewAdmin().ChangePassword)
  72. u.POST("/user/add", controller.NewAdmin().Add)
  73. u.POST("/user/del", controller.NewAdmin().Del)
  74. u.POST("/user/find", controller.NewAdmin().FindAll)
  75. u.POST("/user/update", controller.NewAdmin().UpdateStatus)
  76. u.POST("/user/serverStatus", controller.NewAdmin().GetServerStatus)
  77. // 账号角色管理
  78. u.POST("/role/add", controller.NewRole().Add)
  79. u.POST("/role/update", controller.NewRole().Update)
  80. u.POST("/role/del", controller.NewRole().Del)
  81. u.POST("/role/list", controller.NewRole().List)
  82. u.POST("/role/access/add", controller.NewRole().AddAccess)
  83. u.POST("/role/access/del", controller.NewRole().DelAccess)
  84. u.POST("/role/access/list", controller.NewRole().ListAccess)
  85. u.POST("/role/access/update", controller.NewRole().UpdateAccess)
  86. u.POST("/role/role_access/add", controller.NewRole().AddRoleAccess)
  87. u.POST("/role/role_access/del", controller.NewRole().DelRoleAccess)
  88. u.POST("/role/role_access/list", controller.NewRole().GetRoleAccessList)
  89. u.POST("/role/role_access/update", controller.NewRole().UpdateRoleAccess)
  90. u.POST("/role/admin_unbind_role", controller.NewRole().AdminUnBindRole)
  91. u.POST("/role/admin_bind_role", controller.NewRole().AdminBindRole)
  92. u.POST("/role/admin_role_info", controller.NewRole().GetAdminRole)
  93. // IP白名单
  94. u.POST("/whitelist/add", controller.NewWhitelist().AddWhitelist)
  95. u.POST("/whitelist/remove", controller.NewWhitelist().RemoveWhitelist)
  96. u.POST("/whitelist/list", controller.NewWhitelist().GetWhitelist)
  97. // 风控
  98. u.POST("/riskControl/multipleFingerprintInIp", controller.NewRiskControl().MultipleFingerprintInIp)
  99. u.POST("/riskControl/multipleAddressInTg", controller.NewRiskControl().MultipleAddressInTg)
  100. u.POST("/riskControl/multipleTgInAddress", controller.NewRiskControl().MultipleTgInAddress)
  101. u.POST("/riskControl/multipleTgInIp", controller.NewRiskControl().MultipleTgInIp)
  102. }
  103. // func (c *Controller) InitMdb() {
  104. // MdbAdmin, _ = mdb.InitializeMongoDB()
  105. // }