<?php
namespace App\Http\Requests\Api\PayinRequest;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Contracts\Validation\Validator;
use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Validation\Rule;
use Akaunting\Setting\Facade as Setting;
use Illuminate\Http\Request;
class PayinRequest 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
*/
public function rules(Request $request)
{
$minimum_pay_in_amount = Setting::get('minimum_transaction_amount');
$maximum_pay_in_amount = Setting::get('maximum_transaction_amount');
return [
'delivery_address_id' => ['required', 'exists:delivery_addresses,id,user_id,'.$request->id],
];
}
/**
* Add extra values to form request after validation.
*
* @return array
*/
public function validated() {
return array_merge(parent::validated(), [
// 'callback_url' => route('callback.user_transaction_callback'),
'paid_as' => PAID_AS_INVOICE
]);
}
/**
* Handle a failed validation attempt.
*
* @return void
*/
public function failedValidation(Validator $validator)
{
throw new HttpResponseException(response()->json([
'success' => false,
'error' => $validator->errors()->first(),
'error_code' => 422
]));
}
}