Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 10
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
InvoiceVerificationResource
0.00% covered (danger)
0.00%
0 / 10
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 1
 toArray
0.00% covered (danger)
0.00%
0 / 10
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Domain\Invoice\Resources;
4
5use Domain\Product\Resources\ProductResource;
6use Domain\User\Resources\UserResource;
7use Illuminate\Http\Request;
8use Illuminate\Http\Resources\Json\JsonResource;
9
10class InvoiceVerificationResource extends JsonResource
11{
12    /**
13     * @property int $id
14     * @property Invoice $invoice
15     * @property User $responsible
16     * @property InvoiceItem $invoice_item
17     * @property float $invoice_item_amount
18     * @property Product $product
19     * @property float $product_amount
20     * @property InvoiceVerificationsStatusEnum $status
21     */
22    public function toArray(Request $request): array
23    {
24        return [
25            'id' => $this->id,
26            'invoice' => InvoiceResource::make($this->whenLoaded('invoice')),
27            'responsible' => UserResource::make($this->whenLoaded('responsible')),
28            'invoice_item' => InvoiceItemResource::make($this->whenLoaded('invoiceItem')),
29            'invoice_item_amount' => $this->invoice_item_amount,
30            'product' => ProductResource::make($this->whenLoaded('product')),
31            'product_amount' => $this->product_amount,
32            'status' => $this->status?->value,
33        ];
34    }
35}