@extends('layouts.user') @section('title', __('payrolls.payroll_summary_report')) @section('page_title', __('payrolls.payroll_summary_report')) @section('breadcrumb', __('payrolls.hr_payroll')) @section('content')
{{-- Header --}}

{{ __('payrolls.payroll_summary_report') }}

{{ __('payrolls.export_pdf') }}
{{-- Filters --}}
{{ __('payrolls.reset') }}
{{-- Table --}}
@forelse($payrolls as $payroll) @php $stats = $payrollItemStats[$payroll->id] ?? [ 'gross' => 0, 'ot' => 0, 'advance' => 0, 'net' => 0, 'paid' => 0, 'due' => 0, ]; $employeeNames = collect($payroll->items ?? []) ->map(fn($item) => $item->employee->name ?? null) ->filter() ->unique() ->values(); @endphp @empty @endforelse
{{ __('payrolls.payroll_month') }} {{ __('payrolls.employees') }} {{ __('payrolls.gross') }} {{ __('payrolls.ot') }} {{ __('payrolls.advance') }} {{ __('payrolls.net') }} {{ __('payrolls.paid') }} {{ __('payrolls.due') }} {{ __('payrolls.status') }} {{ __('payrolls.action') }}
{{ sprintf('%02d', $payroll->payroll_month) }}-{{ $payroll->payroll_year }} @if($employeeNames->count())
{{ $employeeNames->implode(', ') }}
@else {{ __('payrolls.na') }} @endif
৳ {{ number_format((float) $stats['gross'], 2) }} ৳ {{ number_format((float) $stats['ot'], 2) }} ৳ {{ number_format((float) $stats['advance'], 2) }} ৳ {{ number_format((float) $stats['net'], 2) }} ৳ {{ number_format((float) $stats['paid'], 2) }} ৳ {{ number_format((float) $stats['due'], 2) }} {{ match($payroll->status) { 'draft' => __('payrolls.draft'), 'finalized' => __('payrolls.finalized'), 'paid_partial' => __('payrolls.paid_partial'), 'paid_full' => __('payrolls.paid_full'), 'cancelled' => __('payrolls.cancelled'), default => ucwords(str_replace('_', ' ', $payroll->status)), } }} {{ __('payrolls.view') }}
{{ __('payrolls.no_payroll_found') }}
@if($payrolls->hasPages())
{{ $payrolls->links() }}
@endif
@endsection