File manager - Edit - /var/www/html/portalHomolog/app/Http/Requests/Organizacao/UnidadeOrganizacionalRequest.php
Back
<?php namespace App\Http\Requests\Organizacao; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Validation\Rule; class UnidadeOrganizacionalRequest extends FormRequest { public function authorize(): bool { return true; } public function rules(): array { $unidade = $this->route('unidade_organizacional'); $structureId = $this->input('structure_id'); $abbreviationUnique = Rule::unique('unidades_organizacionais', 'abbreviation') ->where(function ($query) use ($structureId) { return $structureId !== null && $structureId !== '' ? $query->where('structure_id', $structureId) : $query->whereNull('structure_id'); }); if ($unidade) { $abbreviationUnique->ignore($unidade->id, 'id'); } return [ 'structure_id' => 'nullable|exists:structures,id', 'name' => 'required|string|max:255', 'abbreviation' => ['required', 'string', 'max:50', $abbreviationUnique], 'status' => 'required|in:ATIVADO,DESATIVADO', ]; } public function messages(): array { return [ 'structure_id.exists' => __('* A secretaria informada não existe.'), 'name.required' => __('* O nome da unidade é obrigatório.'), 'name.max' => __('* O nome não pode ultrapassar 255 caracteres.'), 'abbreviation.required' => __('* A sigla da unidade é obrigatória.'), 'abbreviation.max' => __('* A sigla não pode ultrapassar 50 caracteres.'), 'abbreviation.unique' => __('* Esta sigla já está cadastrada para esta secretaria.'), 'status.required' => __('* O status é obrigatório.'), 'status.in' => __('* Status inválido.'), ]; } public function prepareForValidation(): void { $structureId = trim($this->structure_id ?? ''); $this->merge([ 'structure_id' => $structureId !== '' ? $structureId : null, 'name' => strip_tags(trim($this->name ?? '')), 'abbreviation' => strtoupper(trim($this->abbreviation ?? '')), ]); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings