90 lines
3.3 KiB
Go
90 lines
3.3 KiB
Go
package router
|
|
|
|
import (
|
|
"campaign-pool-be/app/module/activity_logs"
|
|
"campaign-pool-be/app/module/campaign_destinations"
|
|
"campaign-pool-be/app/module/campaign_types"
|
|
"campaign-pool-be/app/module/campaigns"
|
|
"campaign-pool-be/app/module/campaign_files"
|
|
"campaign-pool-be/app/module/custom_static_pages"
|
|
"campaign-pool-be/app/module/user_levels"
|
|
"campaign-pool-be/app/module/user_role_accesses"
|
|
"campaign-pool-be/app/module/user_roles"
|
|
"campaign-pool-be/app/module/users"
|
|
"campaign-pool-be/config/config"
|
|
_ "campaign-pool-be/docs/swagger"
|
|
|
|
swagger "github.com/arsmn/fiber-swagger/v2"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
type Router struct {
|
|
App fiber.Router
|
|
Cfg *config.Config
|
|
|
|
ActivityLogsRouter *activity_logs.ActivityLogsRouter
|
|
CustomStaticPagesRouter *custom_static_pages.CustomStaticPagesRouter
|
|
UserLevelsRouter *user_levels.UserLevelsRouter
|
|
UserRoleAccessesRouter *user_role_accesses.UserRoleAccessesRouter
|
|
UserRolesRouter *user_roles.UserRolesRouter
|
|
UsersRouter *users.UsersRouter
|
|
CampaignTypesRouter *campaign_types.CampaignTypesRouter
|
|
CampaignDestinationsRouter *campaign_destinations.CampaignDestinationsRouter
|
|
CampaignsRouter *campaigns.CampaignsRouter
|
|
CampaignFilesRouter *campaign_files.CampaignFilesRouter
|
|
}
|
|
|
|
func NewRouter(
|
|
fiber *fiber.App,
|
|
cfg *config.Config,
|
|
|
|
activityLogsRouter *activity_logs.ActivityLogsRouter,
|
|
customStaticPagesRouter *custom_static_pages.CustomStaticPagesRouter,
|
|
userLevelsRouter *user_levels.UserLevelsRouter,
|
|
userRoleAccessesRouter *user_role_accesses.UserRoleAccessesRouter,
|
|
userRolesRouter *user_roles.UserRolesRouter,
|
|
usersRouter *users.UsersRouter,
|
|
campaignTypesRouter *campaign_types.CampaignTypesRouter,
|
|
campaignDestinationsRouter *campaign_destinations.CampaignDestinationsRouter,
|
|
campaignsRouter *campaigns.CampaignsRouter,
|
|
campaignFilesRouter *campaign_files.CampaignFilesRouter,
|
|
) *Router {
|
|
return &Router{
|
|
App: fiber,
|
|
Cfg: cfg,
|
|
ActivityLogsRouter: activityLogsRouter,
|
|
CustomStaticPagesRouter: customStaticPagesRouter,
|
|
UserLevelsRouter: userLevelsRouter,
|
|
UserRoleAccessesRouter: userRoleAccessesRouter,
|
|
UserRolesRouter: userRolesRouter,
|
|
UsersRouter: usersRouter,
|
|
CampaignTypesRouter: campaignTypesRouter,
|
|
CampaignDestinationsRouter: campaignDestinationsRouter,
|
|
CampaignsRouter: campaignsRouter,
|
|
CampaignFilesRouter: campaignFilesRouter,
|
|
}
|
|
}
|
|
|
|
// Register routes
|
|
func (r *Router) Register() {
|
|
// Test Routes
|
|
r.App.Get("/ping", func(c *fiber.Ctx) error {
|
|
return c.SendString("Pong! 👋")
|
|
})
|
|
|
|
//Swagger Documentation
|
|
r.App.Get("/swagger/*", swagger.HandlerDefault)
|
|
|
|
// Register routes of modules
|
|
r.ActivityLogsRouter.RegisterActivityLogsRoutes()
|
|
r.CustomStaticPagesRouter.RegisterCustomStaticPagesRoutes()
|
|
r.UserLevelsRouter.RegisterUserLevelsRoutes()
|
|
r.UserRoleAccessesRouter.RegisterUserRoleAccessesRoutes()
|
|
r.UsersRouter.RegisterUsersRoutes()
|
|
r.UserRolesRouter.RegisterUserRolesRoutes()
|
|
r.CampaignTypesRouter.RegisterCampaignTypesRoutes()
|
|
r.CampaignDestinationsRouter.RegisterCampaignDestinationsRoutes()
|
|
r.CampaignsRouter.RegisterCampaignsRoutes()
|
|
r.CampaignFilesRouter.RegisterCampaignFilesRoutes()
|
|
}
|