@php $snapshot = $loanSnapshot ?? []; $borrowerName = $snapshot['borrower_name'] ?? ($case->loan?->loanClient?->full_name ?? '—'); $phone = $snapshot['phone'] ?? $case->loan?->loanClient?->phone; $loanNumber = $snapshot['loan_number'] ?? $case->loan?->loan_number ?? '—'; $outstanding = (float) ($snapshot['total_outstanding'] ?? $case->loan?->balance ?? 0); $arrears = (float) ($snapshot['arrears'] ?? $case->arrears_amount ?? 0); $dpd = (int) ($snapshot['dpd'] ?? $case->current_dpd ?? 0); $classification = strtolower((string) ($snapshot['classification'] ?? $provisionIntel['classification_label'] ?? '')); $activePtp = $case->promises->firstWhere('status', \App\Models\LoanCollectionPromise::STATUS_ACTIVE); $collectorName = $case->collector ? trim($case->collector->first_name.' '.$case->collector->last_name) : 'Unassigned'; $stageLabel = $stageOptions[$case->escalation_stage] ?? $case->escalation_stage; $queueLabel = $queueOptions[$case->queue] ?? $case->queue; $classificationBadge = match (true) { str_contains($classification, 'loss') => 'bg-red-950 text-white', str_contains($classification, 'doubtful') => 'bg-red-600 text-white', str_contains($classification, 'substandard') => 'bg-orange-500 text-white', str_contains($classification, 'watch') => 'bg-amber-100 text-amber-900', str_contains($classification, 'current') => 'bg-green-100 text-green-800', default => 'bg-slate-100 text-slate-700', }; @endphp

{{ $case->reference }}

{{ $stageLabel }} @if ($activePtp) PTP active @endif @if ($classification !== '') {{ $snapshot['classification'] ?? $provisionIntel['classification_label'] ?? '—' }} @endif @if (! empty($clientScoreBadge)) @include('loan.partials.client-score-badge', ['badge' => $clientScoreBadge]) @endif @if ($case->legal_escalated) Legal · {{ $case->legal_status }} @endif
Borrower
{{ $borrowerName }}
Phone
@if(filled($phone))@else — @endif
Loan account
{{ $loanNumber }}
Outstanding
KES {{ number_format($outstanding, 0) }}
Arrears
KES {{ number_format($arrears, 0) }}
DPD
{{ $dpd }} days
Branch
{{ $case->branch?->name ?? ($snapshot['branch'] ?? '—') }}
Collector
{{ $collectorName }}
@if (auth()->user()?->hasLoanPermission('collections.configure')) @endif Open route @if ($case->loan) View schedule @endif
@if ($activeWorkOrder ?? null)

Work order · {{ config('collections_work_orders.work_types')[$activeWorkOrder->work_type] ?? $activeWorkOrder->work_type }} · Priority {{ number_format($activeWorkOrder->priority_score) }} · {{ ucfirst(str_replace('_', ' ', $activeWorkOrder->status)) }}

@if (auth()->user()?->hasLoanPermission('collections.update') && $activeWorkOrder->isActionable())
@if ($activeWorkOrder->status === \App\Models\LoanCollectionWorkOrder::STATUS_PENDING)
@csrf
@endif
Complete
@csrf
Skip
@csrf
Defer
@csrf
@endif @if ($activeWorkOrder->work_type === \App\Models\LoanCollectionWorkOrder::TYPE_DEMAND_REVIEW && auth()->user()?->hasLoanPermission('collections.configure'))
@csrf
@endif
@endif