diff --git a/app/DataMapper/BaseSettings.php b/app/DataMapper/BaseSettings.php index 5c08f2acd3e4..b35e31ccc17a 100644 --- a/app/DataMapper/BaseSettings.php +++ b/app/DataMapper/BaseSettings.php @@ -46,7 +46,8 @@ class BaseSettings return is_null($value) ? '' : (string) $value; case 'bool': case 'boolean': - return (bool) ($value); + nlog($value); + return boolval($value); case 'object': return json_decode($value); case 'array': diff --git a/app/Http/Requests/Credit/StoreCreditRequest.php b/app/Http/Requests/Credit/StoreCreditRequest.php index 2f05fbac1ec2..d040bfd732a1 100644 --- a/app/Http/Requests/Credit/StoreCreditRequest.php +++ b/app/Http/Requests/Credit/StoreCreditRequest.php @@ -58,7 +58,9 @@ class StoreCreditRequest extends Request // $rules['number'] = new UniqueCreditNumberRule($this->all()); $rules['number'] = ['nullable', Rule::unique('credits')->where('company_id', auth()->user()->company()->id)]; $rules['discount'] = 'sometimes|numeric'; - + $rules['is_amount_discount'] = ['boolean']; + + if($this->invoice_id) $rules['invoice_id'] = new ValidInvoiceCreditRule(); diff --git a/app/Http/Requests/Credit/UpdateCreditRequest.php b/app/Http/Requests/Credit/UpdateCreditRequest.php index d7abee626b0a..fd957c2aa40f 100644 --- a/app/Http/Requests/Credit/UpdateCreditRequest.php +++ b/app/Http/Requests/Credit/UpdateCreditRequest.php @@ -58,7 +58,8 @@ class UpdateCreditRequest extends Request $rules['line_items'] = 'array'; $rules['discount'] = 'sometimes|numeric'; - + $rules['is_amount_discount'] = ['boolean']; + return $rules; } diff --git a/app/Http/Requests/Invoice/StoreInvoiceRequest.php b/app/Http/Requests/Invoice/StoreInvoiceRequest.php index 527c108cdbdd..4762aaae1cef 100644 --- a/app/Http/Requests/Invoice/StoreInvoiceRequest.php +++ b/app/Http/Requests/Invoice/StoreInvoiceRequest.php @@ -55,7 +55,8 @@ class StoreInvoiceRequest extends Request $rules['number'] = ['nullable', Rule::unique('invoices')->where('company_id', auth()->user()->company()->id)]; $rules['project_id'] = ['bail', 'sometimes', new ValidProjectForClient($this->all())]; - + $rules['is_amount_discount'] = ['boolean']; + $rules['line_items'] = 'array'; $rules['discount'] = 'sometimes|numeric'; diff --git a/app/Http/Requests/Invoice/UpdateInvoiceRequest.php b/app/Http/Requests/Invoice/UpdateInvoiceRequest.php index 10d8665a9609..21195c7a7ebd 100644 --- a/app/Http/Requests/Invoice/UpdateInvoiceRequest.php +++ b/app/Http/Requests/Invoice/UpdateInvoiceRequest.php @@ -55,6 +55,8 @@ class UpdateInvoiceRequest extends Request if($this->number) $rules['number'] = Rule::unique('invoices')->where('company_id', auth()->user()->company()->id)->ignore($this->invoice->id); + $rules['is_amount_discount'] = ['boolean']; + $rules['line_items'] = 'array'; $rules['discount'] = 'sometimes|numeric'; diff --git a/app/Http/Requests/Quote/StoreQuoteRequest.php b/app/Http/Requests/Quote/StoreQuoteRequest.php index 30f5587f5917..b14f1782cd2f 100644 --- a/app/Http/Requests/Quote/StoreQuoteRequest.php +++ b/app/Http/Requests/Quote/StoreQuoteRequest.php @@ -52,6 +52,8 @@ class StoreQuoteRequest extends Request $rules['number'] = ['nullable',Rule::unique('quotes')->where('company_id', auth()->user()->company()->id)]; $rules['discount'] = 'sometimes|numeric'; + $rules['is_amount_discount'] = ['boolean']; + // $rules['number'] = new UniqueQuoteNumberRule($this->all()); $rules['line_items'] = 'array'; diff --git a/app/Http/Requests/Quote/UpdateQuoteRequest.php b/app/Http/Requests/Quote/UpdateQuoteRequest.php index 0fa9e56f7812..d4dbb820a148 100644 --- a/app/Http/Requests/Quote/UpdateQuoteRequest.php +++ b/app/Http/Requests/Quote/UpdateQuoteRequest.php @@ -52,6 +52,8 @@ class UpdateQuoteRequest extends Request $rules['line_items'] = 'array'; $rules['discount'] = 'sometimes|numeric'; + $rules['is_amount_discount'] = ['boolean']; + return $rules; } diff --git a/app/Models/Credit.php b/app/Models/Credit.php index dedb6bb67970..dec71136476d 100644 --- a/app/Models/Credit.php +++ b/app/Models/Credit.php @@ -90,6 +90,8 @@ class Credit extends BaseModel 'updated_at' => 'timestamp', 'created_at' => 'timestamp', 'deleted_at' => 'timestamp', + 'is_amount_discount' => 'bool', + ]; protected $touches = []; diff --git a/app/Models/Invoice.php b/app/Models/Invoice.php index 5dc5fe204eba..3fcfb4ddf012 100644 --- a/app/Models/Invoice.php +++ b/app/Models/Invoice.php @@ -103,6 +103,7 @@ class Invoice extends BaseModel 'created_at' => 'timestamp', 'deleted_at' => 'timestamp', 'is_deleted' => 'bool', + 'is_amount_discount' => 'bool', ]; protected $with = []; diff --git a/app/Models/Quote.php b/app/Models/Quote.php index a1e57d2fdc6b..7dd4af6e1693 100644 --- a/app/Models/Quote.php +++ b/app/Models/Quote.php @@ -89,6 +89,7 @@ class Quote extends BaseModel 'created_at' => 'timestamp', 'deleted_at' => 'timestamp', 'is_deleted' => 'boolean', + 'is_amount_discount' => 'bool', ]; protected $dates = [];