Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Включение скидки от суммы заказа


Recommended Posts

Нужно, чтобы цена по скидке включалась НЕ от количества товаров в корзине, а от СУММЫ ЗАКАЗА в корзине.

 

Подскажите, как сделать? Я так понимаю тут собака зарыта

			foreach ($discounts as $discount) {
				$data['discounts'][] = array(
					'quantity' => $discount['quantity'],
					'price'    => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax')))
				);
			}

 

Надіслати
Поділитися на інших сайтах

установить модуль нельзя что ли?
потом заказчик установит че нить и у него там фиг пойми что произойдет
или это типа  на цепи удержать клиента?

Надіслати
Поділитися на інших сайтах


3 minutes ago, AWARO said:

установить модуль нельзя что ли?
потом заказчик установит че нить и у него там фиг пойми что произойдет
или это типа  на цепи удержать клиента?

например какой модуль, я много перерыл и ничего подходящего не нашел.

 

 

Надіслати
Поділитися на інших сайтах

1 minute ago, Einshtein said:

 

я видел этот модуль, нужный функционал в нем отсутствует, если я не прав ткните носом.

к тому же, для этой небольшой функции он дороговато стоит.

Ну и я ищу не модуль, а решение в виде небольшой правки в исходнике, либо небольшую подсказку.

Надіслати
Поділитися на інших сайтах

в модуле вроде есть этот  функционал (уточните у Awaro) и еще много всего, модуль позволяет настраивать закономерности и исключения, что важно при скидках и вручную одной строчкой кода вряд ли обойдетесь, хотя я когда-то нечто подобное для 1.5 делал, но в итоге пришлось дописывать код и он разросся так что его можно было в модуль оформлять. Так что проще купить готовое и сэкономить драгоценное время 


Если нужна подсказка, то отталкивайтесь от  cart total
 

  • +1 1
Надіслати
Поділитися на інших сайтах


12 минут назад, bmite сказал:

я видел этот модуль, нужный функционал в нем отсутствует, если я не прав ткните носом.
к тому же, для этой небольшой функции он дороговато стоит.

Ну и я ищу не модуль, а решение в виде небольшой правки в исходнике, либо небольшую подсказку.

я так и знал что люди не читают а смотрят на картинки

вот картинка, подчеркнул нужное
QiJ6C8ykTRGGI-AqUyepOQ.png

 

 

если этот дорого
то вот попроще

 

Надіслати
Поділитися на інших сайтах


Вот вам бесплатное решение

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=25007&filter_search=discount order&filter_license=0

Берите его за основу и пилите под свою версию и нужды

Надіслати
Поділитися на інших сайтах


6 minutes ago, Djeff78 said:

Вот вам бесплатное решение

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=25007&filter_search=discount order&filter_license=0

Берите его за основу и пилите под свою версию и нужды

спасибо, посмотрю как сделано.

Надіслати
Поділитися на інших сайтах

1 час назад, bmite сказал:

Предложенный модуль мне не подходит. Это как покупать трактор, чтобы окопать одно дерево. Просьба не флудить и не впараивать мне модули.
 

Кто вам здесь флудит гражданин?
вы спросили вам ответили
 почетче задавайте вопросы тогда и ответы будут точными

Цитата

скидка от суммы заказа в корзине


как мы должны по вашему это понимать то?

Надіслати
Поділитися на інших сайтах


6 minutes ago, AWARO said:

Кто вам здесь флудит гражданин?
вы спросили вам ответили
 почетче задавайте вопросы тогда и ответы будут точными


как мы должны по вашему это понимать то?

В админке, у товаров есть вкладка "Скидки". По умолчанию цена скидки "включается" при достижении определенного количество товара в корзине, мне нужно, чтобы цена по скидке "включалась" при определенной сумме в корзине.

 

Проверил модуль по совету  Djeff78 , к сожалению это не то, что нужно. Этот модуль выдает фиксированную скидку, либо % от суммы заказа, мне же нужно другое.

 

Вопрос остается не решенным ....

 

Касательно флуда, конкретно у вас он начался с самого первого сообщения. Я не просил совета "какой модуль установить?" или "как отреагирует заказчик?", потому ваши сообщения никак не относятся к теме и решению проблемы, это и есть флуд.

Надіслати
Поділитися на інших сайтах

А я брал и от Аваро - отличный модуль. Если завтра стрельнет сайт то и второй возьму попробую его в деле на боевом сайте. 

за 390 рублей) 170 грн) я даже в код лесть не буду) - купил всунул и забыл

Надіслати
Поділитися на інших сайтах


37 минут назад, bmite сказал:

мне нужно, чтобы цена по скидке "включалась" при определенной сумме в корзине.

писать свой модуль итога для расчета общей суммы скидки

 

2 часа назад, bmite сказал:

Подскажите, как сделать? Я так понимаю тут собака зарыта 

нет, т.к. будет работать некорректно
после такого применения скидки итоговая сумма корзины уменьшится

Надіслати
Поділитися на інших сайтах


 

Надіслати
Поділитися на інших сайтах

1 час назад, bmite сказал:

Касательно флуда, конкретно у вас он начался с самого первого сообщения. Я не просил совета "какой модуль установить?" или "как отреагирует заказчик?", потому ваши сообщения никак не относятся к теме и решению проблемы, это и есть флуд.

помоему вы здесь флудите не понимая чего просите,
вам тут 100500 раз расписали что к чему и не только я один
именно предвидя это я вам и написал первый пост
Но вы внятно даже объяснить не можете что в итоге хотите
т.к. на ваш вопрос вам куча человек отписалось а вы все продолжаете твердить - не то!
чего не то то? ещё раз позвольте спросить, чего вы хотите получить?
Скидку от суммы заказа в скидках на количество?
ну так соответственно вашим желания отвечу вам
Сделайте это в разделе услуг  там это будет дешевле на много только с другой стороны

Надіслати
Поділитися на інших сайтах


@shoputils ша он и тебя обвинит во флуде и впаривании модулей

Надіслати
Поділитися на інших сайтах


37 minutes ago, AWARO said:

помоему вы здесь флудите не понимая чего просите,
вам тут 100500 раз расписали что к чему и не только я один
именно предвидя это я вам и написал первый пост
Но вы внятно даже объяснить не можете что в итоге хотите
т.к. на ваш вопрос вам куча человек отписалось а вы все продолжаете твердить - не то!
чего не то то? ещё раз позвольте спросить, чего вы хотите получить?
Скидку от суммы заказа в скидках на количество?
ну так соответственно вашим желания отвечу вам
Сделайте это в разделе услуг

Извините, вы читать умеете не додумывая сообщения? Перечитайте мое первое сообщение внимательно.

 

Quote

ша он и тебя обвинит во флуде и впаривании модулей

Так ясное дело, бото-продавцы спамят своими модулями поверхностно прочитав заголовок темы или отправляют в раздел услуг.

Один товарищ предлагает ваш модуль за ~3к (в котором кстати нет нужной мне функции), вы предлагаете модуль по дешевле, но это все равно не то.

 

Как работает стандартная система скидок опенкарта? Заходишь в редактирование товара, ставишь цену БЕЗ скидки *50р*, затем переходишь во вкладку Скидки, указываешь количество *например 5шт* (после которого "включится" пересчет цены), указываешь цену *30р* (по которой пересчитывать). Затем открываешь карточку товара и добавляешь 4 товара, цена будет 4х50=200. добавляем еще 1 товар, цена будет 5х30=150.

 

Мне нужно, чтобы пересчет цены ВКЛЮЧАЛСЯ  не от количества товара, а от СУММЫ ЗАКАЗА в корзине (а не скидка рассчитывалась от суммы заказа).

То бишь я указываю в модуле (или где-то в контроллере - значение переменной) сумму заказа (= 3000 руб), после которой будет пересчет по скидке . Клиент набирает товаров в корзину на 2999р (для этой суммы цена розничная - 50р/шт), затем набирает товаров в корзину на сумму => 3000р (для этой суммы цена уже оптовая - 30р/шт).

 

Ваш модуль и другие аналогичные работают совсем по другому, а именно, от суммы заказа отнимают % либо фиксированную сумму указанную в модуле.

Змінено користувачем bmite
Надіслати
Поділитися на інших сайтах

ах вы тоже оптовик, ну ну
500 товаров
все купили не оптовик т.к. цена не измениться
нужно купить всех по 500 чтоб цена поменялась..
вот ша понятно
извините что мозг вам вынесли

Надіслати
Поділитися на інших сайтах


расставляйте кратное нужной сумме количество товаров

Надіслати
Поділитися на інших сайтах


1 minute ago, AWARO said:

расставляйте кратное нужной сумме количество товаров

так не подойдет, в моем случае оптовик может купить разные товары на сумму >= 3000.

Не подскажите, в каком контроллере или модели срабатывает "переключатель"  скидочных цен (зависящий от количества)?

Надіслати
Поділитися на інших сайтах

@bmite самое быстрое если не хотите особо заморачиваться пропишите 2 строки в system/library/cart/cart.php ну и поменяйте в языковом файле для карточки товара Количество на Сумму. Соответственно нигде в корзине написано не будет что сумма со скидкой указана.

Надіслати
Поділитися на інших сайтах


Решено было так:

в файле system/library/cart.php

 

заменить

				// Product Discounts
				$discount_quantity = 0;

				$cart_2_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "cart WHERE customer_id = '" . (int)$this->customer->getId() . "' AND session_id = '" . $this->db->escape($this->session->getId()) . "'");

				foreach ($cart_2_query->rows as $cart_2) {
					if ($cart_2['product_id'] == $cart['product_id']) {
						$discount_quantity += $cart_2['quantity'];
					}
				}

				$product_discount_query = $this->db->query("SELECT price FROM " . DB_PREFIX . "product_discount WHERE product_id = '" . (int)$cart['product_id'] . "' AND customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND quantity <= '" . (int)$discount_quantity . "' AND ((date_start = '0000-00-00' OR date_start < NOW()) AND (date_end = '0000-00-00' OR date_end > NOW())) ORDER BY quantity DESC, priority ASC, price ASC LIMIT 1");

				if ($product_discount_query->num_rows) {
					$price = $product_discount_query->row['price'];
				}

на

				// Product Discounts
				$discount_quantity = 0;

				$cart_2_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "cart WHERE customer_id = '" . (int)$this->customer->getId() . "' AND session_id = '" . $this->db->escape($this->session->getId()) . "'");
				
				// Блок по кастомным скидкам
				$tmp_price = 0;
				foreach ($cart_2_query->rows as $prod) {
					$objProduct = $this->db->query("SELECT * FROM " . DB_PREFIX . "product WHERE product_id = " . (int)$prod['product_id']);
					$tmp_price += $objProduct->row['price'] * $prod['quantity'];
				}
				// Конец блока по кастомным скидкам

				// Блок по кастомным скидкам
				if ($tmp_price >= 3000) { // условие по кастомным скидкам
					$product_discount_query = $this->db->query("SELECT price FROM " . DB_PREFIX . "product_discount WHERE product_id = '" . (int)$cart['product_id'] . "' AND customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND ((date_start = '0000-00-00' OR date_start < NOW()) AND (date_end = '0000-00-00' OR date_end > NOW())) ORDER BY quantity DESC, priority ASC, price ASC LIMIT 1");

					if ($product_discount_query->num_rows) {
						$price = $product_discount_query->row['price'];
					}
				} // Конец блока по кастомным скидкам

p.s.

форум этот оказался бесполезный, администрация поощряет флуд и спам модулей, которые не относятся к решению задачи.

Надіслати
Поділитися на інших сайтах

2 часа назад, bmite сказал:

форум этот оказался бесполезный, администрация поощряет флуд и спам модулей, которые не относятся к решению задачи.

интересные у вас понятия ))) вам дали направление где что копать. вы не довольны. вам надо было все разжевать, в рот положить и помочь проглотить, то есть решили вам задачу и все расписали ?

п.с вы наоборот должны быть благодарны, благодаря форуму вы включили МОЗГ ) 

Надіслати
Поділитися на інших сайтах


2 hours ago, dedvjbed said:

интересные у вас понятия ))) вам дали направление где что копать. вы не довольны. вам надо было все разжевать, в рот положить и помочь проглотить, то есть решили вам задачу и все расписали ?

п.с вы наоборот должны быть благодарны, благодаря форуму вы включили МОЗГ ) 

из всей ветки всего одно толковое сообщение (перед ответом), и то альтернатива. Меня бы устроил ответ, если бы указали изначально на файл, с которым нужно работать...

Надіслати
Поділитися на інших сайтах

Гість
Ця тема закрита для публікації повідомлень.
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.