diff --git a/app/Services/AbsenceService.php b/app/Services/AbsenceService.php index 212f23b..00d90af 100644 --- a/app/Services/AbsenceService.php +++ b/app/Services/AbsenceService.php @@ -51,7 +51,7 @@ class AbsenceService ]); Log::info('Processing new leave of absence request.', [ - 'userid' => $user->email, + 'requesting_user' => $user->email, 'absenceid' => $absence->id, 'reason' => $request->reason ]); @@ -69,6 +69,12 @@ class AbsenceService */ public function approveAbsence(Absence $absence): Absence { + Log::info('An absence request has just been approved.', [ + 'absenceid' => $absence->id, + 'reviewing_admim' => Auth::user()->email, + 'new_status' => 'APPROVED' + ]); + return $absence->setApproved(); } @@ -82,6 +88,12 @@ class AbsenceService */ public function declineAbsence(Absence $absence): Absence { + Log::warning('An absence request has just been declined.', [ + 'absenceid' => $absence->id, + 'reviewing_admim' => Auth::user()->email, + 'new_status' => 'DECLINED' + ]); + return $absence->setDeclined(); } @@ -95,9 +107,30 @@ class AbsenceService */ public function cancelAbsence(Absence $absence) { + Log::warning('An absence request has just been cancelled (only cancellable by requester).', [ + 'absenceid' => $absence->id, + 'new_status' => 'CANCELLED' + ]); + return $absence->setCancelled(); } + /** + * Sets an absence as Ended. + * + * @param Absence $absence + * @return bool + */ + public function endAbsence(Absence $absence): Absence + { + Log::info('An absence request has just expired.', [ + 'absenceid' => $absence->id, + 'new_status' => 'ENDED' + ]); + + return $absence->setEnded(); + } + /** * Removes an absence * @@ -106,6 +139,11 @@ class AbsenceService */ public function removeAbsence(Absence $absence): bool { + Log::alert('An absence request has just been removed.', [ + 'absence_details' => $absence, + 'reviewing_admim' => Auth::user()->email, + ]); + return $absence->delete(); }