46 lines
1.2 KiB
Go
46 lines
1.2 KiB
Go
package wallet
|
|
|
|
import (
|
|
"log/slog"
|
|
|
|
"github.com/SamuelTariku/FortuneBet-Backend/internal/services/kafka"
|
|
notificationservice "github.com/SamuelTariku/FortuneBet-Backend/internal/services/notification"
|
|
"github.com/SamuelTariku/FortuneBet-Backend/internal/services/user"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type Service struct {
|
|
// approvalStore ApprovalStore
|
|
walletStore WalletStore
|
|
transferStore TransferStore
|
|
directDepositStore DirectDepositStore
|
|
notificationSvc *notificationservice.Service
|
|
userSvc *user.Service
|
|
mongoLogger *zap.Logger
|
|
logger *slog.Logger
|
|
kafkaProducer *kafka.Producer
|
|
}
|
|
|
|
func NewService(
|
|
walletStore WalletStore,
|
|
transferStore TransferStore,
|
|
directDepositStore DirectDepositStore,
|
|
notificationSvc *notificationservice.Service,
|
|
userSvc *user.Service,
|
|
mongoLogger *zap.Logger,
|
|
logger *slog.Logger,
|
|
kafkaProducer *kafka.Producer,
|
|
) *Service {
|
|
return &Service{
|
|
walletStore: walletStore,
|
|
transferStore: transferStore,
|
|
directDepositStore: directDepositStore,
|
|
// approvalStore: approvalStore,
|
|
notificationSvc: notificationSvc,
|
|
userSvc: userSvc,
|
|
mongoLogger: mongoLogger,
|
|
logger: logger,
|
|
kafkaProducer: kafkaProducer,
|
|
}
|
|
}
|