У меня есть две таблицы, employees table
и payrolls table
, сейчас я пытаюсь добавить данные в payrolls table
для расчета суммы брутто для сотрудника, но когда я пытаюсь это сделать, я продолжаю получать эту ошибку, может кто-нибудь помочь мне разобраться!
Вот Payroll model
`
protected $dates = ['deleted_at'];
protected $fillable = ['over_time', 'notified','hours','rate', 'gross', 'employee_id'];
public function employee(){
return $this->belongsTo('App\Employee');
}
public function grossPay(){
$calc = 0;
if($this->employee->full_time && !$this->over_time){
return $this->gross = $this->employee->role->salary;
}
if($this->employee->full_time && $this->over_time){
$calc = $this->hours * $this->rate;
return $this->gross = $calc + $this->employee->role->salary;
}
if($this->over_time || !$this->employee->full_time){
$calc = $this->hours * $this->rate;
return $this->gross = $calc;
}
return $this->$gross = 0;
}
}`
Вот маршрут : Route::post('/payrolls/{id}', 'PayrollController@store')->name('payrolls.store');
PayrollController
public function store(Request $request)
{
$this->validate($request ,[
'over_time' => 'required|bool',
'hours' => 'required',
'rate' => 'required'
]);
$payroll = new Payroll;
$payroll->over_time = $request->over_time;
$payroll->hours = $request->hours;
$payroll->rate = $request->rate;
$payroll->employee_id = $request->employee_id;
$payroll->grossPay();
$payroll->save();
return redirect('payroll.show', ['employee_id'=>$employee_id] )->with('success','payroll created');
}