{{-- HEADER --}}
{{-- EMPLOYEE & ATTENDANCE INFORMATION GRID --}}
| Employee Code |
{{ $payslip->personnel?->employee_code }} |
Working Days |
{{ $payslip->working_days }} |
| Employee Name |
{{ $payslip->personnel?->first_name }} {{ $payslip->personnel?->last_name }} |
Days Present |
{{ $payslip->present_days }} |
| Department |
{{ $payslip->personnel?->department?->name ?? 'N/A' }} |
Paid Leaves |
{{ $payslip->paid_leave_days }} |
| Designation |
{{ $payslip->personnel?->designation?->name ?? 'N/A' }} |
Days Absent |
{{ $payslip->absent_days }} |
| PF UAN |
{{ $payslip->personnel?->uan ?? '-' }} |
Bank Name |
{{ $payslip->personnel?->bank_name ?? '-' }} |
| ESI Number |
{{ $payslip->personnel?->esi_number ?? '-' }} |
Bank A/C No. |
{{ $payslip->personnel?->bank_account_no ?? '-' }} |
{{-- DUAL COLUMN EARNINGS & DEDUCTIONS MATRIX --}}
@php
$earnings = $payslip->items->where('type', 'earning')->values();
$deductions = $payslip->items->where('type', 'deduction')->values();
$maxRows = max($earnings->count(), $deductions->count());
@endphp
| Earnings Description |
Amount (₹) |
@for($i = 0; $i < $maxRows; $i++)
@php $item = $earnings->get($i); @endphp
| {{ $item ? $item->component_name : ' ' }} |
{{ $item ? number_format($item->amount, 2) : '' }} |
@endfor
| Total Earnings (Gross) |
₹{{ number_format($payslip->total_earnings, 2) }} |
| Deductions Description |
Amount (₹) |
@for($i = 0; $i < $maxRows; $i++)
@php $item = $deductions->get($i); @endphp
| {{ $item ? $item->component_name : ' ' }} |
{{ $item ? number_format($item->amount, 2) : '' }} |
@endfor
| Total Deductions |
₹{{ number_format($payslip->total_deductions, 2) }} |
{{-- NET PAY BANNER --}}
Net Take-Home Salary
{{ \App\Services\PrintDataFormatter::numberToWords($payslip->net_salary) }}
₹{{ number_format($payslip->net_salary, 2) }}
{{-- SIGNATURE LINES --}}
@include('pdfs.partials._footer')