Passed
Push — develop ( 4cbaa0...09ba9e )
by Ngoding
05:32
created

StoreRequest::store()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 2
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 6
ccs 0
cts 3
cp 0
crap 2
rs 10
1
<?php
2
3
namespace App\Http\Requests\User;
4
5
use App\Models\Role;
6
use App\Models\User;
7
use Illuminate\Validation\Rule;
8
use Illuminate\Validation\Rules;
9
10
class StoreRequest extends AbstractRequest
11
{
12
    /**
13
     * {@inheritDoc}
14
     */
15
    public function rules()
16
    {
17
        return [
18
            'username' => ['required', 'string', 'max:255', Rule::unique(User::class)],
19
            'name' => ['required', 'string', 'max:255'],
20
            'email' => ['required', 'string', 'email', 'max:255', Rule::unique(User::class)],
21
            'password' => ['required', 'confirmed', Rules\Password::defaults()],
22
            'role' => ['required', Rule::exists(Role::class, 'name')],
23
        ];
24
    }
25
26
    /**
27
     * Store a newly created resource in storage.
28
     *
29
     * @return \App\Models\User
30
     */
31
    public function store(): User
32
    {
33
        /** @var \App\Models\User $user */
34
        $user = User::make($this->validated());
35
36
        return $user;
37
    }
38
}
39