From 7ffbda80c5e9251ca8662a6eaa1df64d17f3add0 Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 28 Feb 2017 20:24:30 +0200 Subject: [PATCH] Search by client number (3.X) #1328 --- app/Models/Traits/GeneratesNumbers.php | 2 +- app/Ninja/Datatables/ClientDatatable.php | 7 +++++++ app/Ninja/Repositories/AccountRepository.php | 2 +- app/Ninja/Repositories/ClientRepository.php | 3 ++- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/Models/Traits/GeneratesNumbers.php b/app/Models/Traits/GeneratesNumbers.php index 6a142fbefdf5..7eddd0f6bf03 100644 --- a/app/Models/Traits/GeneratesNumbers.php +++ b/app/Models/Traits/GeneratesNumbers.php @@ -249,6 +249,6 @@ trait GeneratesNumbers public function clientNumbersEnabled() { - return $this->hasFeature(FEATURE_INVOICE_SETTINGS) && $this->client_number_counter; + return $this->hasFeature(FEATURE_INVOICE_SETTINGS) && $this->client_number_counter > 0; } } diff --git a/app/Ninja/Datatables/ClientDatatable.php b/app/Ninja/Datatables/ClientDatatable.php index 6913274f977c..ad20e15bc67e 100644 --- a/app/Ninja/Datatables/ClientDatatable.php +++ b/app/Ninja/Datatables/ClientDatatable.php @@ -32,6 +32,13 @@ class ClientDatatable extends EntityDatatable return link_to("clients/{$model->public_id}", $model->email ?: '')->toHtml(); }, ], + [ + 'id_number', + function ($model) { + return $model->id_number; + }, + Auth::user()->account->clientNumbersEnabled() + ], [ 'client_created_at', function ($model) { diff --git a/app/Ninja/Repositories/AccountRepository.php b/app/Ninja/Repositories/AccountRepository.php index fc1446a6a612..43f2de1f826f 100644 --- a/app/Ninja/Repositories/AccountRepository.php +++ b/app/Ninja/Repositories/AccountRepository.php @@ -126,7 +126,7 @@ class AccountRepository foreach ($clients as $client) { if ($client->name) { $data['clients'][] = [ - 'value' => $client->name, + 'value' => ($account->clientNumbersEnabled() && $client->id_number ? $client->id_number . ': ' : '') . $client->name, 'tokens' => implode(',', [$client->name, $client->id_number, $client->vat_number, $client->work_phone]), 'url' => $client->present()->url, ]; diff --git a/app/Ninja/Repositories/ClientRepository.php b/app/Ninja/Repositories/ClientRepository.php index f2c3d19a1fcc..70db2b3945aa 100644 --- a/app/Ninja/Repositories/ClientRepository.php +++ b/app/Ninja/Repositories/ClientRepository.php @@ -51,7 +51,8 @@ class ClientRepository extends BaseRepository 'contacts.email', 'clients.deleted_at', 'clients.is_deleted', - 'clients.user_id' + 'clients.user_id', + 'clients.id_number' ); $this->applyFilters($query, ENTITY_CLIENT);