admin.go 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. package router
  2. import (
  3. _ "Gwen/docs/admin"
  4. "Gwen/http/controller/admin"
  5. "Gwen/http/middleware"
  6. "github.com/gin-gonic/gin"
  7. swaggerFiles "github.com/swaggo/files"
  8. ginSwagger "github.com/swaggo/gin-swagger"
  9. )
  10. func Init(g *gin.Engine) {
  11. //swagger
  12. //g.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
  13. g.GET("/admin/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler, ginSwagger.InstanceName("admin")))
  14. adg := g.Group("/api/admin")
  15. LoginBind(adg)
  16. adg.Use(middleware.AdminAuth())
  17. //FileBind(adg)
  18. UserBind(adg)
  19. GroupBind(adg)
  20. TagBind(adg)
  21. AddressBookBind(adg)
  22. PeerBind(adg)
  23. OauthBind(adg)
  24. LoginLogBind(adg)
  25. rs := &admin.Rustdesk{}
  26. adg.GET("/server-config", rs.ServerConfig)
  27. //访问静态文件
  28. //g.StaticFS("/upload", http.Dir(global.Config.Gin.ResourcesPath+"/upload"))
  29. }
  30. func LoginBind(rg *gin.RouterGroup) {
  31. cont := &admin.Login{}
  32. rg.POST("/login", cont.Login)
  33. rg.POST("/logout", cont.Logout)
  34. }
  35. func UserBind(rg *gin.RouterGroup) {
  36. aR := rg.Group("/user")
  37. {
  38. cont := &admin.User{}
  39. aR.GET("/current", cont.Current)
  40. aR.POST("/changeCurPwd", cont.ChangeCurPwd)
  41. aR.POST("/myOauth", cont.MyOauth)
  42. }
  43. aRP := rg.Group("/user").Use(middleware.AdminPrivilege())
  44. {
  45. cont := &admin.User{}
  46. aRP.GET("/list", cont.List)
  47. aRP.GET("/detail/:id", cont.Detail)
  48. aRP.POST("/create", cont.Create)
  49. aRP.POST("/update", cont.Update)
  50. aRP.POST("/delete", cont.Delete)
  51. aRP.POST("/changePwd", cont.UpdatePassword)
  52. }
  53. }
  54. func GroupBind(rg *gin.RouterGroup) {
  55. aR := rg.Group("/group").Use(middleware.AdminPrivilege())
  56. {
  57. cont := &admin.Group{}
  58. aR.GET("/list", cont.List)
  59. aR.GET("/detail/:id", cont.Detail)
  60. aR.POST("/create", cont.Create)
  61. aR.POST("/update", cont.Update)
  62. aR.POST("/delete", cont.Delete)
  63. }
  64. }
  65. func TagBind(rg *gin.RouterGroup) {
  66. aR := rg.Group("/tag")
  67. {
  68. cont := &admin.Tag{}
  69. aR.GET("/list", cont.List)
  70. aR.GET("/detail/:id", cont.Detail)
  71. aR.POST("/create", cont.Create)
  72. aR.POST("/update", cont.Update)
  73. aR.POST("/delete", cont.Delete)
  74. }
  75. }
  76. func AddressBookBind(rg *gin.RouterGroup) {
  77. aR := rg.Group("/address_book")
  78. {
  79. cont := &admin.AddressBook{}
  80. aR.GET("/list", cont.List)
  81. aR.GET("/detail/:id", cont.Detail)
  82. aR.POST("/create", cont.Create)
  83. aR.POST("/update", cont.Update)
  84. aR.POST("/delete", cont.Delete)
  85. aR.POST("/shareByWebClient", cont.ShareByWebClient)
  86. arp := aR.Use(middleware.AdminPrivilege())
  87. arp.POST("/batchCreate", cont.BatchCreate)
  88. }
  89. }
  90. func PeerBind(rg *gin.RouterGroup) {
  91. aR := rg.Group("/peer")
  92. {
  93. cont := &admin.Peer{}
  94. aR.GET("/list", cont.List)
  95. aR.GET("/detail/:id", cont.Detail)
  96. aR.POST("/create", cont.Create)
  97. aR.POST("/update", cont.Update)
  98. aR.POST("/delete", cont.Delete)
  99. arp := aR.Use(middleware.AdminPrivilege())
  100. arp.POST("/batchDelete", cont.BatchDelete)
  101. }
  102. }
  103. func OauthBind(rg *gin.RouterGroup) {
  104. aR := rg.Group("/oauth")
  105. {
  106. cont := &admin.Oauth{}
  107. aR.POST("/confirm", cont.Confirm)
  108. aR.POST("/bind", cont.ToBind)
  109. aR.POST("/bindConfirm", cont.BindConfirm)
  110. aR.POST("/unbind", cont.Unbind)
  111. aR.GET("/info", cont.Info)
  112. }
  113. arp := aR.Use(middleware.AdminPrivilege())
  114. {
  115. cont := &admin.Oauth{}
  116. arp.GET("/list", cont.List)
  117. arp.GET("/detail/:id", cont.Detail)
  118. arp.POST("/create", cont.Create)
  119. arp.POST("/update", cont.Update)
  120. arp.POST("/delete", cont.Delete)
  121. }
  122. }
  123. func LoginLogBind(rg *gin.RouterGroup) {
  124. aR := rg.Group("/login_log")
  125. cont := &admin.LoginLog{}
  126. aR.GET("/list", cont.List)
  127. aR.POST("/delete", cont.Delete)
  128. }
  129. /*
  130. func FileBind(rg *gin.RouterGroup) {
  131. aR := rg.Group("/file")
  132. {
  133. cont := &admin.File{}
  134. aR.POST("/notify", cont.Notify)
  135. aR.OPTIONS("/oss_token", nil)
  136. aR.OPTIONS("/upload", nil)
  137. aR.GET("/oss_token", cont.OssToken)
  138. aR.POST("/upload", cont.Upload)
  139. }
  140. }*/