App\Ninja\Repositories\DocumentRepository::getClientDatatable PHP Méthode

getClientDatatable() public méthode

public getClientDatatable ( $contactId, $entityType, $search )
    public function getClientDatatable($contactId, $entityType, $search)
    {
        $query = DB::table('invitations')->join('accounts', 'accounts.id', '=', 'invitations.account_id')->join('invoices', 'invoices.id', '=', 'invitations.invoice_id')->join('documents', 'documents.invoice_id', '=', 'invitations.invoice_id')->join('clients', 'clients.id', '=', 'invoices.client_id')->where('invitations.contact_id', '=', $contactId)->where('invitations.deleted_at', '=', null)->where('invoices.is_deleted', '=', false)->where('clients.deleted_at', '=', null)->where('invoices.is_recurring', '=', false)->select('invitations.invitation_key', 'invoices.invoice_number', 'documents.name', 'documents.public_id', 'documents.created_at', 'documents.size');
        $table = \Datatable::query($query)->addColumn('invoice_number', function ($model) {
            return link_to('/view/' . $model->invitation_key, $model->invoice_number)->toHtml();
        })->addColumn('name', function ($model) {
            return link_to('/client/documents/' . $model->invitation_key . '/' . $model->public_id . '/' . $model->name, $model->name, ['target' => '_blank'])->toHtml();
        })->addColumn('document_date', function ($model) {
            return Utils::dateToString($model->created_at);
        })->addColumn('document_size', function ($model) {
            return Form::human_filesize($model->size);
        });
        return $table->make();
    }