package repository import ( "context" dbgen "github.com/SamuelTariku/FortuneBet-Backend/gen/db" "github.com/SamuelTariku/FortuneBet-Backend/internal/domain" "github.com/jackc/pgx/v5/pgtype" ) func (s *Store) CreateTicket(ctx context.Context, amount int32, totalOdds int32) (domain.Ticket, error) { ticket, err := s.queries.CreateTicket(ctx, dbgen.CreateTicketParams{ Amount: pgtype.Numeric{ Exp: amount, }, TotalOdds: pgtype.Numeric{ Exp: totalOdds, }, }) if err != nil { return domain.Ticket{}, err } return domain.Ticket{ ID: ticket.ID, Amount: ticket.Amount.Exp, TotalOdds: ticket.TotalOdds.Exp, }, err } func (s *Store) GetTicketByID(ctx context.Context, id int64) (domain.Ticket, error) { ticket, err := s.queries.GetTicketByID(ctx, id) if err != nil { return domain.Ticket{}, err } return domain.Ticket{ ID: ticket.ID, Amount: ticket.Amount.Exp, TotalOdds: ticket.TotalOdds.Exp, }, nil } func (s *Store) GetAllTickets(ctx context.Context) ([]domain.Ticket, error) { tickets, err := s.queries.GetAllTickets(ctx) if err != nil { return nil, err } var result []domain.Ticket for _, ticket := range tickets { result = append(result, domain.Ticket{ ID: ticket.ID, Amount: ticket.Amount.Exp, TotalOdds: ticket.TotalOdds.Exp, }) } return result, nil } func (s *Store) DeleteOldTickets(ctx context.Context) error { return s.queries.DeleteOldTickets(ctx) } func (s *Store) DeleteTicket(ctx context.Context, id int64) error { return s.queries.DeleteTicket(ctx, id) }