customer/internal/initialize/controllers.go

56 lines
1.9 KiB
Go
Raw Normal View History

2023-05-16 01:12:07 +00:00
package initialize
import (
2023-05-17 20:27:09 +00:00
"go.uber.org/zap"
2023-06-13 22:41:33 +00:00
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/grpc/payment"
2023-06-13 12:19:51 +00:00
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/rest/account"
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/rest/cart"
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/rest/currency"
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/rest/history"
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/controller/rest/wallet"
2023-05-16 01:12:07 +00:00
)
type ControllersDeps struct {
2023-05-17 20:27:09 +00:00
Logger *zap.Logger
2023-05-16 01:12:07 +00:00
Services *Services
}
type Controllers struct {
2023-05-19 04:50:40 +00:00
AccountController *account.Controller
CurrencyController *currency.Controller
2023-05-19 07:21:45 +00:00
CartController *cart.Controller
2023-05-23 15:33:23 +00:00
HistoryController *history.Controller
2023-05-23 15:42:22 +00:00
WalletController *wallet.Controller
2023-06-13 22:41:33 +00:00
PaymentController *payment.Controller
2023-05-16 01:12:07 +00:00
}
2023-06-13 22:51:34 +00:00
func NewControllers(deps ControllersDeps) *Controllers {
2023-05-17 20:27:09 +00:00
return &Controllers{
2023-06-13 22:51:34 +00:00
AccountController: account.New(account.Deps{
2023-05-17 20:27:09 +00:00
Logger: deps.Logger,
Service: deps.Services.AccountService,
}),
2023-06-13 22:51:34 +00:00
CurrencyController: currency.New(currency.Deps{
2023-05-19 04:50:40 +00:00
Logger: deps.Logger,
CurrencyService: deps.Services.CurrencyService,
}),
2023-06-13 22:51:34 +00:00
CartController: cart.New(cart.Deps{
2023-05-19 07:21:45 +00:00
Logger: deps.Logger,
CartService: deps.Services.CartService,
}),
2023-06-13 22:51:34 +00:00
HistoryController: history.New(history.Deps{
2023-05-23 15:33:23 +00:00
Logger: deps.Logger,
HistoryService: deps.Services.HistoryService,
}),
WalletController: wallet.New(wallet.Deps{
2023-06-13 22:41:33 +00:00
Logger: deps.Logger,
WalletService: deps.Services.WalletService,
PaymentService: deps.Services.PaymentService,
}),
PaymentController: payment.New(payment.Deps{
Logger: deps.Logger,
PaymentCallbackService: deps.Services.PaymentCallbackService,
2023-05-23 15:42:22 +00:00
}),
2023-05-17 20:27:09 +00:00
}
2023-05-16 01:12:07 +00:00
}