Passed
Push — develop ( 6dcea6...5ae9a6 )
by Septianata
16:24
created

StoreRequest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 9
c 1
b 0
f 0
dl 0
loc 22
ccs 0
cts 4
cp 0
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getRules() 0 9 1
A authorize() 0 3 1
1
<?php
2
3
namespace App\Http\Requests\Order;
4
5
use App\Enum\OrderStatus;
6
use App\Models\Branch;
7
use App\Models\Customer;
8
use App\Models\Order;
9
use App\Models\User;
10
11
class StoreRequest extends AbstractRequest
12
{
13
    /**
14
     * {@inheritDoc}
15
     */
16
    public function authorize(): bool
17
    {
18
        return !Order::isMaximumOrderPerDayExceeded();
19
    }
20
21
    /**
22
     * {@inheritDoc}
23
     */
24
    public static function getRules()
25
    {
26
        return [
27
            'customer_id' => 'required|exists:' . Customer::class . ',id',
28
            'user_id' => 'sometimes|nullable|exists:' . User::class . ',id',
29
            'branch_id' => 'sometimes|nullable|exists:' . Branch::class . ',id',
30
            'schedule_date' => 'sometimes|nullable|date|after_or_equal:today',
31
            'order_status.status' => 'sometimes|nullable|enum:' . OrderStatus::class,
32
            'order_status.note' => 'sometimes|nullable|string|max:255',
33
        ];
34
    }
35
}
36