package repository import ( "context" "time" dbgen "github.com/SamuelTariku/FortuneBet-Backend/gen/db" "github.com/SamuelTariku/FortuneBet-Backend/internal/domain" "github.com/jackc/pgx/v5/pgtype" ) func (s *Store) SaveEvent(ctx context.Context, e domain.Event) error { parsedTime, err := time.Parse(time.RFC3339, e.StartTime) if err != nil { return err } return s.queries.InsertEvent(ctx, dbgen.InsertEventParams{ ID: e.ID, SportID: pgtype.Text{String: e.SportID, Valid: true}, MatchName: pgtype.Text{String: e.MatchName, Valid: true}, HomeTeam: pgtype.Text{String: e.HomeTeam, Valid: true}, AwayTeam: pgtype.Text{String: e.AwayTeam, Valid: true}, HomeTeamID: pgtype.Text{String: e.HomeTeamID, Valid: true}, AwayTeamID: pgtype.Text{String: e.AwayTeamID, Valid: true}, HomeKitImage: pgtype.Text{String: e.HomeKitImage, Valid: true}, AwayKitImage: pgtype.Text{String: e.AwayKitImage, Valid: true}, LeagueID: pgtype.Text{String: e.LeagueID, Valid: true}, LeagueName: pgtype.Text{String: e.LeagueName, Valid: true}, LeagueCc: pgtype.Text{String: e.LeagueCC, Valid: true}, StartTime: pgtype.Timestamp{Time: parsedTime, Valid: true}, Score: pgtype.Text{String: e.Score, Valid: true}, MatchMinute: pgtype.Int4{Int32: int32(e.MatchMinute), Valid: true}, TimerStatus: pgtype.Text{String: e.TimerStatus, Valid: true}, AddedTime: pgtype.Int4{Int32: int32(e.AddedTime), Valid: true}, MatchPeriod: pgtype.Int4{Int32: int32(e.MatchPeriod), Valid: true}, IsLive: pgtype.Bool{Bool: e.IsLive, Valid: true}, Status: pgtype.Text{String: e.Status, Valid: true}, }) } func (s *Store) GetLiveEventIDs(ctx context.Context) ([]string, error) { return s.queries.ListLiveEvents(ctx) }