Вот такую задачу не могу решить:
[I]Есть купон-скидка на первый заказ пользователя. У тестового пользователя есть один отмененный заказ, но скидка должна все равно учитываться. [/I]
В скопированном sale.order.ajax компоненте я пытался заново пересчитать скидки в методе класс [B]SaleOrderAjax->[/B][B]getJsDataResult()[/B] :
(проверял варианты и по корзине, и по "заказу", что в классе есть)
[CODE]DiscountCouponsManager::init();
DiscountCouponsManager::clear(true);
DiscountCouponsManager::add($oneCoupon['COUPON']);
// $discounts = \Bitrix\Sale\Discount::buildFromBasket($basket, new Sale\Discount\Context\Fuser(Fuser::getId()));
$discounts = \Bitrix\Sale\Discount::buildFromOrder($this->order);
$discounts->calculate();
$discounts->save();
$discountResult = $discounts->getApplyResult();
$this->obtainBasket(); #
// $basket->refresh();
// $basket->save();
$arErrors = DiscountCouponsManager::getErrors();
[/CODE]upd: пользователи только авторизированные заказ делают.
Пример с [URL=https://dev.1c-bitrix.ru/api_d7/bitrix/sale/classes/discountcouponsmanager/add.php]https://dev.1c-bitrix.ru/api_d7/bitrix/sale/classes/discountcouponsmanager/add.php[/URL] , в комментарии который, хоть и устаревший, но все равно не смог под себя заставить работать применение купона.
Подскажите, пожалуйста, куда можно еще посмотреть.
Заранее благодарен
[I]Есть купон-скидка на первый заказ пользователя. У тестового пользователя есть один отмененный заказ, но скидка должна все равно учитываться. [/I]
В скопированном sale.order.ajax компоненте я пытался заново пересчитать скидки в методе класс [B]SaleOrderAjax->[/B][B]getJsDataResult()[/B] :
(проверял варианты и по корзине, и по "заказу", что в классе есть)
[CODE]DiscountCouponsManager::init();
DiscountCouponsManager::clear(true);
DiscountCouponsManager::add($oneCoupon['COUPON']);
// $discounts = \Bitrix\Sale\Discount::buildFromBasket($basket, new Sale\Discount\Context\Fuser(Fuser::getId()));
$discounts = \Bitrix\Sale\Discount::buildFromOrder($this->order);
$discounts->calculate();
$discounts->save();
$discountResult = $discounts->getApplyResult();
$this->obtainBasket(); #
// $basket->refresh();
// $basket->save();
$arErrors = DiscountCouponsManager::getErrors();
[/CODE]upd: пользователи только авторизированные заказ делают.
Пример с [URL=https://dev.1c-bitrix.ru/api_d7/bitrix/sale/classes/discountcouponsmanager/add.php]https://dev.1c-bitrix.ru/api_d7/bitrix/sale/classes/discountcouponsmanager/add.php[/URL] , в комментарии который, хоть и устаревший, но все равно не смог под себя заставить работать применение купона.
Подскажите, пожалуйста, куда можно еще посмотреть.
Заранее благодарен