Чтобы получить купон и сумму его скидки в системе 1C-Bitrix, вам потребуется использовать модуль "Маркетинг и продажи" (Sale). В этом модуле есть специальный класс CCatalogDiscountCoupon, который предоставляет методы для получения информации о купонах и скидках.
1. Подключение модуля:
Для начала работы с модулем "Маркетинг и продажи" необходимо подключить его в файле php:
<?php require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); CModule::IncludeModule("sale"); ?>
2. Получение информации о купоне и скидке:
Чтобы получить информацию о купоне и его скидке, вы можете использовать метод GetCoupon() класса CCatalogDiscountCoupon:
<?php $coupon = 'COUPON_CODE'; $couponInfo = CCatalogDiscountCoupon::GetCoupon($coupon); if (!$couponInfo) { echo "Купон не найден"; } else { echo "Купон: " . $couponInfo["COUPON"] . "<br/>"; echo "Скидка: " . $couponInfo["DISCOUNT_VALUE"] . "<br/>"; } ?>
В этом примере мы передаем код купона в переменную $coupon и вызываем метод GetCoupon(), который возвращает информацию о купоне в виде массива. Затем мы проверяем, найден ли купон и выводим его код и сумму скидки.
3. Применение купона для расчета скидки:
Для применения купона и расчета скидки, вы можете использовать метод GetDiscountByCoupon() класса CCatalogProduct и передать в него код купона и ID товара:
<?php $coupon = 'COUPON_CODE'; $productId = 1234; $discountValue = CCatalogProduct::GetDiscountByCoupon($coupon, $productId); if ($discountValue === false) { echo "Произошла ошибка при расчете скидки"; } else if ($discountValue == 0) { echo "Купон не применен"; } else { echo "Скидка: " . $discountValue . "<br/>"; } ?>
В этом примере мы передаем код купона в переменную $coupon и ID товара в переменную $productId. Затем мы вызываем метод GetDiscountByCoupon(), чтобы получить сумму скидки для данного товара с применением купона. Если возвращаемое значение равно false, значит произошла ошибка. Если значение равно 0, значит купон не применен. В противном случае, выводится сумма скидки.
Таким образом, для получения купона и суммы его скидки в системе 1C-Bitrix, вам потребуется подключить модуль "Маркетинг и продажи", использовать класс CCatalogDiscountCoupon для получения информации о купоне и его скидке, а также класс CCatalogProduct для применения купона и расчета скидки на товары.