• Telegram: mibazarow
  • Whatsapp: MihailBazarow
  • E-mail: mihail@bazarow.ru

Запретить оплату с внутреннего счета, если в корзине есть определенный товар

Внимание! Все сообщения на форуме проходят модерацию. Ваше сообщение появится после проверки.
Запретить оплату с внутреннего счета, если в корзине есть определенный товар

Задача: пользователи могут оплачивать заказы с бонусного счета (штатный внутренний счет), но если в корзине  есть определенные товары - то в этом заказе нужно запретить оплату бонусами.
Улучшенный вариант получения корзины на D7
Код
use Bitrix\Sale;
use Bitrix\Main\Loader;
use Bitrix\Iblock\Elements\ElementTable;
use Bitrix\Iblock\PropertyTable;

Loader::includeModule("sale");
Loader::includeModule("iblock");

// Получаем корзину текущего пользователя
$basket = Sale\Basket::loadItemsForFUser(Sale\Fuser::getId(), SITE_ID);

// Проходим по элементам корзины
foreach ($basket as $basketItem) {
    $productId = $basketItem->getProductId();

    // Получаем значение свойства товара с кодом 'ZAPRESHCHENO_OPLACHIVAT_BONUSAMI'
    $property = PropertyTable::getList([
        'filter' => [
            'IBLOCK_ID' => 4,
            'CODE' => 'ZAPRESHCHENO_OPLACHIVAT_BONUSAMI',
            'IBLOCK_ELEMENT_ID' => $productId
        ],
        'select' => ['VALUE']
    ])->fetch();

    // Проверка на запрет оплаты бонусами
    if ($property && $property['VALUE'] === 'Да') {
        $hidePayBonus = 'Y';
        break; // Прерываем цикл, если нашли хотя бы один товар с запретом
    }
}
$APPLICATION->IncludeComponent(
    "bitrix:sale.order.ajax",
    "new_order",
    array(
       ... параметры компонента ...
        "PAY_FROM_ACCOUNT" =>  $hidePayBonus ? 'N' : 'Y';
        ... параметры компонента ...
    ),
    false
);
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Стоимость разработки на 1С-Битрикс:

Индивидуальная разработка магазина

от 400 000 руб. от 5-ти недель

Разработка магазина на 1С-Битрикс с нуля. Дизайн, сборка и оптимизация производительности под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Запуск сайта на готовом решении

от 100 000 руб. от 7-ми дней

Вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Магазин, быстро запускается на базе одного из 200-та готовых решений.

Мобильное приложение

от 400 000 руб. от 1-го месяца

Разработка кроссплатформенного мобильного приложения, которое не уступает нативным решениям как в производительности, так и пользовательском опыте. Публикуется в AppStore, GooglePlay и RuStore

Сайт компании

от 250 000 руб. от 1-го месяца

Корпоративный сайт с информационными разделами, каталогом товаров или услуг. Включает формы обратной связи карточек каталога, любое количество статичных и динамичных разделов.

Инфресурс

от 300 000 руб. от 5-ти недель

Информационный ресурс любой сложности. Сайт для СМИ, городской портал или многопользовательская доска объявлений. Внутренние форумы, блоги- по необходимости.

Лечение сайтов от вирусов

от 30 000 руб. от 2-х дней

Выполню полную проверку сайта и окружения. В случае обнаружения вирусов проведу полный комплекс лечения проекта и закрытия лазеек.