/** * View employees with loan * * @param int $id * @return Response */ public function indexLoan($id) { $labor_id = Labor::where('employee_no', $id)->first()->id; $loans = Loan::where('labor_id', $labor_id)->get(); $loanDetails = []; foreach ($loans as $loan) { $monthCounter = 0; $totalMonth = count(Labor::find($labor_id)->LoanMonths()->where('loan_id', $loan->id)->get()->toArray()); $thisMonth = intval(Carbon::today()->format('ym')); foreach (Labor::find($labor_id)->LoanMonths()->where('loan_id', $loan->id)->get() as $loanMonth) { if (intval($loanMonth->deduction_date->format('ym')) < $thisMonth) { $monthCounter++; } } $loanDetails[$loan->id]['months_left'] = $totalMonth - $monthCounter; $loanDetails[$loan->id]['amount_left'] = floatval($loan->deduction * ($totalMonth - $monthCounter)); $loanDetails[$loan->id]['deducted'] = $loan->deduction * $monthCounter; $loanDetails[$loan->id]['next_month'] = Carbon::today()->format('F, Y'); } //dd($loans); //dd($loans->first()->starting_date); return view('pages.index_loan', compact('loans', 'id', 'loanDetails')); }
/** * Update attendance of the specified labor * * @param Request $request * @param int $id * @return Response */ public function updateAttendance(AttRequest $request, $id) { foreach (Labor::find($id)->attendance()->where('id', '=', $this->getDateId())->get() as $attendance) { $attendance->pivot->attended = $request->input('present'); if ($attendance->holiday == 1) { $attendance->pivot->ot = intval($request->input('overtime')) * 1.2; } else { $attendance->pivot->ot = $request->input('overtime'); } $attendance->pivot->bot = $request->input('bonus_ot'); $attendance->pivot->save(); //dd($attendance->pivot->attended); } return redirect('attendance/list'); }