TbrCalculationRequest.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace App\Http\Requests;
  3. use Illuminate\Foundation\Http\FormRequest;
  4. class TbrCalculationRequest extends FormRequest
  5. {
  6. public function rules(): array
  7. {
  8. return [
  9. 'unit_id' => ['required', 'integer', 'exists:units,id'],
  10. 'reference_year' => ['required', 'integer', 'min:2020', 'max:2099'],
  11. 'reference_month' => ['required', 'integer', 'min:1', 'max:12'],
  12. 'revenue_value' => ['nullable', 'numeric', 'min:0'],
  13. ];
  14. }
  15. public function messages(): array
  16. {
  17. return [
  18. 'unit_id.required' => 'A unidade é obrigatória.',
  19. 'unit_id.exists' => 'Unidade não encontrada.',
  20. 'reference_year.required' => 'O ano de referência é obrigatório.',
  21. 'reference_month.required' => 'O mês de referência é obrigatório.',
  22. 'reference_month.between' => 'O mês de referência deve ser entre 1 e 12.',
  23. 'revenue_value.min' => 'O faturamento não pode ser negativo.',
  24. ];
  25. }
  26. protected function prepareForValidation(): void
  27. {
  28. if ($this->revenue_value === null || $this->revenue_value === '') {
  29. $this->merge(['revenue_value' => 0]);
  30. }
  31. }
  32. }