BillBulkSearch   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
wmc 2
eloc 9
c 2
b 0
f 0
dl 0
loc 17
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __invoke() 0 3 1
A create() 0 10 1
1
<?php
2
3
namespace hiqdev\billing\hiapi\bill\Search;
4
5
use hiapi\endpoints\Module\Multitenant\Tenant;
6
use hiapi\Core\Endpoint\BuilderFactory;
7
use hiapi\Core\Endpoint\Endpoint;
8
use hiapi\Core\Endpoint\EndpointBuilder;
9
use hiqdev\php\billing\bill\Bill;
10
11
final class BillBulkSearch
12
{
13
    public function __invoke(BuilderFactory $build): Endpoint
14
    {
15
        return $this->create($build)->build();
16
    }
17
18
    public function create(BuilderFactory $build): EndpointBuilder
19
    {
20
        return $build->endpoint(self::class)
21
            ->exportTo(Tenant::ALL)
22
            ->take(BillSearchCommand::class)
23
            ->checkPermission('bill.read')
24
            ->middlewares(
25
                $build->call(BillBulkSearchAction::class)
26
            )
27
            ->return($build->many(Bill::class))
28
        ;
29
    }
30
}
31