// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.29.0 // source: subscription_changes.sql package billing import ( "context" "database/sql" ) const createSubscriptionChange = `-- name: CreateSubscriptionChange :one INSERT INTO billing.subscription_changes (subscription_id, previous_status, new_status, stripe_event_id) VALUES ($1, $2, $3, $4) RETURNING change_id, subscription_id, previous_status, new_status, stripe_event_id, changed_at ` type CreateSubscriptionChangeParams struct { SubscriptionID string `json:"subscription_id"` PreviousStatus sql.NullString `json:"previous_status"` NewStatus string `json:"new_status"` StripeEventID string `json:"stripe_event_id"` } func (q *Queries) CreateSubscriptionChange(ctx context.Context, arg CreateSubscriptionChangeParams) (SubscriptionChange, error) { row := q.db.QueryRowContext(ctx, createSubscriptionChange, arg.SubscriptionID, arg.PreviousStatus, arg.NewStatus, arg.StripeEventID, ) var i SubscriptionChange err := row.Scan( &i.ChangeID, &i.SubscriptionID, &i.PreviousStatus, &i.NewStatus, &i.StripeEventID, &i.ChangedAt, ) return i, err } const getSubscriptionChangesBySubscriptionID = `-- name: GetSubscriptionChangesBySubscriptionID :many SELECT change_id, subscription_id, previous_status, new_status, stripe_event_id, changed_at FROM billing.subscription_changes WHERE subscription_id = $1 ORDER BY changed_at ASC ` func (q *Queries) GetSubscriptionChangesBySubscriptionID(ctx context.Context, subscriptionID string) ([]SubscriptionChange, error) { rows, err := q.db.QueryContext(ctx, getSubscriptionChangesBySubscriptionID, subscriptionID) if err != nil { return nil, err } defer rows.Close() items := []SubscriptionChange{} for rows.Next() { var i SubscriptionChange if err := rows.Scan( &i.ChangeID, &i.SubscriptionID, &i.PreviousStatus, &i.NewStatus, &i.StripeEventID, &i.ChangedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil }