59 lines
1.9 KiB
Go
59 lines
1.9 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) 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)
|
|
}
|