Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
87.50% covered (warning)
87.50%
7 / 8
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
AddressOrderGroupQueryBuilder
87.50% covered (warning)
87.50%
7 / 8
0.00% covered (danger)
0.00%
0 / 1
3.02
0.00% covered (danger)
0.00%
0 / 1
 search
87.50% covered (warning)
87.50%
7 / 8
0.00% covered (danger)
0.00%
0 / 1
3.02
1<?php
2
3namespace Domain\Address\QueryBuilder;
4
5use Domain\Address\DTOs\AddressOrderGroupSearchDTO;
6use Illuminate\Database\Eloquent\Builder;
7
8class AddressOrderGroupQueryBuilder extends Builder
9{
10    public function search(AddressOrderGroupSearchDTO $searchDTO): static
11    {
12        if ($searchDTO->address) {
13            $this->whereHas('orders', function (Builder $query) use ($searchDTO) {
14                $query->where('address_id', $searchDTO->address->getKey());
15            });
16        }
17
18        if ($searchDTO->id) {
19            $this->where('id', $searchDTO->id);
20        }
21
22        $this->where('team_id', $searchDTO->team->getKey());
23
24        return $this;
25    }
26}