routes.go 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package router
  2. import (
  3. "github.com/iris-contrib/middleware/cors"
  4. "github.com/kataras/iris/v12"
  5. "github.com/kataras/iris/v12/mvc"
  6. "xps/bootstrap"
  7. "xps/service/system"
  8. "xps/web/controllers"
  9. "xps/web/middleware"
  10. )
  11. func Configure(b *bootstrap.Bootstrapper) {
  12. crs := cors.New(cors.Options{
  13. AllowedOrigins: []string{"*"}, // allows everything, use that to change the hosts.
  14. AllowedMethods: []string{"PUT", "PATCH", "GET", "POST", "OPTIONS", "DELETE"},
  15. AllowedHeaders: []string{"*"},
  16. ExposedHeaders: []string{"Accept", "Content-Type", "Content-Length", "Accept-Encoding", "X-CSRF-Token", "Authorization"},
  17. AllowCredentials: true,
  18. })
  19. // Static Resource
  20. b.HandleDir("/", "./web/public")
  21. // Login
  22. loginService := system.NewLoginService()
  23. loginApp := mvc.New(b.Party("/", crs).AllowMethods(iris.MethodOptions))
  24. loginApp.Register(loginService)
  25. loginApp.Handle(new(controllers.LoginController))
  26. // role
  27. sys := b.Party("/sys", crs).AllowMethods(iris.MethodOptions)
  28. {
  29. sys.Use(middleware.AuthToken)
  30. // Role
  31. roleService := system.NewRoleService()
  32. roleApp := mvc.New(sys.Party("/role"))
  33. roleApp.Register(roleService)
  34. roleApp.Handle(new(controllers.RoleController))
  35. }
  36. // Company Profile
  37. company := b.Party("/company", crs).AllowMethods(iris.MethodOptions)
  38. {
  39. company.Use(middleware.AuthToken)
  40. companyProfileService := system.NewCompanyProfileService()
  41. companyProfileApp := mvc.New(company.Party("/profile"))
  42. companyProfileApp.Register(companyProfileService)
  43. companyProfileApp.Handle(new(controllers.CompanyProfileController))
  44. }
  45. // Group
  46. group := b.Party("/group", crs).AllowMethods(iris.MethodOptions)
  47. {
  48. group.Use(middleware.AuthToken)
  49. groupService := system.NewGroupService()
  50. groupApp := mvc.New(group.Party(""))
  51. groupApp.Register(groupService)
  52. groupApp.Handle(new(controllers.GroupController))
  53. }
  54. // User
  55. user := b.Party("/user", crs).AllowMethods(iris.MethodOptions)
  56. {
  57. user.Use(middleware.AuthToken)
  58. // user
  59. userService := system.NewUserService()
  60. userApp := mvc.New(user.Party(""))
  61. userApp.Register(userService)
  62. userApp.Handle(new(controllers.UserController))
  63. // Permit
  64. appPermitService := system.NewAppPermitService()
  65. appPermitApp := mvc.New(user.Party("/permit"))
  66. appPermitApp.Register(appPermitService)
  67. appPermitApp.Handle(new(controllers.AppPermitController))
  68. }
  69. // Position
  70. position := b.Party("/position", crs).AllowMethods(iris.MethodOptions)
  71. {
  72. position.Use(middleware.AuthToken)
  73. positionService := system.NewPositionService()
  74. positionApp := mvc.New(position.Party(""))
  75. positionApp.Register(positionService)
  76. positionApp.Handle(new(controllers.PositionController))
  77. }
  78. // GroupCat
  79. groupCat := b.Party("/group", crs).AllowMethods(iris.MethodOptions)
  80. {
  81. groupCat.Use(middleware.AuthToken)
  82. groupCatService := system.NewGroupCatService()
  83. groupCatApp := mvc.New(groupCat.Party("/cat"))
  84. groupCatApp.Register(groupCatService)
  85. groupCatApp.Handle(new(controllers.GroupCatController))
  86. }
  87. // AppCat
  88. app := b.Party("/app", crs).AllowMethods(iris.MethodOptions)
  89. {
  90. app.Use(middleware.AuthToken)
  91. appCatService := system.NewAppCatService()
  92. appCatApp := mvc.New(app.Party("/cat"))
  93. appCatApp.Register(appCatService)
  94. appCatApp.Handle(new(controllers.AppCatController))
  95. }
  96. // TaskCat
  97. taskCat := b.Party("/task", crs).AllowMethods(iris.MethodOptions)
  98. {
  99. taskCat.Use(middleware.AuthToken)
  100. taskCatService := system.NewTaskCatService()
  101. taskCatApp := mvc.New(taskCat.Party("/cat"))
  102. taskCatApp.Register(taskCatService)
  103. taskCatApp.Handle(new(controllers.TaskCatController))
  104. }
  105. // EntCat
  106. entCat := b.Party("/ent", crs).AllowMethods(iris.MethodOptions)
  107. {
  108. entCat.Use(middleware.AuthToken)
  109. entCatService := system.NewEntCatService()
  110. entCatApp := mvc.New(entCat.Party("/cat"))
  111. entCatApp.Register(entCatService)
  112. entCatApp.Handle(new(controllers.EntCatController))
  113. }
  114. // PartnerCat
  115. partnerCat := b.Party("/partner", crs).AllowMethods(iris.MethodOptions)
  116. {
  117. partnerCat.Use(middleware.AuthToken)
  118. partnerCatService := system.NewPartnerCatService()
  119. partnerCatApp := mvc.New(partnerCat.Party("/cat"))
  120. partnerCatApp.Register(partnerCatService)
  121. partnerCatApp.Handle(new(controllers.PartnerCatController))
  122. }
  123. }