Files
warehouse-management-BE/sqlc_gen/invoice_config_item.sql.go
2026-05-12 09:52:25 +07:00

171 lines
4.7 KiB
Go

// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.30.0
// source: invoice_config_item.sql
package db
import (
"context"
"github.com/jackc/pgx/v5/pgtype"
)
const createInvoiceConfigItem = `-- name: CreateInvoiceConfigItem :one
INSERT INTO invoice_config_items (invoice_config_id,component_id,required_quantity, allow_alternative,priority_order, note, metadata)
VALUES (
$1,
$2,
$3,
$4,
$5,
$6,
$7
)
RETURNING id, invoice_config_id, component_id, required_quantity, allow_alternative, priority_order, note, metadata
`
type CreateInvoiceConfigItemParams struct {
InvoiceConfigID int64 `db:"invoice_config_id" json:"invoiceConfigId"`
ComponentID int64 `db:"component_id" json:"componentId"`
RequiredQuantity int32 `db:"required_quantity" json:"requiredQuantity"`
AllowAlternative bool `db:"allow_alternative" json:"allowAlternative"`
PriorityOrder int32 `db:"priority_order" json:"priorityOrder"`
Note pgtype.Text `db:"note" json:"note"`
Metadata []byte `db:"metadata" json:"metadata"`
}
func (q *Queries) CreateInvoiceConfigItem(ctx context.Context, arg CreateInvoiceConfigItemParams) (InvoiceConfigItem, error) {
row := q.db.QueryRow(ctx, createInvoiceConfigItem,
arg.InvoiceConfigID,
arg.ComponentID,
arg.RequiredQuantity,
arg.AllowAlternative,
arg.PriorityOrder,
arg.Note,
arg.Metadata,
)
var i InvoiceConfigItem
err := row.Scan(
&i.ID,
&i.InvoiceConfigID,
&i.ComponentID,
&i.RequiredQuantity,
&i.AllowAlternative,
&i.PriorityOrder,
&i.Note,
&i.Metadata,
)
return i, err
}
const deleteInvoiceConfigItem = `-- name: DeleteInvoiceConfigItem :execrows
DELETE FROM invoice_config_items
WHERE id = $1
`
func (q *Queries) DeleteInvoiceConfigItem(ctx context.Context, id int64) (int64, error) {
result, err := q.db.Exec(ctx, deleteInvoiceConfigItem, id)
if err != nil {
return 0, err
}
return result.RowsAffected(), nil
}
const getInvoiceConfigItemByID = `-- name: GetInvoiceConfigItemByID :one
SELECT id, invoice_config_id, component_id, required_quantity, allow_alternative, priority_order, note, metadata FROM invoice_config_items
WHERE id = $1
`
func (q *Queries) GetInvoiceConfigItemByID(ctx context.Context, id int64) (InvoiceConfigItem, error) {
row := q.db.QueryRow(ctx, getInvoiceConfigItemByID, id)
var i InvoiceConfigItem
err := row.Scan(
&i.ID,
&i.InvoiceConfigID,
&i.ComponentID,
&i.RequiredQuantity,
&i.AllowAlternative,
&i.PriorityOrder,
&i.Note,
&i.Metadata,
)
return i, err
}
const listInvoiceConfigItems = `-- name: ListInvoiceConfigItems :many
SELECT id, invoice_config_id, component_id, required_quantity, allow_alternative, priority_order, note, metadata FROM invoice_config_items
`
func (q *Queries) ListInvoiceConfigItems(ctx context.Context) ([]InvoiceConfigItem, error) {
rows, err := q.db.Query(ctx, listInvoiceConfigItems)
if err != nil {
return nil, err
}
defer rows.Close()
var items []InvoiceConfigItem
for rows.Next() {
var i InvoiceConfigItem
if err := rows.Scan(
&i.ID,
&i.InvoiceConfigID,
&i.ComponentID,
&i.RequiredQuantity,
&i.AllowAlternative,
&i.PriorityOrder,
&i.Note,
&i.Metadata,
); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const updateInvoiceConfigItem = `-- name: UpdateInvoiceConfigItem :one
UPDATE invoice_config_items
SET required_quantity = coalesce($1, required_quantity),
allow_alternative = coalesce($2, allow_alternative),
priority_order = coalesce($3, priority_order),
note = coalesce($4, note),
metadata = coalesce($5, metadata)
WHERE id = $6
RETURNING id, invoice_config_id, component_id, required_quantity, allow_alternative, priority_order, note, metadata
`
type UpdateInvoiceConfigItemParams struct {
RequiredQuantity int32 `db:"required_quantity" json:"requiredQuantity"`
AllowAlternative bool `db:"allow_alternative" json:"allowAlternative"`
PriorityOrder int32 `db:"priority_order" json:"priorityOrder"`
Note pgtype.Text `db:"note" json:"note"`
Metadata []byte `db:"metadata" json:"metadata"`
ID int64 `db:"id" json:"id"`
}
func (q *Queries) UpdateInvoiceConfigItem(ctx context.Context, arg UpdateInvoiceConfigItemParams) (InvoiceConfigItem, error) {
row := q.db.QueryRow(ctx, updateInvoiceConfigItem,
arg.RequiredQuantity,
arg.AllowAlternative,
arg.PriorityOrder,
arg.Note,
arg.Metadata,
arg.ID,
)
var i InvoiceConfigItem
err := row.Scan(
&i.ID,
&i.InvoiceConfigID,
&i.ComponentID,
&i.RequiredQuantity,
&i.AllowAlternative,
&i.PriorityOrder,
&i.Note,
&i.Metadata,
)
return i, err
}