From ddf55763d239cf801faa11e76fddcb383e361138 Mon Sep 17 00:00:00 2001 From: Asher Samuel Date: Fri, 4 Jul 2025 16:28:31 +0300 Subject: [PATCH] fix: small bug --- db/query/bet.sql | 2 +- internal/repository/bet.go | 9 +++++---- internal/services/bet/service.go | 2 +- internal/services/odds/service.go | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/db/query/bet.sql b/db/query/bet.sql index badb2a7..bdd6f23 100644 --- a/db/query/bet.sql +++ b/db/query/bet.sql @@ -116,7 +116,7 @@ WHERE bet_id = $1; -- name: GetBetCount :one SELECT COUNT(*) FROM bets -where user_id = $1 +WHERE user_id = $1 AND outcomes_hash = $2; -- name: UpdateCashOut :exec UPDATE bets diff --git a/internal/repository/bet.go b/internal/repository/bet.go index e6a0eaa..05ea998 100644 --- a/internal/repository/bet.go +++ b/internal/repository/bet.go @@ -133,9 +133,10 @@ func convertCreateBet(bet domain.CreateBet) dbgen.CreateBetParams { Int64: bet.UserID.Value, Valid: bet.UserID.Valid, }, - IsShopBet: bet.IsShopBet, - CashoutID: bet.CashoutID, - FastCode: bet.FastCode, + IsShopBet: bet.IsShopBet, + CashoutID: bet.CashoutID, + OutcomesHash: bet.OutcomesHash, + FastCode: bet.FastCode, } } @@ -294,7 +295,7 @@ func (s *Store) GetBetByFastCode(ctx context.Context, fastcode string) (domain.G func (s *Store) GetBetCount(ctx context.Context, UserID int64, outcomesHash string) (int64, error) { count, err := s.queries.GetBetCount(ctx, dbgen.GetBetCountParams{ - UserID: pgtype.Int8{Int64: UserID}, + UserID: pgtype.Int8{Int64: UserID, Valid: true}, OutcomesHash: outcomesHash, }) diff --git a/internal/services/bet/service.go b/internal/services/bet/service.go index 6b95542..e3444a3 100644 --- a/internal/services/bet/service.go +++ b/internal/services/bet/service.go @@ -236,7 +236,7 @@ func (s *Service) PlaceBet(ctx context.Context, req domain.CreateBetReq, userID if err != nil { return domain.CreateBetRes{}, err } - if count == 2 { + if count >= 2 { return domain.CreateBetRes{}, fmt.Errorf("bet already pleaced twice") } diff --git a/internal/services/odds/service.go b/internal/services/odds/service.go index cdfda1e..b3010d0 100644 --- a/internal/services/odds/service.go +++ b/internal/services/odds/service.go @@ -1,4 +1,4 @@ - package odds +package odds import ( "context"