diff --git a/dal/db_query/queries.sql b/dal/db_query/queries.sql index e1a406e..d5d4d78 100644 --- a/dal/db_query/queries.sql +++ b/dal/db_query/queries.sql @@ -850,5 +850,5 @@ ON CONFLICT (AmoID) DO NOTHING; -- name: UpdateUsers :exec UPDATE users SET Name = $2, Email = $3, Role = $4, "Group" = $5, AmoUserID = $6 WHERE AmoID = $1; --- name: GetTokenById :exec +-- name: GetTokenById :one SELECT * FROM tokens WHERE accountID = $1; diff --git a/dal/sqlcgen/queries.sql.go b/dal/sqlcgen/queries.sql.go index f2b7e75..3735a8a 100644 --- a/dal/sqlcgen/queries.sql.go +++ b/dal/sqlcgen/queries.sql.go @@ -2116,13 +2116,22 @@ func (q *Queries) GetTagsWithPagination(ctx context.Context, arg GetTagsWithPagi return items, nil } -const getTokenById = `-- name: GetTokenById :exec +const getTokenById = `-- name: GetTokenById :one SELECT accountid, refreshtoken, accesstoken, authcode, expiration, createdat FROM tokens WHERE accountID = $1 ` -func (q *Queries) GetTokenById(ctx context.Context, accountid string) error { - _, err := q.db.ExecContext(ctx, getTokenById, accountid) - return err +func (q *Queries) GetTokenById(ctx context.Context, accountid string) (Token, error) { + row := q.db.QueryRowContext(ctx, getTokenById, accountid) + var i Token + err := row.Scan( + &i.Accountid, + &i.Refreshtoken, + &i.Accesstoken, + &i.Authcode, + &i.Expiration, + &i.Createdat, + ) + return i, err } const getUsersWithPagination = `-- name: GetUsersWithPagination :many diff --git a/repository/amo/amo.go b/repository/amo/amo.go index 7a60053..8f24ea3 100644 --- a/repository/amo/amo.go +++ b/repository/amo/amo.go @@ -170,6 +170,17 @@ func (r *AmoRepository) CheckAndUpdateUsers(ctx context.Context, user model.User return err } +func (r *AmoRepository) GetTokenByID(ctx context.Context, accountID string) (*model.Token, error) { + row, err := r.queries.GetTokenById(ctx, accountID) + if err != nil { + return nil, err + } + + return &model.Token{ + AccountID: row., + } +} + // методы webhook func (r *AmoRepository) WebhookCreate(ctx context.Context, tokens model.Token) error {