close #398 Added: Add custom validation type : currency

This commit is contained in:
cuneytsenturk 2018-06-27 19:28:56 +03:00
parent e7c7a472c1
commit 896bc1f2b9
11 changed files with 32 additions and 9 deletions

View File

@ -26,7 +26,7 @@ class Account extends Request
return [
'name' => 'required|string',
'number' => 'required|string',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'opening_balance' => 'required',
];
}

View File

@ -39,7 +39,7 @@ class Bill extends Request
'billed_at' => 'required|date',
'due_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'vendor_id' => 'required|integer',
'vendor_name' => 'required|string',

View File

@ -27,7 +27,7 @@ class BillPayment extends Request
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'payment_method' => 'required|string',
'attachment' => 'mimes:' . setting('general.file_types', 'pdf,jpeg,jpg,png'),
];

View File

@ -27,7 +27,7 @@ class Payment extends Request
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'category_id' => 'required|integer',
'payment_method' => 'required|string',

View File

@ -42,7 +42,7 @@ class Vendor extends Request
return [
'name' => 'required|string',
'email' => $email,
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
];
}
}

View File

@ -47,7 +47,7 @@ class Customer extends Request
return [
'name' => 'required|string',
'email' => $email,
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'password' => $required . 'confirmed',
];
}

View File

@ -39,7 +39,7 @@ class Invoice extends Request
'invoiced_at' => 'required|date',
'due_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'customer_id' => 'required|integer',
'customer_name' => 'required|string',

View File

@ -27,7 +27,7 @@ class InvoicePayment extends Request
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'payment_method' => 'required|string',
'attachment' => 'mimes:jpeg,jpg,png,pdf',
];

View File

@ -27,7 +27,7 @@ class Revenue extends Request
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'category_id' => 'required|integer',
'payment_method' => 'required|string',

View File

@ -2,11 +2,33 @@
namespace App\Http\Requests;
use App\Models\Setting\Currency;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Factory as ValidationFactory;
class Request extends FormRequest
{
public function __construct(ValidationFactory $validation)
{
$validation->extend(
'currency',
function ($attribute, $currency_code, $parameters) {
$currency = false;
$currencies = Currency::enabled()->pluck('name', 'code')->toArray();
if (array_key_exists($currency_code, $currencies)) {
$currency = true;
}
return $currency;
},
trans('validation.custom.invalid_currency', ['attribute' => $currency_code])
);
}
/**
* Set the company id to the request.
*

View File

@ -101,6 +101,7 @@ return [
'attribute-name' => [
'rule-name' => 'custom-message',
],
'invalid_currency' => 'The :attribute code is invalid.',
],
/*