Форум русской поддержки Joomla!® CMS
06.12.2016, 10:06:23 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

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

 (Прочитано 82 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Litop
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 40


« : 15.11.2016, 23:19:29 »

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

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

Репутация: +63/-3
Offline Offline

Сообщений: 826


Е = mс²


« Ответ #1 : 16.11.2016, 04:40:07 »

Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:

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

Соответственно разный курс.
Записан
Litop
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 40


« Ответ #2 : 16.11.2016, 05:05:21 »

Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:
.
 Доллар для поставщика №1 и Доллар для поставщика №2

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

Репутация: +63/-3
Offline Offline

Сообщений: 826


Е = mс²


« Ответ #3 : 16.11.2016, 09:42:32 »

Цитировать
Хотя если прокопатся, то курс может быть меньше =1
Ну да Вы обязательно прокопайтесь. !  Grin
Это тут математика для 3 класса .

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

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

Репутация: +3/-0
Offline Offline

Сообщений: 40


« Ответ #4 : 17.11.2016, 15: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, 18:50:00 от Litop » Записан
gartes
Живу я здесь
******

Репутация: +63/-3
Offline Offline

Сообщений: 826


Е = mс²


« Ответ #5 : 22.11.2016, 03:56:44 »

Цитировать
У меня стоит RuposTel One Page ищу пути в вывода в корзине цены в двух валютах. Продолжаем копать...
Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Корзина One Page Для VirtueMart
Будут вопросы я хотя бы подскажу.

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

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

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

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


« Последнее редактирование: 22.11.2016, 04:04:55 от gartes » Записан
Litop
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 40


« Ответ #6 : 30.11.2016, 05:25:08 »

Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Спасибо. Уже присматриваюсь! Обязательно попробую установить и потестить!
Записан
gartes
Живу я здесь
******

Репутация: +63/-3
Offline Offline

Сообщений: 826


Е = mс²


« Ответ #7 : 30.11.2016, 05:26:03 »

Будут траблы пишите в теме.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet