@foreach ($payrollData->chunk(6) as $chunk)

{{ $client->client->agency->name }}

{{ $client->department_name }} Summary Payroll Report (Batch ID: {{ $batchCode->id }})

Period Cover: {{ \Carbon\Carbon::parse($batchCode->pay_period_start)->format('F j, Y') }} to {{ \Carbon\Carbon::parse($batchCode->pay_period_end)->format('F j, Y') }}

@foreach ($chunk as $data) @php $payroll = $data['payroll']; @endphp
Employee Rate Earnings Deductions Net Pay
{{ $payroll->employee->last_name }}, {{ $payroll->employee->first_name }} {{ $payroll->employee->middle_name ? $payroll->employee->middle_name[0] . '.' : '' }} {{ $payroll->rate }} {{ number_format($data['gross'], 2) }} {{ number_format($data['deductions'], 2) }} {{ number_format($payroll->earnings, 2) }}
{{ optional($payroll->employee->channelBank?->bankprofile)->name ?? 'No Bank' }} - {{ $payroll->employee->channelBank?->bankaccount ?? 'No Account' }}
{{-- Gross & Allowances --}} {{-- Benefits --}} {{-- Deductions --}} {{-- Loans --}}
Gross Pay & Allowances Benefits Deductions Loans

Basic Salary: P{{ number_format($payroll->basic_salary, 2) }}

@foreach ($payroll->othersForPayroll as $other)

{{ $other->name }}: P{{ number_format($other->amount, 2) }}

@endforeach
@foreach ($data['benefits'] as $benefit)

{{ $benefit['type'] }}: P{{ number_format($benefit['amount'], 2) }}

@endforeach
@foreach ($payroll->trxConstantDeductions as $deduction)

{{ $deduction->trxConstant->trxCode->description ?? 'Deduction' }}: P{{ number_format($deduction->E_Amount, 2) }}

@endforeach @foreach ($data['nonStandardDeductions'] as $ns)

{{ $ns['type'] }}: P{{ number_format($ns['amount'], 2) }}

@endforeach
@foreach ($payroll->trxLoanDeductions as $loan)

{{ $loan->trxLoan->trxCode->description ?? 'Loan' }}: P{{ number_format($loan->Amount, 2) }}

@endforeach
@endforeach
@endforeach {{-- Summary Table --}} @php $earningsRows = []; $deductionRows = []; $totalEarnings = 0; $totalDeductions = 0; foreach ($payrollData as $data) { $payroll = $data['payroll']; $basic = $payroll->days_worked_withdeduction * $payroll->rate; $earningsRows['Basic Salary'] = ($earningsRows['Basic Salary'] ?? 0) + $basic; $totalEarnings += $basic; foreach ($payroll->othersForPayroll as $other) { $earningsRows[$other->name] = ($earningsRows[$other->name] ?? 0) + $other->amount; $totalEarnings += $other->amount; } foreach ($data['benefits'] as $benefit) { $deductionRows[$benefit['type']] = ($deductionRows[$benefit['type']] ?? 0) + $benefit['amount']; $totalDeductions += $benefit['amount']; } foreach ($data['nonStandardDeductions'] as $ns) { $deductionRows[$ns['type']] = ($deductionRows[$ns['type']] ?? 0) + $ns['amount']; $totalDeductions += $ns['amount']; } foreach ($payroll->trxConstantDeductions as $deduction) { $desc = $deduction->trxConstant->trxCode->description ?? 'Unknown'; if ($deduction->status == 1) { $earningsRows[$desc] = ($earningsRows[$desc] ?? 0) + $deduction->E_Amount; $totalEarnings += $deduction->E_Amount; } else { $deductionRows[$desc] = ($deductionRows[$desc] ?? 0) + $deduction->E_Amount; $totalDeductions += $deduction->E_Amount; } } foreach ($payroll->trxLoanDeductions as $loan) { $desc = $loan->trxLoan->trxCode->description ?? 'Loan'; $deductionRows[$desc] = ($deductionRows[$desc] ?? 0) + $loan->Amount; $totalDeductions += $loan->Amount; } } ksort($earningsRows, SORT_NATURAL | SORT_FLAG_CASE); ksort($deductionRows, SORT_NATURAL | SORT_FLAG_CASE); @endphp {{-- Earnings --}} @foreach ($earningsRows as $name => $amount) @endforeach {{-- Deductions --}} @foreach ($deductionRows as $name => $amount) @endforeach
Trx Name Earnings Deduction
{{ $name }} P{{ number_format($amount, 2) }}
{{ $name }} P{{ number_format($amount, 2) }}
Total P{{ number_format($totalEarnings, 2) }} P{{ number_format($totalDeductions, 2) }}