Dithard Опубликовано 31 марта, 2018 Жалоба Поделиться Опубликовано 31 марта, 2018 Здравствуйте. Подскажите пожалуйста как сделать так, чтобы при выборе способа доставки "Самовывоз" делалась скидка на заказ в размере 10%. Выбор способа доставки реализован на radio <div id="deliveries"> <div class="deline"> <div class="chk"> <input type="radio" name="delivery_id" value="1" checked="" id="deliveries_1"> <label for="deliveries_1"> Курьерская доставка по Москве </label> </div> </div> <div class="deline"> <div class="chk"> <input type="radio" name="delivery_id" value="2" id="deliveries_2"> <label for="deliveries_2"> Самовывоз </label> </div> </div> <div class="clear"></div> </div>Заранее благодарен за помощь. Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 31 марта, 2018 Жалоба Поделиться Опубликовано 31 марта, 2018 можно если вы не пользуетесь скидками пользователей ($user->discount) в view/CartView.php добавить ПОСЛЕ // Скидка $cart = $this->cart->get_cart(); $order->discount = $cart->discount; строку if($order->delivery_id==2) $order->discount = 10; Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 1 апреля, 2018 Жалоба Поделиться Опубликовано 1 апреля, 2018 Может работать неверно, если в админке на странице заказе изменить способ доставки. Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 1 апреля, 2018 Жалоба Поделиться Опубликовано 1 апреля, 2018 Может работать неверно, если в админке на странице заказе изменить способ доставки. да, нужно дописывать и в админке или менять вручную поле скидка Цитата Ссылка на сообщение Поделиться на другие сайты
Dithard Опубликовано 1 апреля, 2018 Автор Жалоба Поделиться Опубликовано 1 апреля, 2018 А в корзине пользователю как вывести?В на сайте регистрации нет Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 2 апреля, 2018 Жалоба Поделиться Опубликовано 2 апреля, 2018 Если Вы хотите выводить в корзине свой % скидки, то это не совсем просто В ПРИНЦИПЕ. И, скорее всего, породит еще массу проблем. Потому что в корзине покупатель выбирает способ доставки, от которого этот % зависит. Значит, надо его менять как-то на ходу. Если захотите пользователю вывести стоимость с учетом скидки, еще добавочно что-то делать - надо корзину перегружать при выборе способа доставки либо что-то через JS менять... Цитата Ссылка на сообщение Поделиться на другие сайты
Dithard Опубликовано 2 апреля, 2018 Автор Жалоба Поделиться Опубликовано 2 апреля, 2018 (изменено) Может создать отдельную функцию php i обращаться к ней используя Ajax? Эта функция, если самовывоз, создает сессию, а в файле Order View.php проверяется эта сессия, если есть то учитывается скидка. Если же выбран самовывоз то выполняется другая функция, которая проверяет есть ли сессия, и если есть то удаляет ее.И еще одно, подскажите пожалуйста как при отправке заказа в CartView.php проверить общую стоимость? Это нужно, чтобы скидка на самовывоз работала только от определенной суммы. Изменено 2 апреля, 2018 пользователем Dithard Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 2 апреля, 2018 Жалоба Поделиться Опубликовано 2 апреля, 2018 Может создать отдельную функцию php i обращаться к ней используя Ajax? Эта функция, если самовывоз, создает сессию, а в файле Order View.php проверяется эта сессия, если есть то учитывается скидка. Если же выбран самовывоз то выполняется другая функция, которая проверяет есть лисессия, и если есть то удаляет ее. Конечно, можно. Пробуйте... И еще одно, подскажите пожалуйста как при отправке заказа в CartView.php проверить общую стоимость? Это нужно, чтобы скидка на самовывоз работала только от определенной суммы. Пример можно легко найти в том же файле: // Стоимость доставки $delivery = $this->delivery->get_delivery($order->delivery_id); if(!empty($delivery) && $delivery->free_from > $order->total_price) { $this->orders->update_order($order->id, array('delivery_price'=>$delivery->price, 'separate_delivery'=>$delivery->separate_payment)); } Цитата Ссылка на сообщение Поделиться на другие сайты
Dithard Опубликовано 2 апреля, 2018 Автор Жалоба Поделиться Опубликовано 2 апреля, 2018 Вы неправильно меня поняли, я имел в виду общую стоимость товаров, которые в корзине. Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 2 апреля, 2018 Жалоба Поделиться Опубликовано 2 апреля, 2018 $order->total_price или $cart->total_price Цитата Ссылка на сообщение Поделиться на другие сайты
Dithard Опубликовано 2 апреля, 2018 Автор Жалоба Поделиться Опубликовано 2 апреля, 2018 Спасибо за помощь! Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.