Documentation ¶
Index ¶
- Variables
- func ValidateOrderChangesCount(r io.Reader) (*models.OrderChanges, error)
- func ValidateOrderChangesStatus(r io.Reader) (*models.OrderChanges, error)
- func ValidatePartOfPreProduct(r io.Reader, userID uint64) (*models.PreProduct, error)
- func ValidatePreOrder(r io.Reader) (*models.PreOrder, error)
- func ValidatePreProduct(r io.Reader, userID uint64) (*models.PreProduct, error)
- type BasketService
- func (b BasketService) AddOrder(ctx context.Context, r io.Reader, userID uint64) (*models.OrderInBasket, error)
- func (b BasketService) BuyFullBasket(ctx context.Context, userID uint64) error
- func (b BasketService) DeleteOrder(ctx context.Context, orderID uint64, ownerID uint64) error
- func (b BasketService) GetOrdersByUserID(ctx context.Context, userID uint64) ([]*models.OrderInBasket, error)
- func (b BasketService) UpdateOrderCount(ctx context.Context, r io.Reader, userID uint64) error
- func (b BasketService) UpdateOrderStatus(ctx context.Context, r io.Reader, userID uint64) error
- type FavouriteService
- func (f FavouriteService) AddToFavourites(ctx context.Context, userID uint64, r io.Reader) error
- func (f FavouriteService) DeleteFromFavourites(ctx context.Context, userID uint64, productID uint64) error
- func (f FavouriteService) GetUserFavourites(ctx context.Context, userID uint64) ([]*models.ProductInFeed, error)
- type IBasketStorage
- type IFavouriteStorage
- type IProductStorage
- type ProductService
- func (p *ProductService) ActivateProduct(ctx context.Context, productID uint64, userID uint64) error
- func (p *ProductService) AddProduct(ctx context.Context, r io.Reader, userID uint64) (uint64, error)
- func (p *ProductService) CloseProduct(ctx context.Context, productID uint64, userID uint64) error
- func (p *ProductService) DeleteProduct(ctx context.Context, productID uint64, userID uint64) error
- func (p *ProductService) GetProduct(ctx context.Context, productID uint64, userID uint64) (*models.Product, error)
- func (p *ProductService) GetProductsList(ctx context.Context, lastProductID uint64, count uint64, userID uint64) ([]*models.ProductInFeed, error)
- func (p *ProductService) GetProductsOfSaler(ctx context.Context, lastProductID uint64, count uint64, userID uint64, ...) ([]*models.ProductInFeed, error)
- func (p *ProductService) GetSearchProductFeed(ctx context.Context, searchInput string, lastNumber uint64, limit uint64, ...) ([]*models.ProductInFeed, error)
- func (p *ProductService) SearchProduct(ctx context.Context, searchInput string) ([]string, error)
- func (p *ProductService) UpdateProduct(ctx context.Context, r io.Reader, isPartialUpdate bool, productID uint64, ...) error
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrDecodePreProduct = myerrors.NewErrorBadFormatRequest("Некорректный json объявления") ErrDecodePreOrder = myerrors.NewErrorBadFormatRequest("Некорректный json заказа") ErrDecodeOrderChanges = myerrors.NewErrorBadFormatRequest("Некорректный json изменения заказа") ErrNotExistingStatus = myerrors.NewErrorBadFormatRequest( "Статус заказа не может быть больше %d", models.OrderStatusClosed) )
Functions ¶
func ValidateOrderChangesCount ¶
func ValidateOrderChangesCount(r io.Reader) (*models.OrderChanges, error)
func ValidateOrderChangesStatus ¶
func ValidateOrderChangesStatus(r io.Reader) (*models.OrderChanges, error)
func ValidatePreProduct ¶
Types ¶
type BasketService ¶
type BasketService struct {
// contains filtered or unexported fields
}
func NewBasketService ¶
func NewBasketService(basketStorage IBasketStorage) (*BasketService, error)
func (BasketService) AddOrder ¶
func (b BasketService) AddOrder(ctx context.Context, r io.Reader, userID uint64) (*models.OrderInBasket, error)
func (BasketService) BuyFullBasket ¶
func (b BasketService) BuyFullBasket(ctx context.Context, userID uint64) error
func (BasketService) DeleteOrder ¶
func (BasketService) GetOrdersByUserID ¶
func (b BasketService) GetOrdersByUserID(ctx context.Context, userID uint64) ([]*models.OrderInBasket, error)
func (BasketService) UpdateOrderCount ¶
func (BasketService) UpdateOrderStatus ¶
type FavouriteService ¶
type FavouriteService struct {
// contains filtered or unexported fields
}
func NewFavouriteService ¶
func NewFavouriteService(favouriteStorage IFavouriteStorage) (*FavouriteService, error)
func (FavouriteService) AddToFavourites ¶
func (FavouriteService) DeleteFromFavourites ¶
func (FavouriteService) GetUserFavourites ¶
func (f FavouriteService) GetUserFavourites(ctx context.Context, userID uint64) ([]*models.ProductInFeed, error)
type IBasketStorage ¶
type IBasketStorage interface { AddOrderInBasket(ctx context.Context, userID uint64, productID uint64, count uint32) (*models.OrderInBasket, error) GetOrdersInBasketByUserID(ctx context.Context, userID uint64) ([]*models.OrderInBasket, error) UpdateOrderCount(ctx context.Context, userID uint64, orderID uint64, newCount uint32) error UpdateOrderStatus(ctx context.Context, userID uint64, orderID uint64, newStatus uint8) error BuyFullBasket(ctx context.Context, userID uint64) error DeleteOrder(ctx context.Context, orderID uint64, ownerID uint64) error }
type IFavouriteStorage ¶
type IProductStorage ¶
type IProductStorage interface { AddProduct(ctx context.Context, preProduct *models.PreProduct) (uint64, error) GetProduct(ctx context.Context, productID uint64, userID uint64) (*models.Product, error) GetOldProducts(ctx context.Context, lastProductID uint64, count uint64, userID uint64) ([]*models.ProductInFeed, error) GetProductsOfSaler(ctx context.Context, lastProductID uint64, count uint64, userID uint64, isMy bool) ([]*models.ProductInFeed, error) UpdateProduct(ctx context.Context, productID uint64, updateFields map[string]interface{}) error CloseProduct(ctx context.Context, productID uint64, userID uint64) error ActivateProduct(ctx context.Context, productID uint64, userID uint64) error DeleteProduct(ctx context.Context, productID uint64, userID uint64) error SearchProduct(ctx context.Context, searchInput string) ([]string, error) GetSearchProductFeed(ctx context.Context, searchInput string, lastNumber uint64, limit uint64, userID uint64, ) ([]*models.ProductInFeed, error) IBasketStorage IFavouriteStorage }
type ProductService ¶
type ProductService struct { FavouriteService BasketService // contains filtered or unexported fields }
func NewProductService ¶
func NewProductService(productStorage IProductStorage, basketService *BasketService, favouriteService *FavouriteService, fileServiceClient fileservice.FileServiceClient, ) (*ProductService, error)
func (*ProductService) ActivateProduct ¶
func (*ProductService) AddProduct ¶
func (*ProductService) CloseProduct ¶
func (*ProductService) DeleteProduct ¶
func (*ProductService) GetProduct ¶
func (*ProductService) GetProductsList ¶
func (p *ProductService) GetProductsList(ctx context.Context, lastProductID uint64, count uint64, userID uint64, ) ([]*models.ProductInFeed, error)
func (*ProductService) GetProductsOfSaler ¶
func (p *ProductService) GetProductsOfSaler(ctx context.Context, lastProductID uint64, count uint64, userID uint64, isMy bool, ) ([]*models.ProductInFeed, error)
func (*ProductService) GetSearchProductFeed ¶
func (p *ProductService) GetSearchProductFeed(ctx context.Context, searchInput string, lastNumber uint64, limit uint64, userID uint64, ) ([]*models.ProductInFeed, error)
func (*ProductService) SearchProduct ¶
Click to show internal directories.
Click to hide internal directories.