diff --git a/invoices/sql_store.go b/invoices/sql_store.go index 5459ec26c..24aa63da0 100644 --- a/invoices/sql_store.go +++ b/invoices/sql_store.go @@ -79,6 +79,10 @@ type SQLInvoiceQueries interface { //nolint:interfacebloat UpsertAMPSubInvoice(ctx context.Context, arg sqlc.UpsertAMPSubInvoiceParams) (sql.Result, error) + // TODO(bhandras): remove this once migrations have been separated out. + InsertAMPSubInvoice(ctx context.Context, + arg sqlc.InsertAMPSubInvoiceParams) error + UpdateAMPSubInvoiceState(ctx context.Context, arg sqlc.UpdateAMPSubInvoiceStateParams) error diff --git a/sqldb/sqlc/amp_invoices.sql.go b/sqldb/sqlc/amp_invoices.sql.go index e47b1c803..182848e14 100644 --- a/sqldb/sqlc/amp_invoices.sql.go +++ b/sqldb/sqlc/amp_invoices.sql.go @@ -235,6 +235,35 @@ func (q *Queries) GetAMPInvoiceID(ctx context.Context, setID []byte) (int64, err return invoice_id, err } +const insertAMPSubInvoice = `-- name: InsertAMPSubInvoice :exec +INSERT INTO amp_sub_invoices ( + set_id, state, created_at, settled_at, settle_index, invoice_id +) VALUES ( + $1, $2, $3, $4, $5, $6 +) +` + +type InsertAMPSubInvoiceParams struct { + SetID []byte + State int16 + CreatedAt time.Time + SettledAt sql.NullTime + SettleIndex sql.NullInt64 + InvoiceID int64 +} + +func (q *Queries) InsertAMPSubInvoice(ctx context.Context, arg InsertAMPSubInvoiceParams) error { + _, err := q.db.ExecContext(ctx, insertAMPSubInvoice, + arg.SetID, + arg.State, + arg.CreatedAt, + arg.SettledAt, + arg.SettleIndex, + arg.InvoiceID, + ) + return err +} + const insertAMPSubInvoiceHTLC = `-- name: InsertAMPSubInvoiceHTLC :exec INSERT INTO amp_sub_invoice_htlcs ( invoice_id, set_id, htlc_id, root_share, child_index, hash, preimage diff --git a/sqldb/sqlc/querier.go b/sqldb/sqlc/querier.go index 268ca027c..4ef50362e 100644 --- a/sqldb/sqlc/querier.go +++ b/sqldb/sqlc/querier.go @@ -28,6 +28,7 @@ type Querier interface { GetInvoiceHTLCCustomRecords(ctx context.Context, invoiceID int64) ([]GetInvoiceHTLCCustomRecordsRow, error) GetInvoiceHTLCs(ctx context.Context, invoiceID int64) ([]InvoiceHtlc, error) GetMigration(ctx context.Context, version int32) (time.Time, error) + InsertAMPSubInvoice(ctx context.Context, arg InsertAMPSubInvoiceParams) error InsertAMPSubInvoiceHTLC(ctx context.Context, arg InsertAMPSubInvoiceHTLCParams) error InsertInvoice(ctx context.Context, arg InsertInvoiceParams) (int64, error) InsertInvoiceFeature(ctx context.Context, arg InsertInvoiceFeatureParams) error diff --git a/sqldb/sqlc/queries/amp_invoices.sql b/sqldb/sqlc/queries/amp_invoices.sql index 1fad75e0d..1184fd2a4 100644 --- a/sqldb/sqlc/queries/amp_invoices.sql +++ b/sqldb/sqlc/queries/amp_invoices.sql @@ -65,3 +65,11 @@ SET preimage = $5 WHERE a.invoice_id = $1 AND a.set_id = $2 AND a.htlc_id = ( SELECT id FROM invoice_htlcs AS i WHERE i.chan_id = $3 AND i.htlc_id = $4 ); + +-- name: InsertAMPSubInvoice :exec +INSERT INTO amp_sub_invoices ( + set_id, state, created_at, settled_at, settle_index, invoice_id +) VALUES ( + $1, $2, $3, $4, $5, $6 +); +