close #398 Added: Add custom validation type : currency
This commit is contained in:
parent
e7c7a472c1
commit
896bc1f2b9
@ -26,7 +26,7 @@ class Account extends Request
|
|||||||
return [
|
return [
|
||||||
'name' => 'required|string',
|
'name' => 'required|string',
|
||||||
'number' => 'required|string',
|
'number' => 'required|string',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'opening_balance' => 'required',
|
'opening_balance' => 'required',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,7 @@ class Bill extends Request
|
|||||||
'billed_at' => 'required|date',
|
'billed_at' => 'required|date',
|
||||||
'due_at' => 'required|date',
|
'due_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'currency_rate' => 'required',
|
'currency_rate' => 'required',
|
||||||
'vendor_id' => 'required|integer',
|
'vendor_id' => 'required|integer',
|
||||||
'vendor_name' => 'required|string',
|
'vendor_name' => 'required|string',
|
||||||
|
@ -27,7 +27,7 @@ class BillPayment extends Request
|
|||||||
'account_id' => 'required|integer',
|
'account_id' => 'required|integer',
|
||||||
'paid_at' => 'required|date',
|
'paid_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'payment_method' => 'required|string',
|
'payment_method' => 'required|string',
|
||||||
'attachment' => 'mimes:' . setting('general.file_types', 'pdf,jpeg,jpg,png'),
|
'attachment' => 'mimes:' . setting('general.file_types', 'pdf,jpeg,jpg,png'),
|
||||||
];
|
];
|
||||||
|
@ -27,7 +27,7 @@ class Payment extends Request
|
|||||||
'account_id' => 'required|integer',
|
'account_id' => 'required|integer',
|
||||||
'paid_at' => 'required|date',
|
'paid_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'currency_rate' => 'required',
|
'currency_rate' => 'required',
|
||||||
'category_id' => 'required|integer',
|
'category_id' => 'required|integer',
|
||||||
'payment_method' => 'required|string',
|
'payment_method' => 'required|string',
|
||||||
|
@ -42,7 +42,7 @@ class Vendor extends Request
|
|||||||
return [
|
return [
|
||||||
'name' => 'required|string',
|
'name' => 'required|string',
|
||||||
'email' => $email,
|
'email' => $email,
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,7 +47,7 @@ class Customer extends Request
|
|||||||
return [
|
return [
|
||||||
'name' => 'required|string',
|
'name' => 'required|string',
|
||||||
'email' => $email,
|
'email' => $email,
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'password' => $required . 'confirmed',
|
'password' => $required . 'confirmed',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,7 @@ class Invoice extends Request
|
|||||||
'invoiced_at' => 'required|date',
|
'invoiced_at' => 'required|date',
|
||||||
'due_at' => 'required|date',
|
'due_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'currency_rate' => 'required',
|
'currency_rate' => 'required',
|
||||||
'customer_id' => 'required|integer',
|
'customer_id' => 'required|integer',
|
||||||
'customer_name' => 'required|string',
|
'customer_name' => 'required|string',
|
||||||
|
@ -27,7 +27,7 @@ class InvoicePayment extends Request
|
|||||||
'account_id' => 'required|integer',
|
'account_id' => 'required|integer',
|
||||||
'paid_at' => 'required|date',
|
'paid_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'payment_method' => 'required|string',
|
'payment_method' => 'required|string',
|
||||||
'attachment' => 'mimes:jpeg,jpg,png,pdf',
|
'attachment' => 'mimes:jpeg,jpg,png,pdf',
|
||||||
];
|
];
|
||||||
|
@ -27,7 +27,7 @@ class Revenue extends Request
|
|||||||
'account_id' => 'required|integer',
|
'account_id' => 'required|integer',
|
||||||
'paid_at' => 'required|date',
|
'paid_at' => 'required|date',
|
||||||
'amount' => 'required',
|
'amount' => 'required',
|
||||||
'currency_code' => 'required|string',
|
'currency_code' => 'required|string|currency',
|
||||||
'currency_rate' => 'required',
|
'currency_rate' => 'required',
|
||||||
'category_id' => 'required|integer',
|
'category_id' => 'required|integer',
|
||||||
'payment_method' => 'required|string',
|
'payment_method' => 'required|string',
|
||||||
|
@ -2,11 +2,33 @@
|
|||||||
|
|
||||||
namespace App\Http\Requests;
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use App\Models\Setting\Currency;
|
||||||
|
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
use Illuminate\Validation\Factory as ValidationFactory;
|
||||||
|
|
||||||
class Request extends FormRequest
|
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.
|
* Set the company id to the request.
|
||||||
*
|
*
|
||||||
|
@ -101,6 +101,7 @@ return [
|
|||||||
'attribute-name' => [
|
'attribute-name' => [
|
||||||
'rule-name' => 'custom-message',
|
'rule-name' => 'custom-message',
|
||||||
],
|
],
|
||||||
|
'invalid_currency' => 'The :attribute code is invalid.',
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user