package repository import ( "context" dbgen "github.com/SamuelTariku/FortuneBet-Backend/gen/db" "github.com/SamuelTariku/FortuneBet-Backend/internal/domain" "github.com/SamuelTariku/FortuneBet-Backend/internal/ports" ) // Interface for creating new branch stats store func NewBranchStatStore(s *Store) ports.BranchStatStore { return s } func (s *Store) UpdateBranchStats(ctx context.Context) error { return s.queries.UpdateBranchStats(ctx) } func (s *Store) GetBranchStatByID(ctx context.Context, branchID int64) ([]domain.BranchStat, error) { stats, err := s.queries.GetBranchStatsByID(ctx, branchID) if err != nil { return nil, err } return domain.ConvertDBBranchStatsList(stats), nil } func (s *Store) GetBranchStatsByInterval(ctx context.Context, filter domain.BranchStatFilter) ([]domain.BranchStat, error) { stats, err := s.queries.GetBranchStats(ctx, dbgen.GetBranchStatsParams{ Interval: filter.Interval.ToPG(), BranchID: filter.BranchID.ToPG(), }) if err != nil { return nil, err } return domain.ConvertDBBranchStatsByIntervalList(stats), nil }