Yimaru-BackEnd/internal/services/raffle/service.go

46 lines
1.4 KiB
Go

package raffle
import (
"context"
dbgen "github.com/SamuelTariku/FortuneBet-Backend/gen/db"
"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
)
type Service struct {
raffleStore RaffleStore
}
func NewService(raffleStore RaffleStore) *Service {
return &Service{
raffleStore: raffleStore,
}
}
func (s *Service) CreateRaffle(ctx context.Context, raffle domain.CreateRaffle) (domain.Raffle, error) {
return s.raffleStore.CreateRaffle(ctx, raffle)
}
func (s *Service) GetRafflesOfCompany(ctx context.Context, companyID int32) ([]dbgen.Raffle, error) {
return s.GetRafflesOfCompany(ctx, companyID)
}
func (s *Service) UpdateRaffle(ctx context.Context, raffleParams dbgen.UpdateRaffleParams) error {
return s.raffleStore.UpdateRaffle(ctx, raffleParams)
}
func (s *Service) SuspendRaffleTicket(ctx context.Context, raffleID int32) error {
return s.raffleStore.SuspendRaffleTicket(ctx, raffleID)
}
func (s *Service) UnSuspendRaffleTicket(ctx context.Context, raffleID int32) error {
return s.raffleStore.UnSuspendRaffleTicket(ctx, raffleID)
}
func (s *Service) CreateRaffleTicket(ctx context.Context, raffleID, userID int32) (domain.RaffleTicket, error) {
return s.raffleStore.CreateRaffleTicket(ctx, raffleID, userID)
}
func (s *Service) GetUserRaffleTickets(ctx context.Context, userID int32) ([]domain.RaffleTicketRes, error) {
return s.raffleStore.GetUserRaffleTickets(ctx, userID)
}