Currency code expansion.

This commit is contained in:
James Cole
2021-05-13 05:52:06 +02:00
parent 53dffc961f
commit 3f1bd6b3f1
9 changed files with 139 additions and 107 deletions

View File

@@ -72,8 +72,8 @@ class StoreRequest extends FormRequest
{
return [
'name' => 'required|between:1,255|unique:transaction_currencies,name',
'code' => 'required|between:3,3|unique:transaction_currencies,code',
'symbol' => 'required|between:1,8|unique:transaction_currencies,symbol',
'code' => 'required|between:3,51|unique:transaction_currencies,code',
'symbol' => 'required|between:1,51|unique:transaction_currencies,symbol',
'decimal_places' => 'between:0,20|numeric|min:0|max:20',
'enabled' => [new IsBoolean()],
'default' => [new IsBoolean()],

View File

@@ -71,8 +71,8 @@ class UpdateRequest extends FormRequest
return [
'name' => sprintf('between:1,255|unique:transaction_currencies,name,%d', $currency->id),
'code' => sprintf('between:3,3|unique:transaction_currencies,code,%d', $currency->id),
'symbol' => sprintf('between:1,8|unique:transaction_currencies,symbol,%d', $currency->id),
'code' => sprintf('between:3,51|unique:transaction_currencies,code,%d', $currency->id),
'symbol' => sprintf('between:1,51|unique:transaction_currencies,symbol,%d', $currency->id),
'decimal_places' => 'between:0,20|numeric|min:0|max:20',
'enabled' => [new IsBoolean()],
'default' => [new IsBoolean()],

View File

@@ -39,11 +39,8 @@ use Log;
*/
class CurrencyController extends Controller
{
/** @var CurrencyRepositoryInterface The currency repository */
protected $repository;
/** @var UserRepositoryInterface The user repository */
protected $userRepository;
protected CurrencyRepositoryInterface $repository;
protected UserRepositoryInterface $userRepository;
/**
* CurrencyController constructor.

View File

@@ -60,8 +60,8 @@ class CurrencyFormRequest extends FormRequest
// fixed
$rules = [
'name' => 'required|max:48|min:1|unique:transaction_currencies,name',
'code' => 'required|min:3|max:3|unique:transaction_currencies,code',
'symbol' => 'required|min:1|max:8|unique:transaction_currencies,symbol',
'code' => 'required|min:3|max:51|unique:transaction_currencies,code',
'symbol' => 'required|min:1|max:51|unique:transaction_currencies,symbol',
'decimal_places' => 'required|min:0|max:12|numeric',
'enabled' => 'in:0,1',
];
@@ -72,8 +72,8 @@ class CurrencyFormRequest extends FormRequest
if (null !== $currency) {
$rules = [
'name' => 'required|max:48|min:1',
'code' => 'required|min:3|max:3',
'symbol' => 'required|min:1|max:8',
'code' => 'required|min:3|max:51',
'symbol' => 'required|min:1|max:51',
'decimal_places' => 'required|min:0|max:12|numeric',
'enabled' => 'in:0,1',
];

View File

@@ -161,9 +161,6 @@ class Amount
$currencyCode = $this->tryDecrypt((string)$currencyPrefStr);
// could still be json encoded:
if (strlen($currencyCode) > 3) {
$currencyCode = json_decode($currencyCode, true, 512, JSON_THROW_ON_ERROR) ?? 'EUR';
}
/** @var TransactionCurrency|null $currency */
$currency = TransactionCurrency::where('code', $currencyCode)->first();
if (null === $currency) {