verification/internal/initialize/controllers.go
2024-12-10 12:04:47 +03:00

32 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/prometheus"
"gitea.pena/PenaSide/verification/internal/controllers/admin/verification_admin"
"gitea.pena/PenaSide/verification/internal/controllers/user"
)
type Controllers struct {
VerificationAdmin *verification_admin.VerifyAdminController
PrometheusAdmin *prometheus.Prometheus
VerificationUser *user.VerifyUserController
}
func NewControllers(reps *Repositories, telegram *client.Telegram, customer *customer_clients.CustomersClient) *Controllers {
return &Controllers{
VerificationAdmin: verification_admin.NewVerificationAdminController(verification_admin.VerifyAdminControllerDeps{
Repository: reps.Verification,
Customer: customer,
}),
PrometheusAdmin: prometheus.NewPrometheus(
reps.Verification,
),
VerificationUser: user.NewVerificationUserController(user.VerifyUserControllerDeps{
Repository: reps.Verification,
Telegram: telegram,
}),
}
}