admin.go 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  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.POST("/user/register", (&admin.User{}).Register)
  17. adg.Use(middleware.AdminAuth())
  18. //FileBind(adg)
  19. UserBind(adg)
  20. GroupBind(adg)
  21. TagBind(adg)
  22. AddressBookBind(adg)
  23. PeerBind(adg)
  24. OauthBind(adg)
  25. LoginLogBind(adg)
  26. AuditBind(adg)
  27. AddressBookCollectionBind(adg)
  28. AddressBookCollectionRuleBind(adg)
  29. UserTokenBind(adg)
  30. rs := &admin.Rustdesk{}
  31. adg.GET("/server-config", rs.ServerConfig)
  32. adg.GET("/app-config", rs.AppConfig)
  33. //访问静态文件
  34. //g.StaticFS("/upload", http.Dir(global.Config.Gin.ResourcesPath+"/upload"))
  35. }
  36. func LoginBind(rg *gin.RouterGroup) {
  37. cont := &admin.Login{}
  38. rg.POST("/login", cont.Login)
  39. rg.POST("/logout", cont.Logout)
  40. rg.GET("/login-options", cont.LoginOptions)
  41. rg.POST("/oidc/auth", cont.OidcAuth)
  42. rg.GET("/oidc/auth-query", cont.OidcAuthQuery)
  43. }
  44. func UserBind(rg *gin.RouterGroup) {
  45. aR := rg.Group("/user")
  46. {
  47. cont := &admin.User{}
  48. aR.GET("/current", cont.Current)
  49. aR.POST("/changeCurPwd", cont.ChangeCurPwd)
  50. aR.POST("/myOauth", cont.MyOauth)
  51. aR.POST("/groupUsers", cont.GroupUsers)
  52. }
  53. aRP := rg.Group("/user").Use(middleware.AdminPrivilege())
  54. {
  55. cont := &admin.User{}
  56. aRP.GET("/list", cont.List)
  57. aRP.GET("/detail/:id", cont.Detail)
  58. aRP.POST("/create", cont.Create)
  59. aRP.POST("/update", cont.Update)
  60. aRP.POST("/delete", cont.Delete)
  61. aRP.POST("/changePwd", cont.UpdatePassword)
  62. }
  63. }
  64. func GroupBind(rg *gin.RouterGroup) {
  65. aR := rg.Group("/group").Use(middleware.AdminPrivilege())
  66. {
  67. cont := &admin.Group{}
  68. aR.GET("/list", cont.List)
  69. aR.GET("/detail/:id", cont.Detail)
  70. aR.POST("/create", cont.Create)
  71. aR.POST("/update", cont.Update)
  72. aR.POST("/delete", cont.Delete)
  73. }
  74. }
  75. func TagBind(rg *gin.RouterGroup) {
  76. aR := rg.Group("/tag")
  77. {
  78. cont := &admin.Tag{}
  79. aR.GET("/list", cont.List)
  80. aR.GET("/detail/:id", cont.Detail)
  81. aR.POST("/create", cont.Create)
  82. aR.POST("/update", cont.Update)
  83. aR.POST("/delete", cont.Delete)
  84. }
  85. }
  86. func AddressBookBind(rg *gin.RouterGroup) {
  87. aR := rg.Group("/address_book")
  88. {
  89. cont := &admin.AddressBook{}
  90. aR.GET("/list", cont.List)
  91. aR.GET("/detail/:id", cont.Detail)
  92. aR.POST("/create", cont.Create)
  93. aR.POST("/update", cont.Update)
  94. aR.POST("/delete", cont.Delete)
  95. aR.POST("/shareByWebClient", cont.ShareByWebClient)
  96. arp := aR.Use(middleware.AdminPrivilege())
  97. arp.POST("/batchCreate", cont.BatchCreate)
  98. }
  99. }
  100. func PeerBind(rg *gin.RouterGroup) {
  101. aR := rg.Group("/peer")
  102. {
  103. cont := &admin.Peer{}
  104. aR.GET("/list", cont.List)
  105. aR.GET("/detail/:id", cont.Detail)
  106. aR.POST("/create", cont.Create)
  107. aR.POST("/update", cont.Update)
  108. aR.POST("/delete", cont.Delete)
  109. aR.POST("/simpleData", cont.SimpleData)
  110. arp := aR.Use(middleware.AdminPrivilege())
  111. arp.POST("/batchDelete", cont.BatchDelete)
  112. }
  113. }
  114. func OauthBind(rg *gin.RouterGroup) {
  115. aR := rg.Group("/oauth")
  116. {
  117. cont := &admin.Oauth{}
  118. aR.POST("/confirm", cont.Confirm)
  119. aR.POST("/bind", cont.ToBind)
  120. aR.POST("/bindConfirm", cont.BindConfirm)
  121. aR.POST("/unbind", cont.Unbind)
  122. aR.GET("/info", cont.Info)
  123. }
  124. arp := aR.Use(middleware.AdminPrivilege())
  125. {
  126. cont := &admin.Oauth{}
  127. arp.GET("/list", cont.List)
  128. arp.GET("/detail/:id", cont.Detail)
  129. arp.POST("/create", cont.Create)
  130. arp.POST("/update", cont.Update)
  131. arp.POST("/delete", cont.Delete)
  132. }
  133. }
  134. func LoginLogBind(rg *gin.RouterGroup) {
  135. aR := rg.Group("/login_log")
  136. cont := &admin.LoginLog{}
  137. aR.GET("/list", cont.List)
  138. aR.POST("/delete", cont.Delete)
  139. }
  140. func AuditBind(rg *gin.RouterGroup) {
  141. cont := &admin.Audit{}
  142. aR := rg.Group("/audit_conn").Use(middleware.AdminPrivilege())
  143. aR.GET("/list", cont.ConnList)
  144. aR.POST("/delete", cont.ConnDelete)
  145. afR := rg.Group("/audit_file").Use(middleware.AdminPrivilege())
  146. afR.GET("/list", cont.FileList)
  147. afR.POST("/delete", cont.FileDelete)
  148. }
  149. func AddressBookCollectionBind(rg *gin.RouterGroup) {
  150. aR := rg.Group("/address_book_collection")
  151. {
  152. cont := &admin.AddressBookCollection{}
  153. aR.GET("/list", cont.List)
  154. aR.GET("/detail/:id", cont.Detail)
  155. aR.POST("/create", cont.Create)
  156. aR.POST("/update", cont.Update)
  157. aR.POST("/delete", cont.Delete)
  158. }
  159. }
  160. func AddressBookCollectionRuleBind(rg *gin.RouterGroup) {
  161. aR := rg.Group("/address_book_collection_rule")
  162. {
  163. cont := &admin.AddressBookCollectionRule{}
  164. aR.GET("/list", cont.List)
  165. aR.GET("/detail/:id", cont.Detail)
  166. aR.POST("/create", cont.Create)
  167. aR.POST("/update", cont.Update)
  168. aR.POST("/delete", cont.Delete)
  169. }
  170. }
  171. func UserTokenBind(rg *gin.RouterGroup) {
  172. aR := rg.Group("/user_token").Use(middleware.AdminPrivilege())
  173. cont := &admin.UserToken{}
  174. aR.GET("/list", cont.List)
  175. aR.POST("/delete", cont.Delete)
  176. }
  177. /*
  178. func FileBind(rg *gin.RouterGroup) {
  179. aR := rg.Group("/file")
  180. {
  181. cont := &admin.File{}
  182. aR.POST("/notify", cont.Notify)
  183. aR.OPTIONS("/oss_token", nil)
  184. aR.OPTIONS("/upload", nil)
  185. aR.GET("/oss_token", cont.OssToken)
  186. aR.POST("/upload", cont.Upload)
  187. }
  188. }*/