service

package
v0.0.0-...-5a20165 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNoEnoughItemsToReserve = serviceError("no enough items to reserve")
	ErrNoEnoughItemsInStock   = serviceError("no enough items in stock")
	ErrAlreadyProcessed       = serviceError("already processed")
)

Functions

This section is empty.

Types

type Interface

type Interface interface {
	// ChangePriceInStock изменяет цену товара, находящегося в продаже
	ChangePriceInStock(ctx context.Context, data dto.ArticlePrice) error
	// Stock возвращает полную информацию о товаре, доступном для продажи, в виде dto.ArticlePriceNameAmount
	Stock(ctx context.Context, data dto.Article) (dto.ArticlePriceNameAmount, error)
	// AddProductToStock добавляет новый товар в ассортимент магазина
	AddProductToStock(ctx context.Context, data dto.ArticlePriceNameAmount) error
	// ChangeAmountInStock изменяет доступное для продажи количество товара
	ChangeAmountInStock(ctx context.Context, data dto.ArticleAmount) error
	// AmountInStock возвращает доступное для продажи количество товара
	AmountInStock(ctx context.Context, data dto.Article) (uint, error)
	// MakeReservation производит резервирование товара для покупателя. Резервирование проводится как для бронирования
	// через интернет, так и во время нахождения товара на кассе (в ожидании оплаты локальным покупателем). В таком случае
	// в качестве номера заказа передаётся номер кассы.
	MakeReservation(ctx context.Context, data dto.NumberDateStateProducts) error
	// CancelReservation снимает бронь с товара/ов
	CancelReservation(ctx context.Context, data dto.Number) error
	// MakeSale уменьшает количества доступного для продажи товара и производит запись в статистику продаж
	MakeSale(ctx context.Context, data []dto.ArticlePriceAmount) error
	// FinishOrder помечает заказ, как выполненный. Данные о содержащихся в заказе товарах переносятся в статистику продаж
	FinishOrder(ctx context.Context, data dto.Number) error
	// TotalSold возвращает количество проданного товара с переданным артикулом за весь период
	TotalSold(ctx context.Context, data dto.Article) (uint, error)
	// TotalSoldInPeriod возвращает количество проданного товара с переданным артикулом за указанный период
	TotalSoldInPeriod(ctx context.Context, data dto.ArticleFromTo) (uint, error)
}

Directories

Path Synopsis
Package mock_service is a generated GoMock package.
Package mock_service is a generated GoMock package.

Jump to

Keyboard shortcuts

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