149 lines
3.0 KiB
PHP
149 lines
3.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Requests\Admin;
|
|
|
|
use App\Enums\AdminStatus;
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
use Illuminate\Validation\Rule;
|
|
|
|
class AdminStoreRequest extends FormRequest
|
|
{
|
|
public function authorize(): bool
|
|
{
|
|
return true;
|
|
}
|
|
|
|
public function rules(): array
|
|
{
|
|
return [
|
|
|
|
'first_name' => [
|
|
'required',
|
|
'string',
|
|
'max:255',
|
|
],
|
|
'last_name' => [
|
|
'required',
|
|
'string',
|
|
'max:255',
|
|
],
|
|
|
|
'username' => [
|
|
'required',
|
|
'string',
|
|
'max:255',
|
|
'unique:admins,username',
|
|
],
|
|
|
|
'email' => [
|
|
'required',
|
|
'email',
|
|
'max:255',
|
|
'unique:admins,email',
|
|
],
|
|
|
|
'password' => [
|
|
'required',
|
|
'string',
|
|
'min:8',
|
|
'confirmed',
|
|
],
|
|
|
|
'status' => [
|
|
'required',
|
|
Rule::in([
|
|
AdminStatus::ENABLE->value,
|
|
AdminStatus::DISABLE->value,
|
|
]),
|
|
],
|
|
|
|
|
|
'admin_view' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'admin_create' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'admin_edit' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'admin_delete' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
|
|
'user_view' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'user_edit' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'user_delete' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
|
|
// =========================
|
|
// دسترسی تورها
|
|
// =========================
|
|
|
|
'tour_view' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'tour_create' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'tour_edit' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'tour_delete' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
|
|
// =========================
|
|
// دسترسی پروازها
|
|
// =========================
|
|
|
|
'flight_view' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'flight_create' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'flight_edit' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
|
|
'flight_delete' => [
|
|
'nullable',
|
|
'boolean',
|
|
],
|
|
];
|
|
}
|
|
}
|