phpmaster Posted June 5, 2012 Report Share Posted June 5, 2012 Может, кому надо будет такое решение..На днях реализовал для заказчика такую задачу. У него в 1С товары заведены в евро, гривнах и долларах. А продает в гривнах. Написал скрипт, который каждую ночь берет официальные курсы валют, берет все цены из 1С и пересчитывает по обновленному курсу + % за конвертацию. И еще обновляет в курсы валют в админке.Каждое утро на сайте цены корректируются по изменению курса валют. Сейчас, когда в евро есть нестабильность, это актуально.Если кому нужна будет такая схема - обращайтесь. Quote Link to post Share on other sites
Danya Posted June 5, 2012 Report Share Posted June 5, 2012 интересно! напиши в личку, сколько будет стоить? Quote Link to post Share on other sites
Foх Posted January 8, 2014 Report Share Posted January 8, 2014 Может, кому надо будет такое решение.. На днях реализовал для заказчика такую задачу. У него в 1С товары заведены в евро, гривнах и долларах. А продает в гривнах. Написал скрипт, который каждую ночь берет официальные курсы валют, берет все цены из 1С и пересчитывает по обновленному курсу + % за конвертацию. И еще обновляет в курсы валют в админке.Каждое утро на сайте цены корректируются по изменению курса валют. Сейчас, когда в евро есть нестабильность, это актуально. Если кому нужна будет такая схема - обращайтесь.нужен модуль чтоб по курсу доллара ЦБ банка России плясать)напишите мне Quote Link to post Share on other sites
LUN Posted January 19, 2014 Report Share Posted January 19, 2014 Смысл создавать тему в готовых решениях ? Если вы не хотите делится с остальными, а хотите заняться Фрилансом... создайте тему в "Платные модули и услуги" Quote Link to post Share on other sites
Kasha Posted January 20, 2014 Report Share Posted January 20, 2014 нужен модуль чтоб по курсу доллара ЦБ банка России плясать)напишите мне Реализовывал такой модуль, он весьма прост, и по сути никак не связан с симплой. ЦБ отдает каждый день инфу в xml, дальше кроном просто тырим эту инфу и вносим в базу в текущую валюту, и у всё делов на 20 минут Quote Link to post Share on other sites
LUN Posted January 21, 2014 Report Share Posted January 21, 2014 Реализовывал такой модуль, он весьма прост, и по сути никак не связан с симплой. ЦБ отдает каждый день инфу в xml, дальше кроном просто тырим эту инфу и вносим в базу в текущую валюту, и у всё делов на 20 минут Покажешь мастер класс ? Quote Link to post Share on other sites
Solution Kasha Posted January 26, 2014 Solution Report Share Posted January 26, 2014 <?php class ExchangeRatesCBRF { var $rates; function __construct($date = null) //В PHP версии ниже 5 это метод объекта следует переименовать в ExchangeRatesCBRF { $client = new SoapClient("http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL"); if (!isset($date)) $date = date("Y-m-d"); $curs = $client->GetCursOnDate(array("On_date" => $date)); $this->rates = new SimpleXMLElement($curs->GetCursOnDateResult->any); } function GetRate ($code) { //Этот метод получает в качестве параметра цифровой или буквенный код валюты и возвращает ее курс $code1 = (int)$code; if ($code1!=0) { $result = $this->rates->xpath('ValuteData/ValuteCursOnDate/Vcode[.='.$code.']/parent::*'); } else { $result = $this->rates->xpath('ValuteData/ValuteCursOnDate/VchCode[.="'.$code.'"]/parent::*'); } if (!$result) { return false; } else { $vc = (float)$result[0]->Vcurs; $vn = (int)$result[0]->Vnom; return ($vc/$vn); } } } //Тут небольшой пример того как использовать этот класс для получения курса на текущую дату $rates = new ExchangeRatesCBRF(); $usd = $rates->GetRate("USD"); echo "Курс доллара на сегодня: " . $usd; ?> Дальше догадаешься как сделать?Вызов курса для записи в переменную, запись из переменной в базу, всё это обернуть и в крон... Ну в общем сами знаете Заменив переменную можно получить курс любой пары от ЦБ $usd = $rates->GetRate("USD"); Quote Link to post Share on other sites
magicpass Posted May 6, 2014 Report Share Posted May 6, 2014 <?php class ExchangeRatesCBRF { var $rates; function __construct($date = null) //В PHP версии ниже 5 это метод объекта следует переименовать в ExchangeRatesCBRF { $client = new SoapClient("http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL"); if (!isset($date)) $date = date("Y-m-d"); $curs = $client->GetCursOnDate(array("On_date" => $date)); $this->rates = new SimpleXMLElement($curs->GetCursOnDateResult->any); } function GetRate ($code) { //Этот метод получает в качестве параметра цифровой или буквенный код валюты и возвращает ее курс $code1 = (int)$code; if ($code1!=0) { $result = $this->rates->xpath('ValuteData/ValuteCursOnDate/Vcode[.='.$code.']/parent::*'); } else { $result = $this->rates->xpath('ValuteData/ValuteCursOnDate/VchCode[.="'.$code.'"]/parent::*'); } if (!$result) { return false; } else { $vc = (float)$result[0]->Vcurs; $vn = (int)$result[0]->Vnom; return ($vc/$vn); } } } //Тут небольшой пример того как использовать этот класс для получения курса на текущую дату $rates = new ExchangeRatesCBRF(); $usd = $rates->GetRate("USD"); echo "Курс доллара на сегодня: " . $uds; ?> Дальше догадаешься как сделать?Вызов курса для записи в переменную, запись из переменной в базу, всё это обернуть и в крон... Ну в общем сами знаете Sheeft можно подробнее Quote Link to post Share on other sites
Чудилла Posted May 6, 2014 Report Share Posted May 6, 2014 а не проще через крон установить, чтоб курс доллара обновлялся хотя бы раз в день например в 00 01 каждого дня 01 00 * * *Вот те и пляски под ЦБ, тока беда что клиент сделал заказ по одной цене, завтра оплатит по другой Quote Link to post Share on other sites
magicpass Posted May 6, 2014 Report Share Posted May 6, 2014 Мы должны иметь возможность устанавливать цены вевро. Клиент должен видеть только рубли. как это сделать:? Quote Link to post Share on other sites
granata005 Posted May 6, 2014 Report Share Posted May 6, 2014 Вообще, это задача 1Ски, в идеале Я себе это в 1С давно сделал, после свержения Яныка и начала скачков курсов) Quote Link to post Share on other sites
Kors Posted February 4, 2015 Report Share Posted February 4, 2015 Sheeft, спасибо, пригодилось. Только в конце кода маленькую ошибочку исправить бы - в последних строках переменная пишется по-разному - $usd и $uds. Quote Link to post Share on other sites
Kasha Posted February 4, 2015 Report Share Posted February 4, 2015 поправил Quote Link to post Share on other sites
simpler Posted September 2, 2015 Report Share Posted September 2, 2015 А можно поподробнее про данную доработку?С php не очень дружу, а хотелось бы вставить данную доработку в симплу Quote Link to post Share on other sites
alexandr_azd Posted December 29, 2016 Report Share Posted December 29, 2016 Кто сделает мануал для новичков, за символическую плату? Quote Link to post Share on other sites
Noxter Posted December 30, 2016 Report Share Posted December 30, 2016 Кто сделает мануал для новичков, за символическую плату?Откровенно говоря, программисты никаких мануалов не пишут, и все же если вы его получите не надейтесь на 100% работоспособность (конечно же если у вас руки прямые, а не растут из пятой точки). Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.