File manager - Edit - /var/www/html/spdc/api/app/Http/Requests/ScaleRequest.php
Back
<?php namespace App\Http\Requests; use App\Rules\ArrayInput; use App\Rules\UserExists; use App\Rules\BooleanInput; use App\Rules\ScaleTeamInfoIsRequired; use Illuminate\Foundation\Http\FormRequest; class ScaleRequest extends FormRequest { /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } /** * Get the validation rules that apply to the request. * * @return array<string, mixed> */ public function rules() { if ($this->route()->getName() === 'scale.store') { $rules = [ 'finished' => ['prohibited'], 'warning' => ['nullable', new BooleanInput()], 'month' => ['required'], 'year' => ['required'], 'department_id' => ['required', 'exists:departments,id'], 'members' => ['required', new ArrayInput()], 'members.*.user_id' => ['nullable'], // 'members.*.user_id' => ['required', new UserExists()], // 'members.*.user_id' => ['required', 'exists:users,id'], 'members.*.scale_function_id' => [new ScaleTeamInfoIsRequired($this->input('department_id')), 'exists:scale_functions,id'], 'members.*.scale_team_id' => [new ScaleTeamInfoIsRequired($this->input('department_id')), 'exists:scale_teams,id'], // fazer validação: user_id não pode estar repetido, e não pode ter scale_function_id repetida por scale_team_id ]; } if ($this->route()->getName() === 'scale.update') { $rules['members'] = ['prohibited']; $rules['members.*.scale_function_id'] = ['prohibited']; $rules['members.*.scale_team_id'] = ['prohibited']; $rules['calendar'] = ['required', new ArrayInput]; $rules['calendar.*.day'] = ['required']; $rules['calendar.*.team'] = [new ScaleTeamInfoIsRequired($this->input('department.id')), new ArrayInput]; $rules['calendar.*.team.id'] = [new ScaleTeamInfoIsRequired($this->input('department.id')), 'exists:scale_teams,id']; $rules['calendar.*.team.name'] = [new ScaleTeamInfoIsRequired($this->input('department.id')), new ArrayInput]; $rules['calendar.*.agents'] = ['required', new ArrayInput]; $rules['calendar.*.agents.*.function'] = [new ScaleTeamInfoIsRequired($this->input('department.id'))]; $rules['calendar.*.agents.*.function.id'] = [new ScaleTeamInfoIsRequired($this->input('department.id'))]; $rules['calendar.*.agents.*.function.name'] = [new ScaleTeamInfoIsRequired($this->input('department.id'))]; $rules['calendar.*.agents.*.user'] = ['required', new ArrayInput]; $rules['calendar.*.agents.*.user.id'] = ['required']; $rules['calendar.*.agents.*.user.name'] = ['required']; } return $rules; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings