From 7240f4f1e71ba86dcfe253d3fc67f33e31fed8f1 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Sat, 29 Jun 2024 08:21:57 +1000 Subject: [PATCH] Query optimization --- app/Filters/QueryFilters.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/app/Filters/QueryFilters.php b/app/Filters/QueryFilters.php index 7f98a1d14e93..143c96e1d7cc 100644 --- a/app/Filters/QueryFilters.php +++ b/app/Filters/QueryFilters.php @@ -273,11 +273,21 @@ abstract class QueryFilters public function filter_deleted_clients($value) { - if ($value == 'true') { - return $this->builder->whereHas('client', function (Builder $query) { - $query->where('is_deleted', 0); + // if ($value == 'true') { + // return $this->builder->whereHas('client', function (Builder $query) { + // $query->where('is_deleted', 0); + // }); + // } + + if($value == 'true') + { + return $this->builder->leftJoin('clients', function($join) { + $join->on('invoices.client_id', '=', 'clients.id') + ->where('clients.is_deleted', 0) + ->whereNull('clients.deleted_at'); }); - } + + } return $this->builder; }