По договоренности
Общее описание задачи:
Каждый товар должен иметь 3 типа цен. Цена по умолчанию (розничная), цена для заказов от 25 тыс. руб, цена для заказов от 100 тыс. руб.
В зависимости от общей суммы заказа, тип цены товара должен меняться. В корзине производится расчет с учетом советующего типа цен.
Цены товара могут быть в разной валюте (руб, USD, EUR). Цены в корзине и общая сумма заказа должны быть в единой валюте руб.
Для Битрикс возможно реализовать выбор цен в корзине через переключение пользователя в группу с необходимым типом цен.
Алгоритм:
Дано: три типа цен: цена 1 (группа пользователей 1), цена 2 (группа пользователей 2), цена 3 (группа пользователей 3). Цены могут быть заданы в разной валюте.
При загрузке каждой страницы и (или) при изменении набора товаров в корзине (добавление, удаление, изменение количества) происходит:
1. Вычисление общей суммы заказа по ценам 1.
2. В зависимости от общей суммы заказа по ценам 1 (условие) пользователю назначается группа 1, 2 или 3.
3. В Корзине (в том числе информер корзины) и при оформлении заказа: Цены и общая сумма заказа используются в соответствии с назначенной группой
Возможно использование OnGetOptimalPrice для получения минимальной цены для пользователя.
Требования:
Стандартный функционал модулей Битрикс не должен меняться. Необходима реализация в отдельных подключаемых файлах.
Код должен быть с понятными комментариями.