shop.modules.discount ===================== .. py:module:: shop.modules.discount Attributes ---------- .. autoapisummary:: shop.modules.discount.logger shop.modules.discount.lock_current_automatically_discounts Classes ------- .. autoapisummary:: shop.modules.discount.Discount Module Contents --------------- .. py:data:: logger .. py:data:: lock_current_automatically_discounts Lock to make the current_automatically_discounts cache thread-safe .. py:class:: Discount(moduleName = None, modulePath = None, shop = None, *args, **kwargs) Bases: :py:obj:`shop.modules.abstract.ShopModuleAbstract`, :py:obj:`viur.core.prototypes.List` Abstract Class for all viur-shop sub/nested modules. The implementations should set `moduleName` as class variable, so the final module name for routing it not affected by the name of custom classes. .. py:attribute:: moduleName :value: 'discount' .. py:attribute:: kindName :value: '{{viur_shop_modulename}}_discount' .. py:method:: adminInfo() .. py:method:: search(code = None, discount_key = None) .. py:method:: apply(code = None, discount_key = None) .. py:method:: can_apply(skel, *, cart_key = None, article_skel = None, code = None, context = DiscountValidationContext.NORMAL) .. py:property:: current_automatically_discounts :type: list[viur.shop.types.SkeletonInstance_T[shop.skeletons.DiscountSkel]] .. py:method:: remove(discount_key)