Алгоритм расчета скидок (версия 2.16.3)¶
Скидки бывают двух типов: скидка и наценка. Фактически при выборе наценки - знак скидки инвертируется.
Скидки бывают базовыми и пользовательскими.
Базовые скидки имеются по умолчанию и выключают в себя следующие:
- Наценка за первое место;
- Наценка за второе место;
- Наценка за третье место;
- Наценка за последнее место;
- Скидка за свободное размещение;
- Скидка для бонусного проката;
- Скидка за объем;
- Сезонная скидка;
- Скидка контрагента.
По умолчанию все скидки, кроме скидки за бонусное размещение равны нулю. Скидка за бонусное размещение по умолчанию равна 100%. Пользователь может изменять базовые скидки и создавать новые.
Скидки так же могут быть двух типов: за размещение и за объем. Скидки по размещению применяются непосредственно к самому ролику.
Следующие скидки относятся к скидкам по размещению:
- Наценка за первое место;
- Наценка за второе место;
- Наценка за третье место;
- Наценка за последнее место;
- Скидка за свободное размещение;
- Скидка для бонусного проката.
Остальные базовые и все пользовательские относятся к скидкам за объем.
У скидок по объему можно изменить тип применения: "сложение" и "умножение".
Алгоритм подсчета стоимости с учетом скидок:
- Рассчитывается базовая стоимость с учетом скидки по размещению:
- Для каждого ролика в указанном интервале рассчитывается базовая стоимость;
- К каждой базовой стоимости применяется скидка по размещению (при необходимости);
- Все базовые стоимости с примененными индивидуальными скидками по размещению суммируются.
- Рассчитывается скидка по объему:
- Сумма всех включенных скидок по объему с типом размещения "сложение" умножается на произведение всех включенных скидок по объему с типом размещения "умножение".
- Рассчитывается итоговая стоимость:
- Базовая стоимость с учетом скидки по размещению умножается на скидку по объему.
Пример расчета 1:
Дано:
- Объемная скидка (сложение) - 11%
- Объемная скидка (сложение) - 12%
- Объемная скидка (сложение) - 13%
- Объемная скидка (умножение) - 14%
- Объемная скидка (умножение) - 15%
- Объемная скидка (умножение) - 16%
Решение:
- Сполн - итоговая стоимость ролика с учетом скидок.
- Cбаз - базовая стоимость ролика.
- Dразм - итоговая скидка за размещение.
- Dоб_сум - итоговая объемная скидка (сложение).
- Dоб_умн - итоговая объемная скидка (умножение).
- Dоб - итоговая объемная скидка.
Dоб_сум = (1 - (11% + 12% + 13%)/100)
Dоб_умн = (1 - 14%/100) * (1 - 15%/100) * (1 - 16%/100)
Dоб = Dоб_сум * Dоб_умн
Сполн = Cбаз * Dразм * Dоб_сум * Dоб_умн
= Cбаз * Dразм * (1 - (11% + 12% + 13%)/100) * (1 - 14%/100) * (1 - 15%/100) * (1 - 16%/100)
= Cбаз * Dразм * 0.64 * 0.86 * 0.85 * 0.84 = Cбаз * Dразм * 0.3929856
Пример расчета 2: