Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 9
0.00% covered (danger)
0.00%
0 / 3
CRAP
0.00% covered (danger)
0.00%
0 / 1
StorePurchaseOrderDTO
0.00% covered (danger)
0.00%
0 / 9
0.00% covered (danger)
0.00%
0 / 3
12
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 toArray
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 fromRequest
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Domain\PurchaseOrder\DTOs;
4
5use App\Models\Supplier;
6use Domain\Integration\DTOs\IntegrationPurchaseOrderDTO;
7use Domain\Shared\Interfaces\DataTransferObjectInterface;
8use Illuminate\Foundation\Http\FormRequest;
9
10readonly final class StorePurchaseOrderDTO implements DataTransferObjectInterface
11{
12    public Supplier $supplier;
13    public IntegrationPurchaseOrderDTO $integration;
14
15    public function __construct(array $args)
16    {
17        $this->supplier = $args['supplier'];
18        $this->integration = $args['integration'];
19    }
20
21    public function toArray(): array
22    {
23        return [
24            'supplier' => $this->supplier,
25            'integration' => $this->integration,
26        ];
27    }
28
29    public static function fromRequest(FormRequest $request): StorePurchaseOrderDTO
30    {
31        return new self([
32            'supplier' => $request->validated('supplier'),
33        ]);
34    }
35}