Appearance
Формирование ОЦ
Для формирования ОЦ написан скрипт www/cron/good_price_sync.php, который запускается 4 раза в сутки: 03:39, 09:39, 16:39 и 20:39.
Поле price_limit (То, что мы называем скидкой ОЦ на сборку), оказывается, влияет и на ОЦ не сборных товаров. Подробнее в описании алгоритма работы скрипта.
Алгоритм скрипта
- Выбираются все товары с положителной
РРЦ, не в Аду, у которых полеprice_limit > 0(Мы это называем скидкойОЦна сборку)Поле price_mod и price_limit
- Если товар сборный - он пропускается
- Если у производителя товара свойство
PL=Выбратьи значение > 0, а у товара не выставлена цена автопрайса (fair_price) -ОЦсчитается по формуле
ОЦ = РРЦ*PLPL у производителя
Если
- У производителя товара
PL=Не меньшеили полеprice_mod(То, что в новой карточке у сборных товаров называется "Не изменять цену при понижении цены компонентов") =Не ниже(Галочка включена) - Поле товара
price_limit > 0(Скидка ОЦ на сборку), - Текущая
ОЦменьшеРРЦ*price_limit РРЦ > 0
то
- Если
валюта товаране вруб, а цена товара в валютеcurrency_price*валюта товара>РРЦ*price_limit- товар пропускается - Если у товара указана максимальная скидка и если
РРЦ*price_limit > РРЦ* Маскимальная скидка- товар пропускается - Иначе
ОЦрассчитывается по формуле
ОЦ = РРЦ*price_limit- У производителя товара
Если
- Поле
price_mod=Равно(То, что в новой карточке у сборных товаров называется "Не изменять цену при понижении цены компонентов" - галочка выключена) - Текущая
ОЦне равнаРРЦ*price_limit РРЦ > 0- Поле товара
price_limit > 0(Скидка ОЦ на сборку),
- Поле
то ОЦ рассчитывается по формуле
ОЦ = РРЦ*price_limit
