Другие модули на выбор

Сотбит: Индивидуальные цены

Стоимость: руб.
Этот компонент мы сможете использовать только при наличии лицензии. Подходящие редакции:

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

После установки модуля вам потребуется модифицировать вывод цен в вашем шаблоне. Для этого в модуле предусмотрена специальная функция.
Для работы индивидуальных цен загрузите в Highload-блок таблицу следующего содержания:
- Идентификатор товара (рекомендуется XML_ID)
- Индивидуальная цена на товар
- Валюта
- Идентификаторы пользователя (неограниченное количество)
Механизм срабатывания индивидуальных цен имеет возможность отслеживать 2 вида параметров:
- Свойства текущего пользователя
- Данные из сессии

Установка плейсхолдеров:

В решении реализовано два метода установки плейсхолдеров

  1. SotbitPrivatePriceMain::setPlaceholder( идентификатор_товара, текущая_цена_товара);

    1. Метод вернет индивидуальную цену, если для товара, по указанному идентификатору (ID товара, либо XML_ID товара) в таблице индивидуальных цен будет найдено совпадение

    2. Метод вернет цену товара согласно настройкам форматирования валюты, например 10 990 руб.

    3. Метод вернет цену в валюте каталога, согласно настроенному курсу валют.

    4. В случае, если для указанного “идентификатор_товара” не будет найдена индивидуальная цена, метод вернет “текущая_цена_товара”

  2. SotbitPrivatePriceMain::setPlaceholderValue( идентификатор_товара, текущая_цена_товара);

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

Пример:

$privatePrice = SotbitPrivatePriceMain::setPlaceholder( $item['ID'], $price['HIGHEST_PRICE']);

$privatePriceValue = SotbitPrivatePriceMain::setPlaceholderValue($item['ID'], $price['HIGHEST_PRICE']);

Для интеграции указанных методов потребуется произвести замену вывода цен в компонентах:

  1. catalog.item

  2. catalog.element

  3. прочие компоненты с отображением цены товара

Административные настройки:

Название

Описание

Включение работы модуля

Активирует либо деактивирует обработку индивидуальных цен.

HL-блок

В поле указывается Highload блок, содержащий в себе информацию по индивидуальным ценам

Режим работы

В поле доступен выбор из двух режимов:

  1. Через данные пользователя

  2. Через данные сессии

Данная настройка переопределяет пункт “Дополнительные параметры сортировки”

Ключ товара

В данном поле требуется указать ключ по которому будет идентифицироваться товар:

  1. PRODUCT_ID

  2. PRODUCT_XML_ID

Колонка из HL-блока содержащая ключ товара

В поле указывается колонка HL-блока хранящая в себе ключи товаров для которых предоставляется индивидуальная цена

Колонка из HL-блока содержащая значение цены

В поле указывается колонка HL-блока хранящая в себе индивидуальные цены товаров

Колонка из HL-блока содержащая тип валюты

В поле указывается колонка HL-блока хранящая в себе тип валюты. При этом валюту в HL-блоке требуется указывать в формате указанном в списке валют в колонке “Валюта”

/bitrix/admin/currencies.php?lang=ru

Дополнительные параметры сортировки

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

Пример использования дополнительных параметров сортировки

Самым простым вариантом сопоставления индивидуальной цены с клиентом будет указание ID пользователя в системе.

При необходимости предоставления индивидуальной цены группе пользователей, например сотрудникам конкретной организации, потребуется явно идентифицировать таких пользователей, например по ИНН компании.

  1. Для этого можно создать пользовательское поле “ИНН компании” в настройках пользователей, после чего указать колонку HL-блока, в которой будет происходить поиск совпадений.

  2. В реализации решения предусмотреть добавление для пользователей ключа сессии, хранящий требуемый идентификатор компании, например по ИНН. Включить режим работы модуля по ключам сессии, после чего указать в поле дополнительных параметров сортировки колонку HL-блока, отвечающую, например за ИНН, и указать ключ сессии, который хранит данные для сравнения. При этом важно указать ключ сессии в полном совпадении регистра.

Пример использования ключа сессии:

Допустим в файле header.php присутствует метод, который определяет ИНН компании для текущего пользователя, после чего устанавливает для этого пользователя параметр сессии.

$_SESSION[‘USER_INN’] = ‘1234567890’;

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