Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Скидки

00 голосов
2
Как в битриксе реализовать такую систему скидок?

Раздел1

свыше 10000 руб. – 1%,
свыше 20000 руб. – 2%
свыше 30000 руб. – 3%,
свыше 40000 руб. – 4%
свыше 50000 руб. – 5%

Раздел2

свыше 1000 руб. – 3%,
свыше 3000 руб. – 4%
свыше 5000 руб. – 5%,
свыше 7000 руб. – 6%
свыше 9000 руб. – 7%

Раздел3

свыше 1000 руб. – 3%,
свыше 2000 руб. – 4%
свыше 3000 руб. – 5%,
свыше 5000 руб. – 6%
свыше 7000 руб. – 7%
спросил 16 Апр, 13 от NextGen (620 баллов)

2 Ответы

00 голосов
У меня такая логика по этому вопросу, может быть она ошибочна но все же изложу

1. Вытаскиваем id раздела для каждого элемента

Код
$res = CIBlockElement::GetElementGroups($arBasketItems["PRODUCT_ID"]);
if($ar_res = $res->GetNext()){  
 $ar_res1 = $ar_res[IBLOCK_SECTION_ID];
  }
   print_r($ar_res1); 


я делала так, но надо на раздел выше

2. создаем 5 скидок на заказ

3. И пишем условие, пока не знаю как, думаю над этим

4. Если элементы относятся к разделу 1, то оставляем так как есть
Если элементы относятся к разделу 2, то обновляем скидку с помощью след.функции
Для третьего так же
Код
 $arFields = Array(
                     "LID" => s1, 
                     "ACTIVE" => "Y", 
                     "PRICE_FROM" => 2000, 
                     "PRICE_TO" => 4000, 
           "DISCOUNT_VALUE" => 40,
           "DISCOUNT_TYPE" => "P", 
        
);

$ibp = new CSaleDiscount();
$ibp->Update(1, $arFields); 


5. Надо еще продумать если будут 2 раздела попадать под скидки

И второй вариант, похож на первый

1. Вытаскиваем id раздела для каждого элемента
2. Создать 15 различных скидок на заказ
3. Поставить условие если первый раздел, то применять скидки с id=1,2,3,4,5
Если второй, то 6,7,8,9,10
Если третий, то 11,12,13,14,15

Что вы об этом думаете?!
ответил 16 Апр, 13 от NextGen (620 баллов)
00 голосов
тоже интересует данный вопрос
ответил 16 Апр, 13 от jolinar (140 баллов)

Похожие вопросы

0 голосов
2 ответов
+1 голос
1 ответ
спросил 08 Дек, 15 от skyglider (340 баллов)
0 голосов
1 ответ
спросил 07 Янв, 14 от Kiriel (2,010 баллов)
0 голосов
9 ответов
спросил 15 Май, 13 от Koldyn (200 баллов)
0 голосов
1 ответ
спросил 11 Март, 13 от missa (180 баллов)