@extends('layouts.adminlte') @section('title', 'Budget Payroll Harian') @section('page_title', 'Budget Payroll Harian') @push('styles') @endpush @section('content') @php $rows = collect($detail['rows'] ?? []); $columns = collect($detail['columns'] ?? []); $summary = (array) ($detail['summary'] ?? []); $otSummary = (array) ($summary['ot_values'] ?? []); $fmt = fn ($value, $digits = 2) => number_format((float) ($value ?? 0), $digits, ',', '.'); $rupiah = fn ($value) => 'Rp ' . number_format((float) ($value ?? 0), 0, ',', '.'); $dateLabel = $date instanceof \Carbon\Carbon ? $date->format('Y-m-d') : (string) ($detail['date'] ?? '-'); $detailNet = (float) ($budget['net'] ?? 0); $detailGross = (float) ($budget['gross'] ?? 0); $totalNormalNominal = (float) ($summary['estimasi_gaji_normal'] ?? 0); $totalOvertimeNominal = (float) ($summary['estimasi_lembur'] ?? 0); @endphp
Profil {{ request('profil_bulan_id') }} | {{ $dateLabel }}
Budget Payroll {{ $dateLabel }}
Rincian actual hadir harian. Halaman ini tidak dipotong pagination, jadi seluruh karyawan approved pada tanggal tersebut ikut tampil.
Kembali Dashboard
Mode
{{ $budget['label'] ?: '-' }}
{{ $budget['mode'] ?: 'actual/estimate' }}
Net Harian
{{ $rupiah($detailNet) }}
Budget dari widget payroll
Bruto Harian
{{ $rupiah($detailGross) }}
Sebelum PPh21/BPJS
Karyawan Actual
{{ number_format((int) ($summary['employees'] ?? 0), 0, ',', '.') }}
Widget: {{ number_format((int) ($budget['employee_count'] ?? 0), 0, ',', '.') }} karyawan dihitung
Grand Total Actual Hadir
Hari Hadir
{{ $fmt($summary['hari_hadir'] ?? 0) }}
Rate / Jam
{{ $rupiah($summary['rate_gaji_per_jam'] ?? 0) }}
Jam Normal
{{ $fmt($summary['jam_normal'] ?? 0) }}
Jam Lembur xKali
{{ $fmt($summary['jam_lembur_xkali'] ?? 0) }}
Estimasi Gaji Normal
{{ $rupiah($totalNormalNominal) }}
Estimasi Lembur
{{ $rupiah($totalOvertimeNominal) }}
PPh21
{{ $rupiah($budget['pph21'] ?? 0) }}
BPJS
{{ $rupiah($budget['bpjs'] ?? 0) }}
Pembanding Planning Normal
Planning normal {{ $rupiah($budget['planning_net'] ?? 0) }}
Bruto normal {{ $rupiah($budget['planning_gross'] ?? 0) }}
Potensi OT dikeluarkan {{ $rupiah($budget['overtime_removed'] ?? 0) }}
Planning dipakai sebagai pembanding jika semua karyawan masuk normal tanpa lembur.
Rincian Actual Hadir
{{ $dateLabel }} | {{ number_format((int) ($summary['employees'] ?? 0), 0, ',', '.') }} karyawan | Hari hadir {{ $fmt($summary['hari_hadir'] ?? 0) }} | Jam normal {{ $fmt($summary['jam_normal'] ?? 0) }} | Lembur bersih {{ $fmt($summary['jam_lembur_bersih'] ?? 0) }}
{{ number_format($rows->count(), 0, ',', '.') }} row
@foreach ($columns as $col) @endforeach @forelse ($rows as $row) @foreach ($columns as $col) @php $key = (string) ($col['key'] ?? ''); @endphp @endforeach @empty @endforelse @foreach ($columns as $col) @php $key = (string) ($col['key'] ?? ''); @endphp @endforeach
No. Karyawan Hari Hadir Rate Gaji / Jam Jam Normal Jam Lembur Bersih{{ $col['label'] ?? $col['key'] ?? '-' }}Jam Lembur xKali Est. Gaji Normal Est. Lembur
{{ number_format((int) ($row['no'] ?? $loop->iteration), 0, ',', '.') }} {{ $row['karyawan'] ?? '-' }} {{ $fmt($row['hari_hadir'] ?? 0) }} {{ $rupiah($row['rate_gaji_per_jam'] ?? 0) }} {{ $fmt($row['jam_normal'] ?? 0) }} {{ $fmt($row['jam_lembur_bersih'] ?? 0) }}{{ $fmt(($row['ot_values'] ?? [])[$key] ?? 0) }}{{ $fmt($row['jam_lembur_xkali'] ?? 0) }} {{ $rupiah($row['estimasi_gaji_normal'] ?? 0) }} {{ $rupiah($row['estimasi_lembur'] ?? 0) }}
Belum ada actual hadir approved pada tanggal ini.
Grand Total {{ $fmt($summary['hari_hadir'] ?? 0) }} {{ $rupiah($summary['rate_gaji_per_jam'] ?? 0) }} {{ $fmt($summary['jam_normal'] ?? 0) }} {{ $fmt($summary['jam_lembur_bersih'] ?? 0) }}{{ $fmt($otSummary[$key] ?? 0) }}{{ $fmt($summary['jam_lembur_xkali'] ?? 0) }} {{ $rupiah($summary['estimasi_gaji_normal'] ?? 0) }} {{ $rupiah($summary['estimasi_lembur'] ?? 0) }}
@endsection