Несколько курсов валют в VirtueMart 3

  • 7 Ответов
  • 573 Просмотров

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

*

Оффлайн Litop

Приветствую всех.
Ломаю голову над решением довольно сложной задачи. Подробнее...
Магазин на VirtueMart 3  в системе две валюты $ и UAN. Допустим есть товар 1 со стоимостью 1$  и соответственно 26 UAN - обменный курс = 26
В магазине главной валютой выставлен $ по причине не стабильности курсов и прайсов поставщиков загружаемых на автомате в $.
Данные задачи:
Поставщик 1 предлагает товар за 1$ по курсу 26UAN, а поставщик 2 товар за 1$ по 25UAN.
Получается, что по курсу магазина  товар 1 = 26UAN  и товар 2 = 25UAN .
Но каким то *чудесным* образом нужно сделать, что бы было товар 1 = 26UAN, а товар 2 = 25UAN,
Другими словами для поставщика 2 цены должны пересчитываться по отличному от системного курсу.

Приветствуются любые здравые мысли по данному поводу. Возможно это можно решить через Налоги и правила расчета?  ! ! !
Всех заранее благодарю за помощь.

*

Оффлайн gartes

Re: Несколько курсов валют в VirtueMart 3
« Ответ #1 : 16.11.2016, 05:40:07 »
Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:

 Доллар для поставщика №1 и Доллар для поставщика №2

Соответственно разный курс.

*

Оффлайн Litop

Re: Несколько курсов валют в VirtueMart 3
« Ответ #2 : 16.11.2016, 06:05:21 »
Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:
.
 Доллар для поставщика №1 и Доллар для поставщика №2

Соответственно разный курс.
В том то и прикол, что основная валюта $ и курс выставлен так - $= 1 а UAN=26. Импорт прайсов происходит в $. В вашем варианте основной должна быть UAN и курс должен задаватся по принципу - сколько долларов стоит онин UAN (чото вроде 0,04) А здесь обратная схема если я создам ещё одну валюту $ я не смогу ей курс задать. Хотя если прокопатся, то курс может быть меньше =1 ..... Нужно покопать в этом направлении. Благодарю за подсказку. О результате отпишусь. .

*

Оффлайн gartes

Re: Несколько курсов валют в VirtueMart 3
« Ответ #3 : 16.11.2016, 10:42:32 »
Цитировать
Хотя если прокопатся, то курс может быть меньше =1
Ну да Вы обязательно прокопайтесь. !  ;D
Это тут математика для 3 класса .

Вам ваще не важно в какой единице ваш контрагент грузит товар...
Это в обще могут быть и не доллары.
Ну вот вы представьте что 1 поставщик грузит в евро  а 2 отпускает Вам товар в (зайцах Бел.)
А то что вы загружаете товар на основании доллара то это тоже только цифра суммы + индикатор валюты.

Не пойму что тут сложного.
Цитировать
В том то и прикол, что основная валюта $
Успехов Вам !!)

*

Оффлайн Litop

Re: Несколько курсов валют в VirtueMart 3
« Ответ #4 : 17.11.2016, 16:29:34 »
Спасибо *gartes* за указанное направление  *DRINK*
Опыты с дополнительными валютами и курсами привели к полному хаосу. Главной проблемой стало то, что цена привязывается к основной валюте USD с курсом = 1 (прайс поставщика).
На сайте отображается таким образом :
Дальше задействовано правило модификатор цены и выводится цена со скидкой. Соответственно к модификатору привязывается вывод цены в UAN,
Так как вирт не позволяет штатными методами выводить цену в двух валютах, а селектором валют никто не пользуется вывод цены в UAN реализован в шаблоне вот так:
<div class="price_ua"><?php echo '<b>'.$this->currency->roundForDisplay($this->product->prices['salesPrice'],199,1,false).' грн</b>';?></div> 199- ID валюты (смотрим в базе данных virtuemart_currencies ), грн - желаемое значение.


Решение данного вопроса №1. Создать правило расчёта для конкретного производителя * -%*  применимое только к валюте UAN. Математика для второго класса помогла вытащить разницу % в курсах.
Во всех товарах производителя пришлось сменить модификатор, что привело к потере отображения основной цены, но остался вывод цены со скидкой в USD и правильно пересчитанная цена в UAN.
Решение данного вопроса №2
Создаём дополнительную валюту с нужным курсом .
Создаём дополнительный шаблон для товаров требуемого производителя и уже в нём вставляем
<div class="price_ua"><?php echo '<b>'.$this->currency->roundForDisplay($this->product->prices['salesPrice'],199,1,false).' грн</b>';?></div> И вносим все остальные требуемые изменения (дизайны и тд ).
Для этих целей сделал специальный инсталятор (выбросил  мусор из доп шаблона virtuemart)
скачать здесь - https://yadi.sk/d/q3fHGyGWoKNBj
После установки у Вас появятся дополнительный шаблон главной страницы, категории и карточки товара с названием *tovar* (название можете сменить в архиве перед установкой)
Этот *костыль* порешает вывод региональный дизайнов карточки и вывода требуемых валют, но в корзину товары будут переносится только в валюте установленной по умолчанию.
У меня стоит RuposTel One Page ищу пути в вывода в корзине цены в двух валютах. Продолжаем копать...

« Последнее редактирование: 17.11.2016, 19:50:00 от Litop »

*

Оффлайн gartes

Re: Несколько курсов валют в VirtueMart 3
« Ответ #5 : 22.11.2016, 04:56:44 »
Цитировать
У меня стоит RuposTel One Page ищу пути в вывода в корзине цены в двух валютах. Продолжаем копать...
Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Корзина One Page Для VirtueMart
Будут вопросы я хотя бы подскажу.

По поводу.. RuposTel One Page ...
А вот мне интересно почему одной корзиной в компоненте ... управляет АЖ целый компонент ...
Ну тут можно очень долго спорить но насколько я помню что он не FREE ...
И при этом Virtuemart  == FREE /

И для управления только одной корзиной.. Простите но это реальный плевок в сторону разработчиков VirtueMart.

А еще .. Почему то инстал этого компонента  весит как пол (если не весь ) virt ??
Заметили что то странное? ))

ЗЫ.. Там реклама  хорошая .. Все кидаются ..  Вот тут бери что не то... ))
Всем удачи.!


« Последнее редактирование: 22.11.2016, 05:04:55 от gartes »

*

Оффлайн Litop

Re: Несколько курсов валют в VirtueMart 3
« Ответ #6 : 30.11.2016, 06:25:08 »
Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Спасибо. Уже присматриваюсь! Обязательно попробую установить и потестить!