verification/internal/initialize/controllers.go

33 lines
1.1 KiB
Go

package initialize
import (
"gitea.pena/PenaSide/customer/pkg/customer_clients"
"gitea.pena/PenaSide/verification/internal/client"
"gitea.pena/PenaSide/verification/internal/controllers/admin"
"gitea.pena/PenaSide/verification/internal/controllers/admin/health_check"
"gitea.pena/PenaSide/verification/internal/controllers/user"
)
type Controllers struct {
VerificationAdmin *admin.VerifyAdminController
VerificationUser *user.VerifyUserController
HealthCheck *health_check.HealthCheck
}
func NewControllers(reps *Repositories, telegram *client.Telegram, customer *customer_clients.CustomersClient) *Controllers {
return &Controllers{
VerificationAdmin: admin.NewVerificationAdminController(admin.VerifyAdminControllerDeps{
Repository: reps.Verification,
Customer: customer,
}),
VerificationUser: user.NewVerificationUserController(user.VerifyUserControllerDeps{
Repository: reps.Verification,
Telegram: telegram,
}),
HealthCheck: health_check.NewHealthCheck(health_check.Deps{
TgClient: telegram,
Repository: reps.Verification,
}),
}
}