Допустим в корзине есть 2 товара, мы добавляем 3 товар!
Как узнать минимальную цену из этих 3 товаров и изменить её?!
Как узнать минимальную цену из этих 3 товаров и изменить её?!
30.06.2015 16:50:52
Допустим в корзине есть 2 товара, мы добавляем 3 товар!
Как узнать минимальную цену из этих 3 товаров и изменить её?! |
|
|
|
01.07.2015 12:54:56
Или хотя бы подскажите как получить всю корзину после добавления товара в неё!
А патом на основе этого изменить определенный товар! Какой событие лучше подойдет для этого?! |
|
|
|
01.07.2015 13:16:19
OnSaleComponentOrderOneStepComplete
Раньше тоже сталкивался с задачей округления цен до целого значения, насколько помню использовал события корзины. Где-то на форуме выкладывал решение - поишите если оч надо. Сейчас цены и скидки буру из внешней базы, поэтому возможно событите, которое написал выше не очень подойтем вам. |
|||
|
|
01.07.2015 14:06:22
А мне нужно после добавления в корзину! Есть вариант с OnBasketAdd но как узнать id корзины?! Или есть какой-нибудь другой вариант?! |
|||
|
|
01.07.2015 14:52:53
Для Вашей задачи не подходит ни одно из событий CSaleBasket
Не надо сверлить зубы через задний проход дрелью от Сваровски
|
|
|
|
01.07.2015 15:04:01
1 Вызываем OnBasketAdd после добавления в корзину. 2 Получаем CSaleBasket::GetList! Выяснем самую низкую цену товара! 3 Далее нужно найти скидку, на этот товар 4 И обновляем CSaleBasket::Update Так же должно получиться?! 1 и 2 вроде как понял сделать, и с 4 тоже вроде нормально! Но вот что насчет 3?! Как применить скидку и как её найти, если допустим они уже создана в админке?! |
|||
|
|
02.07.2015 17:20:08
Так все же, что здесь может быть не так?!
Или может есть другой способ повлиять, на изменение корзины!? |
|
|
|
09.08.2015 13:16:45
Попробуйте событие OnSaleComponentOrderOneStepProcess я когда-то давно прикручивал через него хитрую логику добавления скидок в зависимости от службы доставки, даты, города итп.
Используйте что-то типа
|
|||
|
|
27.08.2019 20:24:56
Господин Жуков, тихо промолчал. Круто сделано, что есть типы цен, а переделывать приходится многое, если у вас несколько градаций цен.
Вероятно админу не известно, что есть 1с-программисты, которые мыслят по-другому и не в курсе как работает битрикс, ведь кроме названия к битриксу вообще никак не относится. В итоге клиент приобретает продукт, в надежде что многие простейшие вещи будут работать из коробки с 1с, а в итоге нужно искать отдельную категорию программистов - битриксоидов. И только если это действительно опытный битриксоид - простейшие вещи решаются. Нелегко. Не интуитивно. Это не вордпресс. Есть типы цен. Понятное дело, уже устаканивашаяся практика многих магазинов давать скидку в зависимости от объема закупки. 1с-программисту проще выгрузить несколько типов цен. Но в битриксе, эти типы цен сделаны для групп пользователей, Карл! В итоге приходится извращаться. Потому как, во-первых - сначала добавляется в корзину товар и надо проверить, есть ли скидки, бонусы, акции, отправить в корзину. А там уже переписать метод getBasketItems, потому как в корзине тоже можно менять количество товара. На хабре висит пост для новичков и ознакомления с хуками в битриксе, на обрабочике OnGetOptimalPrice. Который очень криво работает. Годен только для простых вопросов. Вроде был написан метод Add2BasketByProductID, но как оказалось, толку от него нет. Изобретаем заново велосипед на основе CSaleBasket::Add, собирая цены, скидки, акции, бонусы и только тогда втыкаем туда цену, название товара и так далее. Почему в методе даже нет имени товара??? Добавляешь товар, а вписывать наименование надо отдельно вытаскивая из инфоблока. В общем, маркетологи стараются. Нового ничего не дописывается, а че - пипл хавает. Чего стоит извращение eshop - представляю как php прогеры залипают изучая js-извраты, для кастомизации. Есть вроде концепция компонентов, модулей, но это чудо, заслуживает отдельного повествования. А ведь можно было реализовать в правилах - добавить при условиях выбор типа цены и все - вопрос решен! Сорян - наболело. Разраб в ветке, вместо совета просто человеку ответил - а не получится у вас ничего, красавец. ЗЫ: Походу дописывали ядро и компоненты разные люди, каждый по своему и в итоге получилось как в подписи у админа. |
||||
|
|
|||