routes.go 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  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/daas"
  8. "xps/service/model"
  9. "xps/service/paas"
  10. "xps/service/system"
  11. "xps/web/controllers"
  12. "xps/web/middleware"
  13. )
  14. func Configure(b *bootstrap.Bootstrapper) {
  15. crs := cors.New(cors.Options{
  16. AllowedOrigins: []string{"*"},
  17. AllowedMethods: []string{"PUT", "PATCH", "GET", "POST", "OPTIONS", "DELETE"},
  18. AllowedHeaders: []string{"*"},
  19. ExposedHeaders: []string{"Accept", "Content-Type", "Content-Length", "Accept-Encoding", "X-CSRF-Token", "Authorization"},
  20. AllowCredentials: true,
  21. })
  22. // Static Resource
  23. b.HandleDir("/", "./public")
  24. // Login
  25. loginService := system.NewLoginService()
  26. loginApp := mvc.New(b.Party("/", crs).AllowMethods(iris.MethodOptions))
  27. loginApp.Register(loginService)
  28. loginApp.Handle(new(controllers.LoginController))
  29. // role
  30. sys := b.Party("/sys", crs).AllowMethods(iris.MethodOptions)
  31. {
  32. sys.Use(middleware.AuthToken)
  33. // Role
  34. roleService := system.NewRoleService()
  35. roleApp := mvc.New(sys.Party("/role"))
  36. roleApp.Register(roleService)
  37. roleApp.Handle(new(controllers.RoleController))
  38. }
  39. // Company Profile
  40. company := b.Party("/company", crs).AllowMethods(iris.MethodOptions)
  41. {
  42. company.Use(middleware.AuthToken)
  43. companyProfileService := system.NewCompanyProfileService()
  44. companyProfileApp := mvc.New(company.Party("/profile"))
  45. companyProfileApp.Register(companyProfileService)
  46. companyProfileApp.Handle(new(controllers.CompanyProfileController))
  47. }
  48. // Group
  49. group := b.Party("/group", crs).AllowMethods(iris.MethodOptions)
  50. {
  51. group.Use(middleware.AuthToken)
  52. groupService := system.NewGroupService()
  53. groupApp := mvc.New(group.Party(""))
  54. groupApp.Register(groupService)
  55. groupApp.Handle(new(controllers.GroupController))
  56. }
  57. // User
  58. user := b.Party("/user", crs).AllowMethods(iris.MethodOptions)
  59. {
  60. user.Use(middleware.AuthToken)
  61. // user
  62. userService := system.NewUserService()
  63. userApp := mvc.New(user.Party(""))
  64. userApp.Register(userService)
  65. userApp.Handle(new(controllers.UserController))
  66. }
  67. // Position
  68. position := b.Party("/position", crs).AllowMethods(iris.MethodOptions)
  69. {
  70. position.Use(middleware.AuthToken)
  71. positionService := system.NewPositionService()
  72. positionApp := mvc.New(position.Party(""))
  73. positionApp.Register(positionService)
  74. positionApp.Handle(new(controllers.PositionController))
  75. }
  76. // GroupCat
  77. groupCat := b.Party("/group", crs).AllowMethods(iris.MethodOptions)
  78. {
  79. groupCat.Use(middleware.AuthToken)
  80. groupCatService := system.NewGroupCatService()
  81. groupCatApp := mvc.New(groupCat.Party("/cat"))
  82. groupCatApp.Register(groupCatService)
  83. groupCatApp.Handle(new(controllers.GroupCatController))
  84. }
  85. // App
  86. app := b.Party("/app", crs).AllowMethods(iris.MethodOptions)
  87. {
  88. app.Use(middleware.AuthToken)
  89. appService := system.NewAppService()
  90. appApp := mvc.New(app.Party(""))
  91. appApp.Register(appService)
  92. appApp.Handle(new(controllers.AppController))
  93. appCatService := system.NewAppCatService()
  94. appCatApp := mvc.New(app.Party("/cat"))
  95. appCatApp.Register(appCatService)
  96. appCatApp.Handle(new(controllers.AppCatController))
  97. appPermitService := system.NewAppPermitService()
  98. appPermitApp := mvc.New(app.Party("/permit"))
  99. appPermitApp.Register(appPermitService)
  100. appPermitApp.Handle(new(controllers.AppPermitController))
  101. }
  102. // TaskCat
  103. taskCat := b.Party("/task", crs).AllowMethods(iris.MethodOptions)
  104. {
  105. taskCat.Use(middleware.AuthToken)
  106. taskCatService := system.NewTaskCatService()
  107. taskCatApp := mvc.New(taskCat.Party("/cat"))
  108. taskCatApp.Register(taskCatService)
  109. taskCatApp.Handle(new(controllers.TaskCatController))
  110. }
  111. // EntCat
  112. entCat := b.Party("/ent", crs).AllowMethods(iris.MethodOptions)
  113. {
  114. entCat.Use(middleware.AuthToken)
  115. entCatService := system.NewEntCatService()
  116. entCatApp := mvc.New(entCat.Party("/cat"))
  117. entCatApp.Register(entCatService)
  118. entCatApp.Handle(new(controllers.EntCatController))
  119. }
  120. // PartnerCat
  121. partnerCat := b.Party("/partner", crs).AllowMethods(iris.MethodOptions)
  122. {
  123. partnerCat.Use(middleware.AuthToken)
  124. partnerCatService := system.NewPartnerCatService()
  125. partnerCatApp := mvc.New(partnerCat.Party("/cat"))
  126. partnerCatApp.Register(partnerCatService)
  127. partnerCatApp.Handle(new(controllers.PartnerCatController))
  128. }
  129. // Model
  130. modelParty := b.Party("/model", crs).AllowMethods(iris.MethodOptions)
  131. {
  132. modelParty.Use(middleware.AuthToken)
  133. modelService := model.NewModelService()
  134. modelApp := mvc.New(modelParty.Party(""))
  135. modelApp.Register(modelService)
  136. modelApp.Handle(new(controllers.ModelController))
  137. objectService := model.NewObjectService()
  138. objectApp := mvc.New(modelParty.Party("/object"))
  139. objectApp.Register(objectService)
  140. objectApp.Handle(new(controllers.ObjectController))
  141. objectAttrService := model.NewObjectAttrService()
  142. objectAttrApp := mvc.New(modelParty.Party("/object/attribute"))
  143. objectAttrApp.Register(objectAttrService)
  144. objectAttrApp.Handle(new(controllers.ObjectAttrController))
  145. }
  146. // DaaS
  147. daasParty := b.Party("/daas", crs).AllowMethods(iris.MethodOptions)
  148. {
  149. daasParty.Use(middleware.AuthToken)
  150. dbTypeService := daas.NewDbTypeService()
  151. dbTypeApp := mvc.New(daasParty.Party("/dbType"))
  152. dbTypeApp.Register(dbTypeService)
  153. dbTypeApp.Handle(new(controllers.DbTypeController))
  154. }
  155. // PaaS
  156. paasParty := b.Party("/paas", crs).AllowMethods(iris.MethodOptions)
  157. {
  158. paasParty.Use(middleware.AuthToken)
  159. moduleService := paas.NewModuleService()
  160. moduleApp := mvc.New(paasParty.Party("/module"))
  161. moduleApp.Register(moduleService)
  162. moduleApp.Handle(new(controllers.ModuleController))
  163. apiService := paas.NewApiService()
  164. apiApp := mvc.New(paasParty.Party("/api"))
  165. apiApp.Register(apiService)
  166. apiApp.Handle(new(controllers.ApiController))
  167. reqService := paas.NewApiReqService()
  168. reqApp := mvc.New(paasParty.Party("/api/request"))
  169. reqApp.Register(reqService)
  170. reqApp.Handle(new(controllers.ApiReqController))
  171. }
  172. }