diff --git a/app/Http/Controllers/Api/Master/CustomerController.php b/app/Http/Controllers/Api/Master/CustomerController.php index e5a17f0f0..87d5a0191 100644 --- a/app/Http/Controllers/Api/Master/CustomerController.php +++ b/app/Http/Controllers/Api/Master/CustomerController.php @@ -49,9 +49,9 @@ public function index(Request $request) } if ($request->get('is_archived')) { - $customers = $customers->whereNotNull('archived_at'); + $customers = $customers->whereNotNull('customer.archived_at'); } else { - $customers = $customers->whereNull('archived_at'); + $customers = $customers->whereNull('customer.archived_at'); } $customers->whereIn('customer.branch_id', $user->branches->pluck('id')); diff --git a/app/Traits/Model/Master/CustomerJoin.php b/app/Traits/Model/Master/CustomerJoin.php index a3ca2e07a..11ec9455f 100644 --- a/app/Traits/Model/Master/CustomerJoin.php +++ b/app/Traits/Model/Master/CustomerJoin.php @@ -72,8 +72,23 @@ public static function joins($query, $joins) } if (in_array('branch', $joins)) { - $query = $query->leftjoin(Branch::getTableName(), function ($q) { - $q->on(Branch::getTableName('id'), '=', Customer::getTableName('branch_id')); + $query = $query->leftjoin(Branch::getTableName().' as '.Branch::$alias, function ($q) { + $q->on(Branch::$alias.'.id', '=', Customer::$alias.'.branch_id'); + }); + } + + if (in_array('pricing_groups', $joins)) { + $query = $query->leftjoin('pricing_groups', function ($q) { + $q->on('pricing_groups.id', '=', Customer::$alias.'.pricing_group_id'); + }); + } + + if (in_array('groups', $joins)) { + $query = $query->leftjoin('customer_customer_group', function ($q) { + $q->on('customer_customer_group.customer_id', '=', Customer::$alias.'.id'); + }); + $query = $query->leftjoin('customer_groups', function ($q) { + $q->on('customer_groups.id', '=', 'customer_customer_group.customer_group_id'); }); }