Server IP : 103.191.208.50 / Your IP : 216.73.216.53 Web Server : LiteSpeed System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64 User : celkcksm ( 1031) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, popen, exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/celkcksm/cms.ncriptech.com/../hrms.ncriptech.com/app/Traits/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php namespace App\Traits; use App\Models\Hrm\Attendance\Attendance; use Carbon\Carbon; trait AutoCheckoutTrait { public function autoCheckout(){ try { //code... $attendances = $this->incompleteAttendances(); foreach($attendances as $attendance){ $inputTime = $attendance->user->shift->dutySchedule->end_time; $time = Carbon::createFromFormat('H:i:s', $inputTime); $time->addMinutes(1); $resultTime = $time->format('H:i:s'); $attendance->update([ 'check_out' => $attendance->date.' '.'21:59:59', //'check_out' => $attendance->date.' '.$resultTime, ]); } echo "Auto Checkout Successful"; } catch (\Throwable $th) { //throw $th; echo "Sorry! Something went wrong"; } } protected function incompleteAttendances(){ $selectable = ['id', 'user_id', 'date', 'check_in', 'check_out']; $Incomplete_attendances = Attendance::with('user')->whereNotNull('check_in')->whereNull('check_out')->select($selectable)->get(); return $Incomplete_attendances; } }