Класс, отвечает за применение скидок к корзине из различных источников Реализует стратегию комбинированного применения скидок
Открытые члены | |
getCartItemFinalDiscount ($cart_item) | |
getCartItemBaseCost (AbstractCartItem $cart_item) | |
getProductBaseCost (Product $product, int $offer_id=null) | |
Открытые статические члены | |
static | instance () |
static | handbookDiscountCombination () |
Поля данных | |
const | DISCOUNT_COMBINATION_MAX = 'max' |
const | DISCOUNT_COMBINATION_MIN = 'min' |
const | DISCOUNT_COMBINATION_SUM = 'sum' |
Защищенные члены | |
calculateDiscountSum (array $discounts, $base_cost) | |
getDiscountCombinationRule () | |
setDiscountCombinationRule (string $discount_combination_rule) | |
Защищенные данные | |
$discount_combination_rule | |
|
protected |
Расчитывает суммарный размер скидки на основе переданного массиве скидок
AbstractDiscount[] | $discounts - массив скидок | |
float | $base_cost | - базовая цена, от которой рассчитывается скидка |
getCartItemBaseCost | ( | AbstractCartItem | $cart_item | ) |
Возвращает базовую цену на товарную позицию
AbstractCartItem | $cart_item | - товарная позиция |
getCartItemFinalDiscount | ( | $cart_item | ) |
Возвращает итоговую скидку на товарную позицию
AbstractCartItem | $cart_item |
|
protected |
Возвращает правило совмещения скидок
getProductBaseCost | ( | Product | $product, |
int | $offer_id = null |
||
) |
Возвращает базовую цену товара
Product | $product | - товар |
int | $offer_id | - id комплектации |
|
static |
Справочник правил сочетания скидок
|
static |
Возвращает экземпляр класса
|
protected |
Устанавливает правило совмещения скидок
string | $discount_combination_rule |
|
protected |
const DISCOUNT_COMBINATION_MAX = 'max' |
const DISCOUNT_COMBINATION_MIN = 'min' |
const DISCOUNT_COMBINATION_SUM = 'sum' |