Files
sam-api/app/Http/Requests/Quality/SaveChecklistTemplateRequest.php

41 lines
1.6 KiB
PHP
Raw Normal View History

<?php
namespace App\Http\Requests\Quality;
use Illuminate\Foundation\Http\FormRequest;
class SaveChecklistTemplateRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
public function rules(): array
{
return [
'name' => ['nullable', 'string', 'max:255'],
'categories' => ['required', 'array', 'min:1'],
'categories.*.id' => ['required', 'string', 'max:50'],
'categories.*.title' => ['required', 'string', 'max:255'],
'categories.*.subItems' => ['required', 'array'],
'categories.*.subItems.*.id' => ['required', 'string', 'max:50'],
'categories.*.subItems.*.name' => ['required', 'string', 'max:255'],
'options' => ['nullable', 'array'],
];
}
public function messages(): array
{
return [
'categories.required' => __('validation.required', ['attribute' => '카테고리']),
'categories.min' => __('validation.min.array', ['attribute' => '카테고리', 'min' => 1]),
'categories.*.id.required' => __('validation.required', ['attribute' => '카테고리 ID']),
'categories.*.title.required' => __('validation.required', ['attribute' => '카테고리 제목']),
'categories.*.subItems.required' => __('validation.required', ['attribute' => '점검항목']),
'categories.*.subItems.*.id.required' => __('validation.required', ['attribute' => '항목 ID']),
'categories.*.subItems.*.name.required' => __('validation.required', ['attribute' => '항목명']),
];
}
}