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) AddSportRaffleFilter(ctx context.Context, raffleID int32, sportID, leagueID int64) error { return s.raffleStore.AddSportRaffleFilter(ctx, raffleID, sportID, leagueID) } func (s *Service) DeleteRaffle(ctx context.Context, raffleID int32) (domain.Raffle, error) { return s.raffleStore.DeleteRaffle(ctx, raffleID) } func (s *Service) GetRafflesOfCompany(ctx context.Context, companyID int32) ([]dbgen.Raffle, error) { return s.raffleStore.GetRafflesOfCompany(ctx, companyID) } func (s *Service) GetRaffleStanding(ctx context.Context, raffleID, limit int32) ([]domain.RaffleStanding, error) { return s.raffleStore.GetRaffleStanding(ctx, raffleID, limit) } func (s *Service) CreateRaffleWinner(ctx context.Context, raffleWinnerParams domain.RaffleWinnerParams) error { return s.raffleStore.CreateRaffleWinner(ctx, raffleWinnerParams) } func (s *Service) SetRaffleComplete(ctx context.Context, raffleID int32) error { return s.raffleStore.SetRaffleComplete(ctx, raffleID) } func (s *Service) CreateRaffleTicket(ctx context.Context, raffleTicketParams domain.CreateRaffleTicket) (domain.RaffleTicket, error) { return s.raffleStore.CreateRaffleTicket(ctx, raffleTicketParams) } func (s *Service) GetUserRaffleTickets(ctx context.Context, userID int32) ([]domain.RaffleTicketRes, error) { return s.raffleStore.GetUserRaffleTickets(ctx, userID) } func (s *Service) SuspendRaffleTicket(ctx context.Context, raffleTicketID int32) error { return s.raffleStore.SuspendRaffleTicket(ctx, raffleTicketID) } func (s *Service) UnSuspendRaffleTicket(ctx context.Context, raffleID int32) error { return s.raffleStore.UnSuspendRaffleTicket(ctx, raffleID) }