*/ public function toArray($request): array { return [ 'data' => $this->collection->map(function ($document) { return [ 'id' => $document->id, 'practitioner_id' => $document->practitioner_id, 'doc_type' => $document->doc_type, 'file_id' => $document->file_id, 'issue_date' => $document->issue_date?->format('Y-m-d'), 'expiry_date' => $document->expiry_date?->format('Y-m-d'), 'status' => $document->status, 'is_valid' => $document->is_valid, 'created_at' => $document->created_at?->format('Y-m-d H:i:s'), 'updated_at' => $document->updated_at?->format('Y-m-d H:i:s'), // Relations 'thanatopractitioner' => $document->thanatopractitioner ? [ 'id' => $document->thanatopractitioner->id, 'employee_id' => $document->thanatopractitioner->employee_id, 'diploma_number' => $document->thanatopractitioner->diploma_number, 'authorization_number' => $document->thanatopractitioner->authorization_number, 'employee' => $document->thanatopractitioner->employee ? [ 'id' => $document->thanatopractitioner->employee->id, 'first_name' => $document->thanatopractitioner->employee->first_name, 'last_name' => $document->thanatopractitioner->employee->last_name, 'full_name' => $document->thanatopractitioner->employee->full_name, ] : null, ] : null, ]; }), ]; } }