close #464 Fixed: 0 Money payment in invoice and bill;

Transfer,
Bill, Bill Payment, Bill Total,
Payment,
Invoice, Invoice Payment, Invoice Total,
Revenue.
This commit is contained in:
cuneytsenturk 2018-08-30 11:58:38 +03:00
parent fc0048cdfa
commit eb5023759c
11 changed files with 34 additions and 17 deletions

View File

@ -26,7 +26,7 @@ class Transfer extends Request
return [ return [
'from_account_id' => 'required|integer', 'from_account_id' => 'required|integer',
'to_account_id' => 'required|integer', 'to_account_id' => 'required|integer',
'amount' => 'required', 'amount' => 'required|amount',
'transferred_at' => 'required|date', 'transferred_at' => 'required|date',
'payment_method' => 'required|string', 'payment_method' => 'required|string',
]; ];

View File

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

View File

@ -27,7 +27,7 @@ class BillPayment extends Request
return [ return [
'account_id' => 'required|integer', 'account_id' => 'required|integer',
'paid_at' => 'required|date', 'paid_at' => 'required|date',
'amount' => 'required', 'amount' => 'required|amount',
'currency_code' => 'required|string|currency', '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'),

View File

@ -26,7 +26,7 @@ class BillTotal extends Request
return [ return [
'bill_id' => 'required|integer', 'bill_id' => 'required|integer',
'name' => 'required|string', 'name' => 'required|string',
'amount' => 'required', 'amount' => 'required|amount',
'sort_order' => 'required|integer', 'sort_order' => 'required|integer',
]; ];
} }

View File

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

View File

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

View File

@ -27,7 +27,7 @@ class InvoicePayment extends Request
return [ return [
'account_id' => 'required|integer', 'account_id' => 'required|integer',
'paid_at' => 'required|date', 'paid_at' => 'required|date',
'amount' => 'required', 'amount' => 'required|amount',
'currency_code' => 'required|string|currency', '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',

View File

@ -26,7 +26,7 @@ class InvoiceTotal extends Request
return [ return [
'invoice_id' => 'required|integer', 'invoice_id' => 'required|integer',
'name' => 'required|string', 'name' => 'required|string',
'amount' => 'required', 'amount' => 'required|amount',
'sort_order' => 'required|integer', 'sort_order' => 'required|integer',
]; ];
} }

View File

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

View File

@ -18,20 +18,36 @@ class ValidationServiceProvider extends ServiceProvider
$currency_code = null; $currency_code = null;
Validator::extend('currency', function ($attribute, $value, $parameters, $validator) use(&$currency_code) { Validator::extend('currency', function ($attribute, $value, $parameters, $validator) use(&$currency_code) {
$status = false; $status = false;
$currencies = Currency::enabled()->pluck('name', 'code')->toArray(); $currencies = Currency::enabled()->pluck('name', 'code')->toArray();
if (array_key_exists($value, $currencies)) { if (array_key_exists($value, $currencies)) {
$status = true; $status = true;
} }
$currency_code = $value; $currency_code = $value;
return $status; return $status;
}, },
trans('validation.custom.invalid_currency', ['attribute' => $currency_code]) trans('validation.custom.invalid_currency', ['attribute' => $currency_code])
); );
$amount = null;
Validator::extend('amount', function ($attribute, $value, $parameters, $validator) use (&$amount) {
$status = false;
if ($value > 0) {
$status = true;
}
$amount = $value;
return $status;
},
trans('validation.custom.invalid_amount', ['attribute' => $amount])
);
} }
/** /**

View File

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