Updated sqlc to have user refresh token list query.

This commit is contained in:
2026-04-29 08:13:03 +02:00
parent 1acc9da792
commit 05bb6b7a79
3 changed files with 36 additions and 0 deletions
+1
View File
@@ -17,6 +17,7 @@ type Querier interface {
GetRefreshToken(ctx context.Context, tokenHash string) (RefreshToken, error)
GetUserByEmail(ctx context.Context, dollar_1 string) (User, error)
GetUserById(ctx context.Context, id int64) (User, error)
GetUserRefreshTokens(ctx context.Context, userID int64) ([]RefreshToken, error)
ListUsers(ctx context.Context) ([]User, error)
UpdateUser(ctx context.Context, arg UpdateUserParams) error
}
+31
View File
@@ -73,3 +73,34 @@ func (q *Queries) GetRefreshToken(ctx context.Context, tokenHash string) (Refres
)
return i, err
}
const getUserRefreshTokens = `-- name: GetUserRefreshTokens :many
SELECT id, user_id, token_hash, created_at, expires_at FROM refresh_tokens
WHERE user_id = $1
`
func (q *Queries) GetUserRefreshTokens(ctx context.Context, userID int64) ([]RefreshToken, error) {
rows, err := q.db.Query(ctx, getUserRefreshTokens, userID)
if err != nil {
return nil, err
}
defer rows.Close()
var items []RefreshToken
for rows.Next() {
var i RefreshToken
if err := rows.Scan(
&i.ID,
&i.UserID,
&i.TokenHash,
&i.CreatedAt,
&i.ExpiresAt,
); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
+4
View File
@@ -7,6 +7,10 @@ RETURNING *;
SELECT * FROM refresh_tokens
WHERE token_hash = $1 LIMIT 1;
-- name: GetUserRefreshTokens :many
SELECT * FROM refresh_tokens
WHERE user_id = $1;
-- name: DeleteRefreshToken :exec
DELETE FROM refresh_tokens
WHERE token_hash = $1;