TreasuryLaunchRequest.php 915 B

1234567891011121314151617181920212223
  1. <?php
  2. namespace App\Http\Requests;
  3. use Illuminate\Foundation\Http\FormRequest;
  4. use Illuminate\Validation\Rule;
  5. class TreasuryLaunchRequest extends FormRequest
  6. {
  7. public function rules(): array
  8. {
  9. $isCreate = $this->isMethod('POST');
  10. return [
  11. 'account_id' => [$isCreate ? 'required' : 'sometimes', 'integer', 'exists:treasury_accounts,id'],
  12. 'transaction_type' => [$isCreate ? 'required' : 'sometimes', 'string', Rule::in(['entrada', 'saida'])],
  13. 'description' => [$isCreate ? 'required' : 'sometimes', 'string', 'max:1000'],
  14. 'amount' => [$isCreate ? 'required' : 'sometimes', 'numeric', 'gt:0'],
  15. 'launch_date' => ['sometimes', 'date'],
  16. 'financial_plan_account_id' => ['nullable', 'integer', 'exists:financial_plan_accounts,id'],
  17. ];
  18. }
  19. }