diff --git a/app/Filters/CreditFilters.php b/app/Filters/CreditFilters.php index 0370aa005d2f..83dc2c7781fd 100644 --- a/app/Filters/CreditFilters.php +++ b/app/Filters/CreditFilters.php @@ -115,6 +115,11 @@ class CreditFilters extends QueryFilters return $this->builder; } + if ($sort_col[0] == 'client_id') { + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'credits.client_id'), $sort_col[1]); + } + return $this->builder->orderBy($sort_col[0], $sort_col[1]); } diff --git a/app/Filters/InvoiceFilters.php b/app/Filters/InvoiceFilters.php index 07dd8619d71b..e7ada0ce11ac 100644 --- a/app/Filters/InvoiceFilters.php +++ b/app/Filters/InvoiceFilters.php @@ -11,12 +11,14 @@ namespace App\Filters; +use RuntimeException; +use App\Models\Client; use App\Models\Invoice; +use App\Filters\QueryFilters; +use InvalidArgumentException; +use Illuminate\Support\Carbon; use App\Utils\Traits\MakesHash; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Carbon; -use InvalidArgumentException; -use RuntimeException; /** * InvoiceFilters. @@ -205,10 +207,9 @@ class InvoiceFilters extends QueryFilters } if ($sort_col[0] == 'client_id') { - - $this->builder->with(['client' => function($q) use($sort_col){ - $q->orderBy('name', $sort_col[1]); - }]); + + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'invoices.client_id'), $sort_col[1]); } diff --git a/app/Filters/PaymentFilters.php b/app/Filters/PaymentFilters.php index 14bb35086b11..ffda39e9b89a 100644 --- a/app/Filters/PaymentFilters.php +++ b/app/Filters/PaymentFilters.php @@ -158,6 +158,13 @@ class PaymentFilters extends QueryFilters return $this->builder; } + + if ($sort_col[0] == 'client_id') { + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'payments.client_id'), $sort_col[1]); + } + + return $this->builder->orderBy($sort_col[0], $sort_col[1]); } diff --git a/app/Filters/QuoteFilters.php b/app/Filters/QuoteFilters.php index 4c99c5cc87ea..d906f2bd1c2f 100644 --- a/app/Filters/QuoteFilters.php +++ b/app/Filters/QuoteFilters.php @@ -135,6 +135,13 @@ class QuoteFilters extends QueryFilters return $this->builder; } + if($sort_col[0] == 'client_id'){ + + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'quotes.client_id'), $sort_col[1]); + + } + if ($sort_col[0] == 'valid_until') { $sort_col[0] = 'due_date'; } diff --git a/app/Filters/RecurringInvoiceFilters.php b/app/Filters/RecurringInvoiceFilters.php index 660c40bf8a33..03a66b11f127 100644 --- a/app/Filters/RecurringInvoiceFilters.php +++ b/app/Filters/RecurringInvoiceFilters.php @@ -115,6 +115,13 @@ class RecurringInvoiceFilters extends QueryFilters return $this->builder; } + + if ($sort_col[0] == 'client_id') { + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'recurring_invoices.client_id'), $sort_col[1]); + } + + return $this->builder->orderBy($sort_col[0], $sort_col[1]); } diff --git a/app/Filters/TaskFilters.php b/app/Filters/TaskFilters.php index a53d6e330958..4847b3a9b288 100644 --- a/app/Filters/TaskFilters.php +++ b/app/Filters/TaskFilters.php @@ -110,6 +110,13 @@ class TaskFilters extends QueryFilters return $this->builder; } + + if ($sort_col[0] == 'client_id') { + return $this->builder->orderBy(\App\Models\Client::select('name') + ->whereColumn('clients.id', 'tasks.client_id'), $sort_col[1]); + } + + return $this->builder->orderBy($sort_col[0], $sort_col[1]); } diff --git a/app/Jobs/Client/UpdateTaxData.php b/app/Jobs/Client/UpdateTaxData.php index 265b7778aa8f..f28781bfe080 100644 --- a/app/Jobs/Client/UpdateTaxData.php +++ b/app/Jobs/Client/UpdateTaxData.php @@ -146,6 +146,8 @@ class UpdateTaxData implements ShouldQueue public function failed($exception) { nlog("UpdateTaxData failed => ".$exception->getMessage()); + config(['queue.failed.driver' => null]); + } } \ No newline at end of file