@extends('garage.layouts.app') @section('content')
Payroll summary
Month: {{ $month }} ({{ $from }} → {{ $to }}) · Target uses {{ $monthDays }} days × working hrs/day
@include('garage.attendance._nav')
@forelse($summary as $r) @empty @endforelse
Employee Hrs/day Target (hrs) Worked (hrs) Short (hrs) Present Absent
@if(!empty($r->employee_ledger_id)) {{ $r->employee_name }} @else {{ $r->employee_name }} @endif
{{ $r->employee_code ?: '—' }}
{{ (float)($r->working_hours_per_day ?? 0) > 0 ? number_format((float)$r->working_hours_per_day, 2) : '—' }} {{ ($r->target_hours ?? 0) > 0 ? number_format($r->target_hours, 2) : '—' }} {{ number_format($r->worked_hours ?? 0, 2) }} {{ ($r->shortfall_hours ?? 0) > 0 ? number_format($r->shortfall_hours, 2) : '0' }} {{ (int) $r->present_days }} {{ (int) $r->absent_days }}
No data. Sync device punches and build daily summary, then refresh payroll.
@endsection