gen

package
v0.0.0-...-a84dc14 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreateProductParams

type CreateProductParams struct {
	Name             string               `json:"name"`
	Slug             string               `json:"slug"`
	Description      *string              `json:"description"`
	ShortDescription *string              `json:"short_description"`
	DisplayImageURL  *string              `json:"display_image_url"`
	PriceCents       int64                `json:"price_cents"`
	Currency         string               `json:"currency"`
	Status           domain.ProductStatus `json:"status"`
}

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type GetListActiveProductsParams

type GetListActiveProductsParams struct {
	Limit  int32 `json:"limit"`
	Offset int32 `json:"offset"`
}

type NullProductStatus

type NullProductStatus struct {
	ProductStatus ProductStatus `json:"product_status"`
	Valid         bool          `json:"valid"` // Valid is true if ProductStatus is not NULL
}

func (*NullProductStatus) Scan

func (ns *NullProductStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullProductStatus) Value

func (ns NullProductStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type Product

type Product struct {
	ID               uuid.UUID            `json:"id"`
	Name             string               `json:"name"`
	Slug             string               `json:"slug"`
	Description      *string              `json:"description"`
	ShortDescription *string              `json:"short_description"`
	DisplayImageURL  *string              `json:"display_image_url"`
	PriceCents       int64                `json:"price_cents"`
	Currency         string               `json:"currency"`
	Status           domain.ProductStatus `json:"status"`
	CreatedAt        time.Time            `json:"created_at"`
	UpdatedAt        time.Time            `json:"updated_at"`
	DeletedAt        *time.Time           `json:"deleted_at"`
}

type ProductStatus

type ProductStatus string
const (
	ProductStatusActive   ProductStatus = "active"
	ProductStatusInactive ProductStatus = "inactive"
	ProductStatusDraft    ProductStatus = "draft"
	ProductStatusArchived ProductStatus = "archived"
)

func (*ProductStatus) Scan

func (e *ProductStatus) Scan(src interface{}) error

type Querier

type Querier interface {
	CreateProduct(ctx context.Context, arg CreateProductParams) (Product, error)
	DeleteProduct(ctx context.Context, id uuid.UUID) (int64, error)
	GetListActiveProducts(ctx context.Context, arg GetListActiveProductsParams) ([]Product, error)
	GetProductByID(ctx context.Context, id uuid.UUID) (Product, error)
	GetProductBySlug(ctx context.Context, slug string) (Product, error)
	UpdateProduct(ctx context.Context, arg UpdateProductParams) (Product, error)
	UpdateStatusProduct(ctx context.Context, arg UpdateStatusProductParams) (Product, error)
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) CreateProduct

func (q *Queries) CreateProduct(ctx context.Context, arg CreateProductParams) (Product, error)

func (*Queries) DeleteProduct

func (q *Queries) DeleteProduct(ctx context.Context, id uuid.UUID) (int64, error)

func (*Queries) GetListActiveProducts

func (q *Queries) GetListActiveProducts(ctx context.Context, arg GetListActiveProductsParams) ([]Product, error)

func (*Queries) GetProductByID

func (q *Queries) GetProductByID(ctx context.Context, id uuid.UUID) (Product, error)

func (*Queries) GetProductBySlug

func (q *Queries) GetProductBySlug(ctx context.Context, slug string) (Product, error)

func (*Queries) UpdateProduct

func (q *Queries) UpdateProduct(ctx context.Context, arg UpdateProductParams) (Product, error)

func (*Queries) UpdateStatusProduct

func (q *Queries) UpdateStatusProduct(ctx context.Context, arg UpdateStatusProductParams) (Product, error)

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

type UpdateProductParams

type UpdateProductParams struct {
	ID               uuid.UUID `json:"id"`
	Name             string    `json:"name"`
	Slug             string    `json:"slug"`
	Description      *string   `json:"description"`
	ShortDescription *string   `json:"short_description"`
	DisplayImageURL  *string   `json:"display_image_url"`
	PriceCents       int64     `json:"price_cents"`
	Currency         string    `json:"currency"`
}

type UpdateStatusProductParams

type UpdateStatusProductParams struct {
	ID     uuid.UUID            `json:"id"`
	Status domain.ProductStatus `json:"status"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL