CreateUserService::run()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 10
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 5
nc 1
nop 1
dl 0
loc 10
ccs 0
cts 7
cp 0
crap 2
rs 9.4285
c 0
b 0
f 0
1
<?php
2
/*
3
 * This file is part of the Laravel Platfourm package.
4
 *
5
 * (c) Avtandil Kikabidze aka LONGMAN <[email protected]>
6
 *
7
 * For the full copyright and license information, please view the LICENSE
8
 * file that was distributed with this source code.
9
 */
10
11
namespace Longman\Platfourm\User\Services;
12
13
use Longman\Platfourm\Contracts\Auth\AuthUserService;
14
use Longman\Platfourm\Foundation\Repositories\Repository;
15
use Longman\Platfourm\Service\EntityService;
16
use Longman\Platfourm\User\Repositories\Eloquent\UserRepository;
17
18
class CreateUserService extends EntityService
19
{
20
21
    protected $repository;
22
23
    protected $authUserService;
24
25
    public function __construct(
26
        AuthUserService $authUserService,
27
        UserRepository $repository
28
    ) {
29
        $this->authUserService = $authUserService;
30
        $this->repository      = $repository;
31
32
        $authUserService->should('user.create');
33
    }
34
35
    public function run(array $data)
36
    {
37
        $this->checkRepository();
38
39
        $data['password'] = bcrypt($data['password']);
40
41
        $entity = $this->repository->create($data);
42
43
        return $entity;
44
    }
45
46
}
47