fix: increase precision while calculate commission

This commit is contained in:
Djery-Tom 2023-07-27 13:18:13 +01:00
parent d954a2b43e
commit 9942b62ed3
1 changed files with 5 additions and 5 deletions

View File

@ -172,7 +172,7 @@ trait Helper
return $money->formatTo(app()->getLocale());
}
private function convertMoney($amount, $init_country, $final_country)
private function convertMoney($amount, $init_country, $final_country, $precision = 2)
{
// set to whatever your rates are relative to
$baseCurrency = 'USD';
@ -197,13 +197,13 @@ trait Helper
$converter = new CurrencyConverter($provider);
$init_country = Country::findOrFail($init_country);
$final_country = Country::findOrFail($final_country);
$init_money = Money::of(round($amount, 2), $init_country->currency->code, new AutoContext());
$init_money = Money::of(round($amount, $precision), $init_country->currency->code, new AutoContext());
return $converter->convert($init_money, $final_country->currency->code, RoundingMode::DOWN);
}
public function toMoneyWithCurrency($amount, $init_country, $final_country)
public function toMoneyWithCurrency($amount, $init_country, $final_country, $precision = 2)
{
return $this->convertMoney($amount, $init_country, $final_country)->formatTo(app()->getLocale());
return $this->convertMoney($amount, $init_country, $final_country, $precision)->formatTo(app()->getLocale());
}
public function toMoneyAmount($amount, $init_country, $final_country)
@ -213,7 +213,7 @@ trait Helper
public function getExchangeRate($init_country, $final_country)
{
return $this->toMoney(1, $init_country) . ' = ' . $this->toMoneyWithCurrency(1, $init_country, $final_country);
return $this->toMoney(1, $init_country) . ' = ' . $this->toMoneyWithCurrency(1, $init_country, $final_country, 6);
}
public function toUSDAmount($amount, $init_country, $final_currency_code = 'USD')