Files
pollux/app/Http/Requests/StoreBooking.php
T

83 lines
2.7 KiB
PHP

<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreBooking 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()
{
return [
'date' => 'required',
'reference' => 'required',
'person_or_company' => 'required',
'amount' => 'sometimes|required|numeric|min:0',
'account_type_id' => 'required',
'person_target_id' => 'empty_if:personTarget.person_id'
. '|empty_if:personTarget.date',
'personTarget.person_id' => 'empty_if:person_target_id'
. '|required_with:personTarget.date',
'personTarget.date' => 'sometimes'
. '|nullable'
. '|empty_if:person_target_id'
. '|before_or_equal:date'
];
}
public function messages()
{
return [
'date.required' =>
'Die Buchung muss ein Datum haben.',
'reference.required' =>
'Die Buchung muss einen Buchungstext haben.',
'person_or_company.required' =>
'Der Buchung muss eine Person oder Firma zugeordnet werden.',
'amount.required' =>
'Die Buchung muss einen Betrag haben.',
'amount.numeric' =>
'Der Betrag muss eine Zahl sein.',
'amount.min' =>
'Der Betrag darf kein Vorzeichen haben. Das Vorzeichen der
Buchung wird durch das zugeordnete Konto bestimmt.',
'account_type_id.required' =>
'Der Buchung muss ein Konto zugewiesen werden.',
'person_target_id.empty_if' =>
'Wenn ein Personenkonto angewählt ist kann keine neue '
. 'Soll-Buchung angelegt werden.',
'personTarget.person_id.empty_if' =>
'Wenn eine neue Soll-Buchung angelegt werden soll kann kein '
. 'Personenkonto gewählt werden.',
'personTarget.person_id.required_with' =>
'Die neue Soll-Buchung muss einer Person zugeordnet werden.',
'personTarget.date.empty_if' =>
'Wenn eine neue Soll-Buchung angelegt werden soll kann kein '
. 'Personenkonto gewählt werden.',
'personTarget.date.before_or_equal' =>
'Das Datum der neuen Soll-Buchung muss vor dem Datum der '
. 'Buchung liegen.'
];
}
}