32 lines
1.1 KiB
Go
32 lines
1.1 KiB
Go
package routes
|
|
|
|
import (
|
|
"enaklo-pos-be/internal/handlers/http"
|
|
"enaklo-pos-be/internal/handlers/http/customerauth"
|
|
"enaklo-pos-be/internal/middlewares"
|
|
|
|
"enaklo-pos-be/internal/app"
|
|
"enaklo-pos-be/internal/repository"
|
|
"enaklo-pos-be/internal/services"
|
|
)
|
|
|
|
func RegisterCustomerRoutes(app *app.Server, serviceManager *services.ServiceManagerImpl,
|
|
repoManager *repository.RepoManagerImpl) {
|
|
approute := app.Group("/api/v1/customer")
|
|
|
|
authMiddleware := middlewares.CustomerAuthorizationMiddleware(repoManager.Crypto)
|
|
optionlMiddleWare := middlewares.OptionalCustomerAuthorizationMiddleware(repoManager.Crypto)
|
|
|
|
serverRoutes := []HTTPHandlerRoutes{
|
|
customerauth.NewAuthHandler(serviceManager.AuthV2Svc, serviceManager.MemberRegistrationSvc),
|
|
http.NewMenuHandler(serviceManager.ProductV2Svc, serviceManager.InProgressSvc),
|
|
http.NewCustomerOrderHandler(serviceManager.OrderV2Svc),
|
|
}
|
|
|
|
for _, handler := range serverRoutes {
|
|
handler.Route(approute, authMiddleware)
|
|
}
|
|
|
|
http.NewCustomerUndianHandler(serviceManager.UndianSvc).Route(approute, optionlMiddleWare)
|
|
}
|