0 Пользователей и 1 Гость просматривают эту тему.
  • 27 Ответов
  • 3612 Просмотров
*

magic21

  • Новичок
  • 6
  • 0 / 0
На странице товара отображается следующая строка: Цена: 1 700 руб. 1 581 руб. Скидка: 7%
Отвечает за вывод: $product_price формируемая в www\components\com_virtuemart\themes\default\templates\common\price.tpl.php

На странице оформления заказа указывается цена уже со скидкой: 1581 руб.
копал в basket_b2c.html.php, там такая же переменная $product['product_price'], вроде но вывод совсем другой.
формируется вроде в basket.php

Требуется пронести информацию для клиента о том что цена товара 1700 со скидкой 1581 и скидка 7% в процессе всего заказа а не только на странице с товаром.

Подскажите как можно реализовать, заранее благодарю.
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Присоединюсь к автору, тоже интересует вопрос как показать клиенту скидку при оформлении заказа. в стандартном функционале этого нет. заранее спасибо.
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
посмотрите как $product['product_price'] формируется в shop.browse.php и перенесите в basket.php

я далек от программирования, если Вам не сложно можете расписать для "дурака" какую строку в какой файл вставить. буду Вам очень благодарен.
*

magic21

  • Новичок
  • 6
  • 0 / 0
посмотрите как $product['product_price'] формируется в shop.browse.php и перенесите в basket.php

Спасибо за совет, но к сожалению несколько часов копаний в файлах в том числе и в файле shop.browse.php привели только к выносу мозга, т.к. в php знаний практически нет.
Если не трудно покажите кодом как это всё реализовать, лучше всего откуда взять и куда вствить.

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

Странно, что данная тема не поднималась раньше. ПроЯндексил весь интернет, решения нет.
Реальный случай из жизни:
      В офлайновом магазине продали бабушке товар.
      На товар была скидка.
      В товарный чек бабушке написали цену уже с учётом скидки, бабушка требует сделать ещё, т.к. об этом ни где не написано. Бабушке отказ.
      Бабушка жалуется в службу защиты прав потребителей.
Радует, что бабушек а интернете мало, но всё же....
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
не помню уже - на своих проектах как-то походя делал, посмотрите, например, evisun.ru
По поводу конкретного кода - руки пока не доходят, сори...
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Вот тот самый вариант с корзиной в примере который мне надо реализовать, эххххх увидеть бы код отвечающий за это.
*

magic21

  • Новичок
  • 6
  • 0 / 0
не помню уже - на своих проектах как-то походя делал, посмотрите, например, evisun.ru
По поводу конкретного кода - руки пока не доходят, сори...
Cначала увидел Вас здесь:http://joom-lance.ru, только потом заметил подпись про "Воплощение мечт в VirtueMart. 600 руб/ч"
Может обсудим? Хотел в личку написать, но мне ещё нельзя=)

Вот тот самый вариант с корзиной в примере который мне надо реализовать, эххххх увидеть бы код отвечающий за это.
Нет желания поучавствовать финансово в воплощении мечты!?
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Cначала увидел Вас здесь:http://joom-lance.ru, только потом заметил подпись про "Воплощение мечт в VirtueMart. 600 руб/ч"
Может обсудим? Хотел в личку написать, но мне ещё нельзя=)
Нет желания поучавствовать финансово в воплощении мечты!?

Готов потратить денежку, если beagler согласится. ну и хотелось бы узнать цену вопроса?
*

magic21

  • Новичок
  • 6
  • 0 / 0
Готов потратить денежку, если beagler согласится. ну и хотелось бы узнать цену вопроса?
Он пока не ответил, подождём.
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
попробуйте в basket.php
после
Код
$product_rows[$i]['product_price'] = $GLOBALS['CURRENCY_DISPLAY']->getFullValue($product_price);
написать
Код
$base_price = $ps_product->get_price($cart[$i]["product_id"]);
$base_price = $base_price["product_price"];
$product_rows[$i]['base_price'] = $GLOBALS['CURRENCY_DISPLAY']->getFullValue($base_price);
и в basket_b2b.html.php выводить <?php echo $product['base_price'] ?>
не проверял
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Теперь решение посложнее - с учетом свойств товара.
в ps_product.php меняем
Код
function get_adjusted_attribute_price ($product_id, $description='') {
на
Код
function get_adjusted_attribute_price ($product_id, $description='',$base=false) {
далее ниже меняем
Код
if( !empty($discount_info["amount"])) {
на
Код
if( !empty($discount_info["amount"]) && !$base) {
закрываем, сохраняем.
в basket.php после
Код
$product_rows[$i]['product_price'] = $GLOBALS['CURRENCY_DISPLAY']->getFullValue($product_price);
пишем
Код
$base_price = $ps_product->get_adjusted_attribute_price($cart[$i]["product_id"], $cart[$i]["description"],true);
$base_price = $base_price["product_price"];
$product_rows[$i]['base_price'] = $GLOBALS['CURRENCY_DISPLAY']->getFullValue($base_price);
и в basket_b2b.html.php выводить <?php echo $product['base_price'] ?>
не проверял
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Вывод самой скидки:
в basket.php после нашего добавленого кода
Код
$discount_info = $ps_product->get_discount( $cart[$i]["product_id"] );
if( !empty($discount_info["amount"])) {
switch( $discount_info["is_percent"] ) {
case 0:
$product_rows[$i]['discount_text']= $GLOBALS['CURRENCY_DISPLAY']->getFullValue($discount_info["amount"]);
break;
case 1:
$product_rows[$i]['discount_text']=  $discount_info["amount"].'%';
break;
}
}
и в basket_b2b.html.php выводить <?php echo $product['discount_text'] ?>
не проверял

*

magic21

  • Новичок
  • 6
  • 0 / 0
Теперь решение посложнее - с учетом свойств товара.

не работает=(
Всё таже базовая цена.
Вывод самой скидки:
Тоже по нулям.



Дико извиняюсь, сам напутал.
Решение со свойствами работает на отлично.

Вопрос: if( !empty($discount_info["amount"])) { - встречается 2 раза в ps_product.php В обоих местах поменять?

Отображение скидки почему то не работает.
« Последнее редактирование: 23.02.2012, 16:07:47 от magic21 »
*

magic21

  • Новичок
  • 6
  • 0 / 0
beagler Спасибо! Всё работает.
У Вас опечатка: $product_rows[$i]['discount_text']==  $discount_info["amount"].'%';

Нужно: $product_rows[$i]['discount_text']= $discount_info["amount"].'%';




*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Подскажите пожалуйста, на сайте скидка реализована для групп пользователей. Соответственно когда клиент заходит на сайт он видит цены уже с учетом скидки, как организовать вывод скидки при оформлении заказа?
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Вам нужно подобное сделать в той же функции повыше в блоке
Код
// no set price was set from the attribs
if ($set_price == false) {
$price["product_price"] = $base_price + ($adjustment)*(1 - ($auth["shopper_group_discount"]/100));
}
else {
// otherwise, set the price
// add the base price to the price set in the attributes
// then subtract the adjustment amount
// we could also just add the set_price to the adjustment... not sure on that one.
if (!empty($adjustment)) {
$setprice += $adjustment;
}
$setprice *= 1 - ($auth["shopper_group_discount"]/100);
$price["product_price"] = $setprice;
}
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Вам нужно подобное сделать в той же функции повыше в блоке
Код
// no set price was set from the attribs
if ($set_price == false) {
$price["product_price"] = $base_price + ($adjustment)*(1 - ($auth["shopper_group_discount"]/100));
}
else {
// otherwise, set the price
// add the base price to the price set in the attributes
// then subtract the adjustment amount
// we could also just add the set_price to the adjustment... not sure on that one.
if (!empty($adjustment)) {
$setprice += $adjustment;
}
$setprice *= 1 - ($auth["shopper_group_discount"]/100);
$price["product_price"] = $setprice;
}

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

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
спасибо огромное. жду.
у меня нет кошельков в инете, может в личку свой мобильный скинешь, я тебе на него денег закину за помощь.
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Да ладно.

В этой же функции get_adjusted_attribute_price
выше, вместо
Код
// no set price was set from the attribs
if ($set_price == false) {
$price["product_price"] = $base_price + ($adjustment)*(1 - ($auth["shopper_group_discount"]/100));
}
else {
// otherwise, set the price
// add the base price to the price set in the attributes
// then subtract the adjustment amount
// we could also just add the set_price to the adjustment... not sure on that one.
if (!empty($adjustment)) {
$setprice += $adjustment;
}
$setprice *= 1 - ($auth["shopper_group_discount"]/100);
$price["product_price"] = $setprice;
}

пишем

Код
if(!$base) {
// no set price was set from the attribs
if ($set_price == false) {
$price["product_price"] = $base_price + ($adjustment)*(1 - ($auth["shopper_group_discount"]/100));
}
else {
// otherwise, set the price
// add the base price to the price set in the attributes
// then subtract the adjustment amount
// we could also just add the set_price to the adjustment... not sure on that one.
if (!empty($adjustment)) {
$setprice += $adjustment;
}
$setprice *= 1 - ($auth["shopper_group_discount"]/100);
$price["product_price"] = $setprice;
}
}
*

BuRuNDuKoFF

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
в каком файле это вписывать? в basket.php?
*

Vitek

  • Захожу иногда
  • 185
  • 0 / 0
Подскажите как указать в категории и в карточки товара что к цене товара применена скидка группы покупателей?
А то если сделать скидку группе покупателей цены отображаются уже с учетом скидке, а хотелось бы чтоб отображались так же как обычная скидка на товар.
*

legionnaire

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Подскажите как указать в категории и в карточки товара что к цене товара применена скидка группы покупателей?
А то если сделать скидку группе покупателей цены отображаются уже с учетом скидке, а хотелось бы чтоб отображались так же как обычная скидка на товар.
хотелось бы тоже узнать что нужно поменять в кодах для этого)
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Добрый день, beagler!

Подскажите, пожалуйста был и здесь и на Вашем сайте (http://beagler.ru/virtuemart/vyvod-skidki-i-tseny-so-skidkoj-v-korzine-k-kazhdomu-tovaru.html), но результат один и тот же:
<td><?php echo $product['base_price'] ?></td> - цена со скидкой
<td><?php echo $product['discount_text'] ?></td> - ничего не выводится
Если не сложно, гляньте файлы в приложении.
« Последнее редактирование: 20.05.2013, 02:20:35 от faraon_x »
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

spsyper

  • Осваиваюсь на форуме
  • 39
  • 0 / 0
Цитировать
Подскажите, пожалуйста был и здесь и на Вашем сайте (http://beagler.ru/virtuemart/vyvod-skidki-i-tseny-so-skidkoj-v-korzine-k-kazhdomu-tovaru.html), но результат один и тот же:
<td><?php echo $product['base_price'] ?></td> - цена со скидкой
<td><?php echo $product['discount_text'] ?></td> - ничего не выводится

у меня таже проблема, сделал всё, что написано выше, по инструкции перепроверил несколько раз, вродебы всё - верно сделано, но цена без скидки не выводится, показует всеравно цену со скидкой, подскажите плз что можно сделать, спасибо.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Добавить модуль в товар

Автор Tokyo

Ответов: 2
Просмотров: 1786
Последний ответ 11.05.2015, 20:43:32
от tierex
[Решено] Скидки на зависимые товары

Автор Serpent19

Ответов: 4
Просмотров: 1431
Последний ответ 04.06.2014, 15:47:15
от One
Свойства товара без подтягивания скидки

Автор One

Ответов: 0
Просмотров: 1139
Последний ответ 13.05.2014, 16:53:53
от One
Отображение наименований товара в списке заказов (order.order_list)

Автор Wolverine

Ответов: 3
Просмотров: 1163
Последний ответ 16.12.2013, 16:26:27
от fsv
СКИДКИ от суммы в админке

Автор skyscraper

Ответов: 91
Просмотров: 27406
Последний ответ 08.12.2013, 14:00:47
от Naslednik