Passed
Push — master ( e8502e...677200 )
by Stephen
24:48
created

UserListQuery::builder()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
c 0
b 0
f 0
nc 1
nop 0
dl 0
loc 3
rs 10
1
<?php
2
3
namespace Sfneal\Users\Queries;
4
5
use Illuminate\Database\Eloquent\Builder;
6
use Illuminate\Http\Request;
7
use Sfneal\Queries\Query;
8
use Sfneal\Users\Builders\UserBuilder;
9
use Sfneal\Users\Models\User;
10
11
class UserListQuery extends Query
12
{
13
    /**
14
     * @var Request
15
     */
16
    private $request;
17
18
    /**
19
     * TeamListQuery constructor.
20
     *
21
     * @param Request $request
22
     */
23
    public function __construct(Request $request)
24
    {
25
        $this->request = $request;
26
    }
27
28
    /**
29
     * Retrieve a Query builder.
30
     *
31
     * @return UserBuilder
32
     */
33
    protected function builder(): UserBuilder
34
    {
35
        return User::query();
36
    }
37
38
    /**
39
     * Execute a Team ajax search.
40
     *
41
     * @return array
42
     */
43
    public function execute(): array
44
    {
45
        return $this->builder()
46
            ->whereNameLike($this->request->input('q'))
47
            ->whereActive()
48
            ->selectRawJson()
49
            ->countAndPaginate();
50
    }
51
}
52