with('document', 'item')->usingSearchString(request('search')); if (!empty($this->ids)) { $model->whereIn('document_id', (array) $this->ids); } return $model->cursor(); } public function map($model): array { $document = $model->document; if (empty($document)) { return []; } $model->invoice_number = $document->document_number; $model->item_name = $model->item->name; return parent::map($model); } public function fields(): array { return [ 'invoice_number', 'item_name', 'quantity', 'price', 'total', 'tax', ]; } }