@php $approval = $model->approval; $statusText = ''; $colorClass = ''; if ($approval) { if ($approval->status === 'approved') { $statusText = 'Approved'; $colorClass = 'text-green-600 bg-green-100'; } elseif ($approval->status === 'rejected') { $rejectedStep = $approval->steps->firstWhere('status', 'rejected'); if ($rejectedStep) { $rejectedBy = $rejectedStep->approver?->name ?? ucfirst($rejectedStep->approver_role); $statusText = 'Rejected by ' . $rejectedBy; } else { $statusText = 'Rejected'; } $colorClass = 'text-red-600 bg-red-100'; } else { $activeStep = $approval->steps->firstWhere('status', 'active'); if ($activeStep) { $approverName = $activeStep->approver?->name ?? ucfirst($activeStep->approver_role); $statusText = 'Pending ' . $approverName; } else { $statusText = 'Waiting'; } $colorClass = 'text-yellow-600 bg-yellow-100'; } } else { match($model->status) { 'A' => [$statusText = 'Approved', $colorClass = 'text-green-600 bg-green-100'], 'P' => [$statusText = 'Pending', $colorClass = 'text-yellow-600 bg-yellow-100'], 'R' => [$statusText = 'Rejected', $colorClass = 'text-red-600 bg-red-100'], default => null, }; } @endphp @if($statusText) {{ $statusText }} @endif