На одном из проектов потребовалось получить цену товаров/услуг по применению определенного промокода

Выглядело это так:

$discount_price = (array)\CCatalogProduct::GetOptimalPrice($item['ID'], 1, $ar_user_group, 'N', [], SITE_ID, [$promocode]);

Версия ядра 15.0.16.

В итоге на выходе мы получали оптимальную цену на товар независимо от того, по какому промокоду хотели получить цену. Т.е. параметр №7 не учитывался никак.

Решение было принято такое: по промокоду получаем скидку, к которой он привязан. Проверяем активность скидки, да и самого промокода.

После этого используем конструкцию

\CCatalogProduct::CountPriceWithDiscount($item['PRICE']['PRICE'], $item['PRICE']['CURRENCY'], [$ar_discount]);

По переменным все понятно, что приходит на вход.

Комментарии

Оценка:
Защита от автоматических сообщений
CAPTCHA
Введите слово на картинке