cart

package
v0.0.0-...-d38871e Latest Latest
Warning

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

Go to latest
Published: Jan 4, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CartItem

type CartItem struct {
	ID          int       `json:"id" gorm:"autoIncrement,primaryKey"`
	ProductSku  string    `json:"productSku"`
	UserId      string    `json:"userId"`
	Quantity    int       `json:"quantity"`
	TimeAdded   time.Time `json:"timeAdded"`
	LastUpdated time.Time `json:"lastUpdated"`
}

type CartRepo

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

CartRepo is the default implementation for Repository interface.

func NewRepository

func NewRepository(orm *gorm.DB, tracer opentracing.Tracer) *CartRepo

NewRepository returns a new cart repository object.

func (*CartRepo) BulkRemoveItemsFromUserCart

func (r *CartRepo) BulkRemoveItemsFromUserCart(ctx context.Context, userId string, itemIds []string) error

BulkRemoveItemsFromUserCart removes multiple items from user by ids.

func (*CartRepo) GetUserCartItems

func (r *CartRepo) GetUserCartItems(ctx context.Context, userId string) ([]CartItem, error)

GetUserCartItems retrieves cart items from the database, filtering by userId.

func (*CartRepo) SaveCartItem

func (r *CartRepo) SaveCartItem(ctx context.Context, item *CartItem) error

SaveCartItem saves a cart item to the database.

type Repository

type Repository interface {
	SaveCartItem(ctx context.Context, item *CartItem) error
	GetUserCartItems(ctx context.Context, userId string) ([]CartItem, error)
	BulkRemoveItemsFromUserCart(ctx context.Context, userId string, itemIds []string) error
}

Repository is the interface that describes a cart repository object.

Jump to

Keyboard shortcuts

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