Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
ShippingPackagingResource
0.00% covered (danger)
0.00%
0 / 13
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 / 13
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Domain\ShippingPackaging\Resources;
4
5use App\Models\ShippingPackaging\ShippingPackaging;
6use App\Models\ShippingPackaging\ShippingPackagingProduct;
7use Domain\Integration\Resources\IntegrationResource;
8use Domain\Packaging\Resources\PackagingResource;
9use Domain\StockIO\Resources\StockOIResource;
10use Domain\ShippingPackaging\Enums\ShippingPackagingStatusEnum;
11use Domain\ShippingPackaging\Enums\ShippingPackagingTypeEnum;
12use Domain\Team\Resources\TeamResource;
13use Domain\User\Resources\UserSensitiveResource;
14use Illuminate\Database\Eloquent\Collection;
15use Illuminate\Http\Request;
16use Illuminate\Http\Resources\Json\JsonResource;
17
18/**
19 * @property ShippingPackagingStatusEnum $status
20 * @property int $id
21 * @property string $created_at
22 * @property string $updated_at
23 * @property int $volume
24 * @property ShippingPackagingTypeEnum $type
25 * @property Collection $pickingOrders
26 */
27class ShippingPackagingResource extends JsonResource
28{
29
30    public function toArray(Request $request): array
31    {
32        return [
33            'id' => $this->id,
34            'status' => $this->status->value,
35            'volume' => $this->volume,
36            'type' => $this->type->value,
37            'observation' => $this->observation,
38            'team' => TeamResource::make($this->whenLoaded('team')),
39            'packaging' => PackagingResource::make($this->whenLoaded('packaging')),
40            'shipping_packaging_products' => ShippingPackagingProductResource::collection($this->whenLoaded('products')),
41            'responsible' => UserSensitiveResource::make($this->whenLoaded('responsible')),
42            'created_at' => (string)$this->created_at,
43            'updated_at' => (string)$this->updated_at,
44        ];
45    }
46}