diff --git a/app/Transformers/RecurringExpenseTransformer.php b/app/Transformers/RecurringExpenseTransformer.php index 5830f7a2ad5d..6056b91d37c0 100644 --- a/app/Transformers/RecurringExpenseTransformer.php +++ b/app/Transformers/RecurringExpenseTransformer.php @@ -15,6 +15,7 @@ use App\Models\Document; use App\Models\RecurringExpense; use App\Utils\Traits\MakesHash; use Illuminate\Database\Eloquent\SoftDeletes; +use League\Fractal\Resource\Item; /** * class RecurringExpenseTransformer. @@ -33,6 +34,8 @@ class RecurringExpenseTransformer extends EntityTransformer */ protected $availableIncludes = [ 'documents', + 'client', + 'vendor', ]; public function includeDocuments(RecurringExpense $recurring_expense) @@ -42,6 +45,28 @@ class RecurringExpenseTransformer extends EntityTransformer return $this->includeCollection($recurring_expense->documents, $transformer, Document::class); } + public function includeClient(RecurringExpense $recurring_expense): ?Item + { + $transformer = new ClientTransformer($this->serializer); + + if (!$recurring_expense->client) { + return null; + } + + return $this->includeItem($recurring_expense->client, $transformer, Client::class); + } + + public function includeVendor(RecurringExpense $recurring_expense): ?Item + { + $transformer = new VendorTransformer($this->serializer); + + if (!$recurring_expense->vendor) { + return null; + } + + return $this->includeItem($recurring_expense->vendor, $transformer, Vendor::class); + } + /** * @param RecurringExpense $recurring_expense *