dblayer

package
v0.0.0-...-1535c92 Latest Latest
Warning

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

Go to latest
Published: Dec 30, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrINVALIDPASSWORD = errors.New("Invalid password")

ErrINVALIDPASSWORD custom error type

Functions

func InitORM

func InitORM() error

InitORM init ORM

Types

type DBLayer

type DBLayer interface {
	GetAllProducts() ([]models.Product, error)
	GetPromos() ([]models.Product, error)
	GetCustomerByName(string, string) (models.Customer, error)
	GetCustomerByID(int) (models.Customer, error)
	GetProduct(int) (models.Product, error)
	AddUser(models.Customer) (models.Customer, error)
	SignInUser(username, password string) (models.Customer, error)
	SignOutUserByID(int) error
	GetCustomerOrdersByID(int) ([]models.Order, error)
	AddOrder(models.Order) error
	GetCreditCardCID(int) (string, error)
	SaveCreditCardForCustomer(int, string) error
}

DBLayer interface for db

type DBORM

type DBORM struct {
	*gorm.DB
}

DBORM ORM type wrapper

var ShopDB *DBORM

ShopDB global ORM

func (*DBORM) AddOrder

func (db *DBORM) AddOrder(order models.Order) (models.Order, error)

AddOrder save order

func (*DBORM) AddProductToCart

func (db *DBORM) AddProductToCart(product models.Product, quantity int, cart models.Cart) error

AddProductToCart add product to cart

func (*DBORM) AddUser

func (db *DBORM) AddUser(customer models.Customer) (models.Customer, error)

AddUser add user

func (*DBORM) CreateCartItemForProduct

func (db *DBORM) CreateCartItemForProduct(product models.Product, quantity int, cart models.Cart) (item models.CartItem, err error)

CreateCartItemForProduct create cart item

func (*DBORM) CreateNewCart

func (db *DBORM) CreateNewCart(user models.Customer) (cart models.Cart, err error)

CreateNewCart create new cart

func (*DBORM) CreateOrder

func (db *DBORM) CreateOrder(c models.Cart, a models.Address) (models.Order, error)

CreateOrder crate order

func (*DBORM) FindOrderByID

func (db *DBORM) FindOrderByID(id int) (order models.Order, err error)

FindOrderByID find order

func (*DBORM) GetActiveCartForUser

func (db *DBORM) GetActiveCartForUser(user models.Customer) (cart models.Cart, err error)

GetActiveCartForUser find active cart

func (*DBORM) GetAllProducts

func (db *DBORM) GetAllProducts() (products []models.Product, err error)

GetAllProducts get all products

func (*DBORM) GetCartItemForProduct

func (db *DBORM) GetCartItemForProduct(product models.Product, cart models.Cart) (item models.CartItem, err error)

GetCartItemForProduct get cart item

func (*DBORM) GetCreditCardCID

func (db *DBORM) GetCreditCardCID(id int) (string, error)

GetCreditCardCID get cc

func (*DBORM) GetCustomerByID

func (db *DBORM) GetCustomerByID(id int) (customer models.Customer, err error)

GetCustomerByID customer by id

func (*DBORM) GetCustomerByName

func (db *DBORM) GetCustomerByName(firstname string, lastname string) (customer models.Customer, err error)

GetCustomerByName get customer by name

func (*DBORM) GetCustomerOrdersByID

func (db *DBORM) GetCustomerOrdersByID(id int) (orders []models.Order, err error)

GetCustomerOrdersByID get customers

func (*DBORM) GetMainAddressForCustomer

func (db *DBORM) GetMainAddressForCustomer(c models.Customer) (a models.Address, err error)

GetMainAddressForCustomer get main address

func (*DBORM) GetProduct

func (db *DBORM) GetProduct(id int) (product models.Product, error error)

GetProduct product

func (*DBORM) GetPromos

func (db *DBORM) GetPromos() (products []models.Product, err error)

GetPromos get promos

func (*DBORM) SaveCreditCardForCustomer

func (db *DBORM) SaveCreditCardForCustomer(id int, ccid string) error

SaveCreditCardForCustomer save cc

func (*DBORM) SignInUser

func (db *DBORM) SignInUser(email, pass string) (customer models.Customer, err error)

SignInUser sign in

func (*DBORM) SignOutUserByID

func (db *DBORM) SignOutUserByID(id int) error

SignOutUserByID signout

func (*DBORM) UpdateCartItemForProduct

func (db *DBORM) UpdateCartItemForProduct(item models.CartItem) (models.CartItem, error)

UpdateCartItemForProduct update a cart item

Jump to

Keyboard shortcuts

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