cop2000 Опубликовано 19 февраля, 2017 Жалоба Поделиться Опубликовано 19 февраля, 2017 (изменено) Доброго дня!Подскажите, поймал такую беду...По необходимости делаю манипуляции (не глобальные) в Cart.php.Цель просчёт отдельной скидки под отдельный товар...Глобально ничего не меняю вроде бы как...На сайте при формировании заказ итоговая цена просчитывается правильно (с учётом скидки на товар), чтобы с корзиной не делал...НО при нажатии кнопки "оформить заказ" и переходе естественно в order итоговая цена оказывается без учёта скидки, которая просчитывается в корзине... Переменная $cart->total_price в корзине правильная, и она же должна в order передаваться, разве не так ?? по факту нет...И в базу соответственно кривую цену пишет... без скидки...Подскажите что я упускаю и где рыть? Спасибо! Изменено 19 февраля, 2017 пользователем cop2000 Цитата Ссылка на сообщение Поделиться на другие сайты
Решение Kosjak76 Опубликовано 19 февраля, 2017 Решение Жалоба Поделиться Опубликовано 19 февраля, 2017 Нет, не так.Рыть надо api/Orders.php функцию update_total_priceВ ней считается цена исходя из цены покупкиИли сделать по-другому и в view/CartView.php изменить вот это место // Добавляем товары к заказу foreach($this->request->post('amounts') as $variant_id=>$amount) { $this->orders->add_purchase(array('order_id'=>$order_id, 'variant_id'=>intval($variant_id), 'amount'=>intval($amount))); } И сделать передачу цены в orders Цитата Ссылка на сообщение Поделиться на другие сайты
cop2000 Опубликовано 19 февраля, 2017 Автор Жалоба Поделиться Опубликовано 19 февраля, 2017 Нет, не так.Рыть надо api/Orders.php функцию update_total_priceВ ней считается цена исходя из цены покупкиИли сделать по-другому и в view/CartView.php изменить вот это место // Добавляем товары к заказу foreach($this->request->post('amounts') as $variant_id=>$amount) { $this->orders->add_purchase(array('order_id'=>$order_id, 'variant_id'=>intval($variant_id), 'amount'=>intval($amount))); } И сделать передачу цены в ordersспасибо!по идее вот так: // Добавляем товары к заказу foreach($this->request->post('amounts') as $variant_id=>$amount) { $this->orders->add_purchase(array('order_id'=>$order_id, 'variant_id'=>intval($variant_id), 'amount'=>intval($amount))); } $this->orders->update_order($order->id, array('total_price'=>$cart->total_price)); $order = $this->orders->get_order($order_id); Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.