$model->id, 'company_id' => $model->company_id, 'type' => $model->type, 'document_id' => $model->document_id, 'document_item_id' => $model->document_item_id, 'tax_id' => $model->tax_id, 'name' => $model->name, 'amount' => $model->amount, 'amount_format' => money($model->amount, $model->document->currency_code, true)->format(), 'created_at' => $model->created_at ? $model->created_at->toIso8601String() : '', 'updated_at' => $model->updated_at ? $model->updated_at->toIso8601String() : '', ]; } /** * @param Model $model * @return mixed */ public function includeTax(Model $model) { if (!$model->tax) { return $this->null(); } return $this->item($model->tax, new Tax()); } }