From 75b089fa198430b313de3ed28f6782e977fd183f Mon Sep 17 00:00:00 2001 From: David Bomba Date: Tue, 8 Oct 2019 13:06:27 +1000 Subject: [PATCH] Multi payment invoices with filtering of already paid invoices --- app/Http/Controllers/ClientPortal/InvoiceController.php | 2 +- app/Http/Controllers/ClientPortal/PaymentController.php | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/ClientPortal/InvoiceController.php b/app/Http/Controllers/ClientPortal/InvoiceController.php index 2e2e92ee7ab0..ae5b26920e83 100644 --- a/app/Http/Controllers/ClientPortal/InvoiceController.php +++ b/app/Http/Controllers/ClientPortal/InvoiceController.php @@ -142,7 +142,7 @@ class InvoiceController extends Controller 'invoices' => $invoices, 'formatted_total' => $formatted_total, 'payment_methods' => $payment_methods, - 'hashed_ids' => $ids, + 'hashed_ids' => $invoices->pluck('hashed_ids'), 'total' => $total, ]; diff --git a/app/Http/Controllers/ClientPortal/PaymentController.php b/app/Http/Controllers/ClientPortal/PaymentController.php index 1d40e1f0ead7..6a96d0335994 100644 --- a/app/Http/Controllers/ClientPortal/PaymentController.php +++ b/app/Http/Controllers/ClientPortal/PaymentController.php @@ -103,9 +103,14 @@ class PaymentController extends Controller $amount = $invoices->sum('balance'); - $invoices->filter(function ($invoice){ + $invoices = $invoices->filter(function ($invoice){ return $invoice->isPayable(); - })->map(function ($invoice){ + }); + + if($invoices->count() == 0) + return back()->with(['warning' => 'No payable invoices selected']); + + $invoices->map(function ($invoice){ $invoice->balance = Number::formatMoney($invoice->balance, $invoice->client); $invoice->due_date = $this->formatDate($invoice->due_date, $invoice->client->date_format()); return $invoice;