34 lines
1.8 KiB
Go
34 lines
1.8 KiB
Go
package odds
|
|
|
|
import (
|
|
"context"
|
|
"encoding/json"
|
|
|
|
"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
|
|
)
|
|
|
|
type Service interface {
|
|
FetchNonLiveOdds(ctx context.Context) error
|
|
FetchNonLiveOddsByEventID(ctx context.Context, eventIDStr string) (domain.BaseNonLiveOddResponse, error)
|
|
ParseOddSections(ctx context.Context, res json.RawMessage, sportID int64) (domain.ParseOddSectionsRes, error)
|
|
GetPrematchOdds(ctx context.Context, eventID string) ([]domain.OddMarket, error)
|
|
GetPrematchOddsByUpcomingID(ctx context.Context, upcomingID string) ([]domain.OddMarket, error)
|
|
GetPaginatedPrematchOddsByUpcomingID(ctx context.Context, upcomingID string, limit domain.ValidInt64, offset domain.ValidInt64) ([]domain.OddMarket, error)
|
|
GetALLPrematchOdds(ctx context.Context) ([]domain.OddMarket, error)
|
|
// GetRawOddsByMarketID(ctx context.Context, marketID string, upcomingID string) (domain.OddMarket, error)
|
|
DeleteOddsForEvent(ctx context.Context, eventID string) error
|
|
GetOddByID(ctx context.Context, id int64) (domain.OddMarket, error)
|
|
GetOddsWithSettingsByID(ctx context.Context, ID int64, companyID int64) (domain.OddMarketWithSettings, error)
|
|
|
|
// Settings
|
|
SaveOddsSetting(ctx context.Context, odd domain.CreateOddMarketSettings) error
|
|
UpdateGlobalOddsSetting(ctx context.Context, odd domain.UpdateGlobalOddMarketSettings) error
|
|
DeleteAllCompanyOddsSetting(ctx context.Context, companyID int64) error
|
|
DeleteCompanyOddsSettingByOddMarketID(ctx context.Context, companyID int64, oddMarketID int64) error
|
|
|
|
// Odd History
|
|
InsertOddHistory(ctx context.Context, odd domain.CreateOddHistory) (domain.OddHistory, error)
|
|
GetAllOddHistory(ctx context.Context, filter domain.OddHistoryFilter) ([]domain.OddHistory, error)
|
|
GetInitialOddPerDay(ctx context.Context, filter domain.OddHistoryFilter) ([]domain.OddHistory, error)
|
|
}
|