shuup.core.suppliers package

Submodules

shuup.core.suppliers.base module

shuup.core.suppliers.base.get_supported_product_kinds_for_module(module_identifier: str) Iterable[ProductKindSpec][source]
shuup.core.suppliers.base.get_supported_product_kinds_values_for_module(module_identifier: str) Iterable[int][source]
class shuup.core.suppliers.base.SupplierModuleInterface[source]

Bases: object

Supplier module interface.

identifier: str = None
name: str = None
get_stock_statuses(product_ids, *args, **kwargs) Dict[int, ProductStockStatus][source]
Parameters:

product_ids – Iterable of product IDs.

Returns:

Dict of {product_id: ProductStockStatus}.

get_stock_status(product_id: int, *args, **kwargs) ProductStockStatus | None[source]
Parameters:

product_id (int) – Product ID.

Return type:

shuup.core.stocks.ProductStockStatus|None

get_orderability_errors(shop_product: ShopProduct, quantity: Decimal, customer: Contact) Iterable[ValidationError][source]
Parameters:
adjust_stock(product_id: int, delta: Decimal, created_by: User = None, type: StockAdjustmentType = StockAdjustmentType.INVENTORY, *args, **kwargs) None[source]

Adjusts the stock for the given product_id.

update_stock(product_id: int, *args, **kwargs) None[source]

Updates a stock for the given product_id

update_stocks(product_ids: Iterable[int], *args, **kwargs) None[source]
ship_products(shipment: Shipment, product_quantities: Dict[Product, Decimal], *args, **kwargs)[source]
classmethod get_supported_product_kinds() Iterable[ProductKindSpec][source]
classmethod get_supported_product_kinds_values() Iterable[int][source]
class shuup.core.suppliers.base.BaseSupplierModule(supplier: Supplier, options: Dict)[source]

Bases: SupplierModuleInterface

Base supplier module implementation.

__init__(supplier: Supplier, options: Dict)[source]
classmethod get_supported_product_kinds() Iterable[ProductKindSpec][source]
classmethod get_supported_product_kinds_values() Iterable[int][source]
get_stock_status(product_id: int, *args, **kwargs)[source]
Parameters:

product_id (int) – Product ID.

Return type:

shuup.core.stocks.ProductStockStatus|None

update_stocks(product_ids: Iterable[int], *args, **kwargs)[source]

shuup.core.suppliers.enums module

class shuup.core.suppliers.enums.StockAdjustmentType(value)[source]

Bases: Enum

INVENTORY = 1
RESTOCK = 2
RESTOCK_LOGICAL = 3

shuup.core.suppliers.strategies module

class shuup.core.suppliers.strategies.FirstSupplierStrategy[source]

Bases: object

get_supplier(**kwargs)[source]

Module contents

class shuup.core.suppliers.BaseSupplierModule(supplier: Supplier, options: Dict)[source]

Bases: SupplierModuleInterface

Base supplier module implementation.

__init__(supplier: Supplier, options: Dict)[source]
get_stock_status(product_id: int, *args, **kwargs)[source]
Parameters:

product_id (int) – Product ID.

Return type:

shuup.core.stocks.ProductStockStatus|None

classmethod get_supported_product_kinds() Iterable[ProductKindSpec][source]
classmethod get_supported_product_kinds_values() Iterable[int][source]
update_stocks(product_ids: Iterable[int], *args, **kwargs)[source]
class shuup.core.suppliers.FirstSupplierStrategy[source]

Bases: object

get_supplier(**kwargs)[source]