28 lines
1.4 KiB
Go
28 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 RaffleStore interface {
|
|
CreateRaffle(ctx context.Context, raffle domain.CreateRaffle) (domain.Raffle, error)
|
|
AddSportRaffleFilter(ctx context.Context, raffleID int32, sportID, leagueID int64) error
|
|
DeleteRaffle(ctx context.Context, raffleID int32) (domain.Raffle, error)
|
|
GetRafflesOfCompany(ctx context.Context, companyID int32) ([]dbgen.Raffle, error)
|
|
GetRaffleStanding(ctx context.Context, raffleID, limit int32) ([]domain.RaffleStanding, error)
|
|
CreateRaffleWinner(ctx context.Context, raffleWinnerParams domain.RaffleWinnerParams) error
|
|
SetRaffleComplete(ctx context.Context, raffleID int32) error
|
|
CheckValidSportRaffleFilter(ctx context.Context, raffleID int32, sportID, leagueID int64) (bool, error)
|
|
CheckSportRaffleHasFilter(ctx context.Context, raffleID int32) (bool, error)
|
|
|
|
CreateRaffleTicket(ctx context.Context, raffleTicketParams domain.CreateRaffleTicket) (domain.RaffleTicket, error)
|
|
GetUserRaffleTickets(ctx context.Context, userID int32) ([]domain.RaffleTicketRes, error)
|
|
SuspendRaffleTicket(ctx context.Context, raffleTicketID int32) error
|
|
UnSuspendRaffleTicket(ctx context.Context, raffleID int32) error
|
|
GetRaffleTicketCount(ctx context.Context, raffleID, userID int32) (int64, error)
|
|
GetRaffleTicketLimit(ctx context.Context, raffleID int32) (int32, error)
|
|
}
|