refactor: add logging to absences

This commit is contained in:
Miguel Nogueira 2022-04-03 20:18:40 +01:00
parent 7bf5c1fbe1
commit 06df0e7906

View File

@ -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();
}