DETAIL OF TIMESHEET CALCULATION
@if($service_details['drivers_name']==='Muhammad Muflih Akbar') @else @endif
Employee Name {{$service_details['drivers_name']}}
Position {{$service_details['job_title_name']}}
Employee Status Job Holder
Users Name {{$service_details['users_name']}}
Employer Name {{$company_information['company_name']}}
Date Period{{ $timesheet[0]['human_data'] }} - {{$timesheet[14]['human_data']}} {{ $final_periode }}

@if($_GET['company_id']==8) @else @endif @php function convertTimeToMinutes($time) { // Cek apakah input null, kosong, atau tidak memiliki format waktu yang valid if (is_null($time) || $time === '' || strpos($time, ':') === false) { return 0; // Jika tidak valid, anggap sebagai 0 menit } // Pecah waktu menjadi jam dan menit list($hours, $minutes) = explode(':', $time); // Pastikan jam dan menit adalah angka sebelum melakukan perhitungan $hours = is_numeric($hours) ? (int)$hours : 0; $minutes = is_numeric($minutes) ? (int)$minutes : 0; return ($hours * 60) + $minutes; } function convertMinutesToTime($minutes) { // Cek apakah input null atau kosong if (is_null($minutes) || $minutes === '') { return "00:00"; // Jika tidak valid, kembalikan waktu default "00:00" } // Pastikan nilai menit adalah angka sebelum melakukan perhitungan $minutes = is_numeric($minutes) ? (int)$minutes : 0; $hours = floor($minutes / 60); $minutes = $minutes % 60; return sprintf("%02d:%02d", $hours, $minutes); } $total_attendance_fee = 0; $jam_lembur = 0; $jam_lembur_holiday = 0; $jumlah_jam_kerja = 0; $jumlah_jam_kerja_minutes = 0; $jumlah_breaktime = 0; $jumlah_eff_work_hour =0; $jumlah_jumlah_jam_lembur = 0; if($service_details['drivers_name']==='Muhammad Muflih Akbar'){ $datatimesheet = array_slice($timesheet, 0, 15); } else { $datatimesheet = $timesheet; } @endphp @foreach($datatimesheet as $row) @if($row['jumlah_jam_kerja']=='0:00' || $row['jumlah_jam_kerja']=='0:0') @else @endif @if($row['breaktime']=='0:00' || $row['breaktime']=='0:0') @else @endif @if($row['eff_work_hour']=='0:00' || $row['eff_work_hour']=='0:0') @else @endif @if($row['jumlah_jam_lembur']=='0:00' || $row['jumlah_jam_lembur']=='0:0') @else @endif @if($row['jam_lembur']=='0') @else @endif @if($row['perhitungan_lembur']=='0') @else @endif @if($row['lembur_idr']=='0.00') @else @endif @if($row['jam_lembur_holiday']=='0.00') @else @endif @if($row['perhitungan_lembur_holiday']=='0') @else @endif @if($row['lembur_idr_holiday']=='0.00') @else @endif @if($row['transport_allowances']=='0') @else @endif @if($row['outoftown_rountrip']=='0') @else @endif @if($row['outoftown_overnight']=='0') @else @endif {{-- --}} @if($row['outoftown_city']=='null,') @else @endif @php // Pastikan $row['jam_lembur'] adalah angka valid sebelum dijumlahkan if (isset($row['jam_lembur']) && is_numeric($row['jam_lembur'])) { $jam_lembur += (float) $row['jam_lembur']; } else { $jam_lembur += 0; // Jika tidak valid, tambahkan 0 } // Periksa dan tambahkan jam lembur holiday if (isset($row['jam_lembur_holiday']) && is_numeric($row['jam_lembur_holiday']) && $row['jam_lembur_holiday'] != '0.00') { $jam_lembur_holiday += (float) $row['jam_lembur_holiday']; } else { $jam_lembur_holiday += 0; } // Konversi dan tambahkan jumlah jam kerja dalam menit if (isset($row['jumlah_jam_kerja'])) { $jumlah_jam_kerja_minutes += convertTimeToMinutes($row['jumlah_jam_kerja']); } // Konversi dan tambahkan breaktime dalam menit if (isset($row['breaktime'])) { $jumlah_breaktime += convertTimeToMinutes($row['breaktime']); } // Konversi dan tambahkan efektif jam kerja dalam menit if (isset($row['eff_work_hour'])) { $jumlah_eff_work_hour += convertTimeToMinutes($row['eff_work_hour']); } // Konversi dan tambahkan jumlah jam lembur dalam menit if (isset($row['jumlah_jam_lembur'])) { $jumlah_jumlah_jam_lembur += convertTimeToMinutes($row['jumlah_jam_lembur']); } // Menghapus tanda koma pada attendance_fee dan memastikannya numerik if (isset($row['attendance_fee'])) { $attendance_fee = is_numeric(str_replace(',', '', $row['attendance_fee'])) ? (float) str_replace(',', '', $row['attendance_fee']) : 0; } // Konversi ke tipe data numerik (float atau int) $total_attendance_fee += floatval($attendance_fee); @endphp @endforeach @php $total_jumlah_jam_kerja = convertMinutesToTime($jumlah_jam_kerja_minutes); $total_breaktime = convertMinutesToTime($jumlah_breaktime); $total_eff_work_hour = convertMinutesToTime($jumlah_eff_work_hour); $total_jumlah_jam_lembur = convertMinutesToTime($jumlah_jumlah_jam_lembur); @endphp {{-- --}} {{-- --}} {{-- --}}
No. Working TimeMeal & Transport AllowanceAttendance FeeTotal Work Hour Total Break Time Effective Work Hour Overtime Hour Overtime Fee Transport Allowances Out Of Town Allowances Remarks
Weekdays Weekends /Public Holiday Round
Trip
Over
Night
Date Day In Out In Hour x (OT) In IDR In Hour x (OT) In IDR
{{$row['day']}} {{$row['human_data']}} {{$row['human_day']}} {{$row['in_time']}} {{$row['out_time']}} {{App\Helpers\utilitiesHelper::viewNumberWithComma($row['attendance_fee'])}}{{$row['jumlah_jam_kerja']}}{{$row['breaktime']}}{{$row['eff_work_hour']}}{{$row['jumlah_jam_lembur']}} {{$row['jam_lembur']}} {{$row['perhitungan_lembur']}} {{$row['lembur_idr']}} {{$row['jam_lembur_holiday']}} {{$row['perhitungan_lembur_holiday']}}{{$row['lembur_idr_holiday']}}{{$row['transport_allowances']}}{{$row['outoftown_rountrip']}}{{$row['outoftown_overnight']}}{{$row['outoftown_city']}}{{$row['replacement']}}{{$row['outoftown_city']}}
{{ $workday }} days {{ number_format($total_attendance_fee) }} {{ $total_jamlembur_weekdays }}{{ $jam_lembur }} {{ $total_perhitungan_lembur }} {{ App\Helpers\utilitiesHelper::viewNumberWithCommaAndDecimal($final_ot_norm_value) }}{{ App\Helpers\utilitiesHelper::viewNumberWithCommaAndDecimal($total_jamlembur_holidays)}} A{{$jam_lembur_holiday}} {{ $total_perhitungan_lembur_holiday }} {{ App\Helpers\utilitiesHelper::viewNumberWithCommaAndDecimal($final_ot_hol_value) }} {{ App\Helpers\utilitiesHelper::viewNumberWithComma($final_transport_allowance) }} {{ App\Helpers\utilitiesHelper::viewNumberWithComma($final_out_town_value) }} {{ App\Helpers\utilitiesHelper::viewNumberWithComma($final_out_over_value) }}