{{ __('app.fees.arrears.title') }}

{{ __('app.fees.arrears.desc', ['date' => \Illuminate\Support\Carbon::parse($asOfDate)->translatedFormat('d M Y')]) }}

@can('fee_reports.print') {{ __('app.actions.print') }} @endcan @can('fee_reports.export') {{ __('app.actions.export') }} @endcan
@if ($errors->any())
    @foreach ($errors->all() as $message)
  • {{ $message }}
  • @endforeach
@endif

{{ __('app.fees.arrears.summary.outstanding') }}

{{ number_format((float) $summary['outstanding'], 2) }}

{{ __('app.fees.arrears.summary.overdue') }}

{{ number_format((float) $summary['overdue'], 2) }}

{{ __('app.fees.arrears.summary.students') }}

{{ number_format((int) $summary['students']) }}

{{ __('app.fees.arrears.summary.invoices') }}

{{ number_format((int) $summary['invoices']) }}

@foreach ([ 'current' => 'app.fees.arrears.buckets.current', '1_30' => 'app.fees.arrears.buckets.1_30', '31_60' => 'app.fees.arrears.buckets.31_60', '61_90' => 'app.fees.arrears.buckets.61_90', 'over_90' => 'app.fees.arrears.buckets.over_90', ] as $bucket => $label)

{{ __($label) }}

{{ number_format((float) $summary[$bucket], 2) }}

@endforeach
@foreach ($years as $option) @endforeach @foreach ($divisions as $option) @endforeach @foreach ($classes as $option) @endforeach @foreach ($sections as $option) @endforeach
@forelse ($arrears as $row) @empty @endforelse
{{ __('app.fees.fields.student') }} {{ __('app.fees.fields.class') }} {{ __('app.fees.fields.invoice_no') }} {{ __('app.fees.fields.due_date') }} {{ __('app.fees.arrears.days_overdue') }} {{ __('app.fees.fields.total') }} {{ __('app.fees.fields.balance') }} {{ __('app.fees.fields.status') }} {{ __('app.actions.view') }}
{{ $row['student_name_en'] }} {{ $row['student_uid'] }} · {{ __('app.fees.fields.roll') }}: {{ $row['roll'] ?? '—' }} @if ($row['guardian_phone']) · {{ $row['guardian_phone'] }} @endif {{ $row['class'] ?? '—' }} {{ $row['section'] ?? $row['division'] ?? '—' }} {{ $row['invoice_no'] }} {{ $row['kind'] }} · {{ $row['billing_period'] }} {{ \Illuminate\Support\Carbon::parse($row['due_date'])->translatedFormat('d M Y') }} @if ($row['days_overdue'] > 0) {{ number_format($row['days_overdue']) }} {{ __('app.fees.arrears.days') }} @else {{ __('app.fees.arrears.not_due') }} @endif {{ number_format((float) $row['total'], 2) }} {{ number_format((float) $row['balance'], 2) }} @php $bucketColor = match ($row['bucket']) { 'current' => 'green', '1_30', '31_60' => 'gold', '61_90' => 'red', default => 'maroon', }; @endphp {{ __('app.fees.arrears.buckets.'.$row['bucket']) }} {{ __('app.actions.view') }}
@if ($arrears->hasPages())
{{ $arrears->links() }}
@endif