tariffs/internal/initialize/controller.go
2024-07-25 14:49:50 +03:00

47 lines
1.4 KiB
Go

package initialize
import (
"go.uber.org/zap"
"hub_admin_backend_service/internal/controller/middleware"
"hub_admin_backend_service/internal/controller/privilege_external"
"hub_admin_backend_service/internal/controller/privilege_internal"
"hub_admin_backend_service/internal/controller/tariff_external"
"hub_admin_backend_service/internal/controller/tariff_internal"
)
type ControllerDeps struct {
Logger *zap.Logger
Repos *Repository
MW *middleware.MiddleWare
}
type Controller struct {
PrivilegeInternal *privilege_internal.PrivilegeInternal
PrivilegeExternal *privilege_external.PrivilegeExternal
TariffInternal *tariff_internal.TariffInternal
TariffExternal *tariff_external.TariffExternal
}
func NewControllers(deps ControllerDeps) *Controller {
return &Controller{
PrivilegeInternal: privilege_internal.NewPrivilegeInternal(privilege_internal.Deps{
Repo: deps.Repos.PrivilegeRepo,
Logger: deps.Logger,
}),
PrivilegeExternal: privilege_external.NewPrivilegeExternal(privilege_external.Deps{
Repo: deps.Repos.PrivilegeRepo,
Logger: deps.Logger,
}),
TariffInternal: tariff_internal.NewTariffInternal(tariff_internal.Deps{
Logger: deps.Logger,
Repo: deps.Repos.TariffRepo,
MiddleWare: deps.MW,
}),
TariffExternal: tariff_external.NewTariffExternal(tariff_external.Deps{
Logger: deps.Logger,
Repo: deps.Repos.TariffRepo,
MiddleWare: deps.MW,
}),
}
}