Try to use generated yookassa client (unsuccessful)
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
"net/http"
|
||||
"regexp"
|
||||
|
||||
"github.com/google/uuid"
|
||||
"go.uber.org/fx"
|
||||
|
||||
"payouts/internal/config"
|
||||
@@ -124,13 +125,26 @@ func (p *payoutHandler) PayoutCreate(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
idempotenceKey := uuid.New().String()
|
||||
payoutModel := &orm.Payout{
|
||||
User: *userSession,
|
||||
IdempotenceKey: idempotenceKey,
|
||||
Type: payoutReq.PayoutType.String(),
|
||||
Amount: payoutReq.Amount,
|
||||
Status: orm.StatusCreated,
|
||||
}
|
||||
err = p.dbService.CreatePayout(payoutModel, database.WithContext(r.Context()))
|
||||
|
||||
slog.Debug(fmt.Sprintf("Received create payload request: %v from user %v", payoutReq, userSession))
|
||||
err = p.yooKassa.CreatePayout(payoutReq, userSession)
|
||||
payoutResp, err := p.yooKassa.CreatePayout(payoutReq, userSession, idempotenceKey, yookassa.WithContext(r.Context()))
|
||||
if err != nil {
|
||||
slog.Error("Failed to create payout request", slog.String("error", err.Error()))
|
||||
errResponse("failed to create payout request", err, http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
|
||||
encoder := json.NewEncoder(w)
|
||||
encoder.Encode(payoutResp)
|
||||
}
|
||||
|
||||
// PaymentCallback implements [Handler].
|
||||
|
||||
@@ -82,7 +82,7 @@ func (u *userHandler) UserRegister(w http.ResponseWriter, r *http.Request) {
|
||||
copier.Copy(&ormUser, user)
|
||||
|
||||
// todo: add data validation
|
||||
err = u.dbService.CreateUser(ormUser, database.WithContext(r.Context()))
|
||||
err = u.dbService.CreateUser(&ormUser, database.WithContext(r.Context()))
|
||||
if err != nil {
|
||||
slog.Error("Failed to create user", slog.String("error", err.Error()))
|
||||
errResponse("failed to create user", err, http.StatusBadRequest)
|
||||
@@ -114,7 +114,7 @@ func (u *userHandler) UserLogin(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
ormUser, err := u.dbService.GetUser(orm.User{Phone: user.Phone}, database.WithContext(r.Context()))
|
||||
ormUser, err := u.dbService.GetUser(&orm.User{Phone: user.Phone}, database.WithContext(r.Context()))
|
||||
if err != nil {
|
||||
errResponse("invalid credentials", nil, http.StatusUnauthorized)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user