Performance Report

Placement, skills assessment, tester notes, and downloadable reports.

@forelse ($performanceReport as $index => $item) @php $testerName = trim(($item->teacher->full_name ?? '') ?: (($item->teacher->first_name ?? '') . ' ' . ($item->teacher->last_name ?? ''))); $reportPayload = [ 'id' => $item->id, 'tester_name' => $testerName ?: '-', 'suggested_levels' => $item->suggested_levels ?? '-', 'suggested_band' => $item->suggested_band ?? '-', 'listening' => $item->demo_listening ?? '-', 'reading' => $item->demo_reading ?? '-', 'speaking' => $item->demo_speaking ?? '-', 'vocabulary' => $item->demo_vocabulary ?? '-', 'grammar' => $item->demo_grammar ?? '-', 'comment' => $item->comment ?? '-', 'teachers_note' => $item->teachers_note ?? '-', 'created_at' => $item->created_at ? $item->created_at->format('d-M-Y') : '-', 'details' => $item->demoFeedbackDetails->map(function ($detail) { return [ 'track' => $detail->track?->name_en ?? $detail->track?->name_ar ?? '-', 'level' => $detail->level?->name_en ?? $detail->level?->name_ar ?? '-', 'recommended' => (bool) $detail->is_recommended, 'note' => $detail->note ?? '-', ]; })->values(), ]; @endphp @empty @endforelse
# Tester Name Suggested Level Suggested Band Listening Reading Speaking Vocabulary Grammar Comment Teacher Note Created At Action
{{ $index + 1 }} {{ $reportPayload['tester_name'] }} {{ $item->suggested_levels ?? '-' }} {{ $item->suggested_band ?? '-' }} {{ $item->demo_listening ?? '-' }} {{ $item->demo_reading ?? '-' }} {{ $item->demo_speaking ?? '-' }} {{ $item->demo_vocabulary ?? '-' }} {{ $item->demo_grammar ?? '-' }} {{ $item->comment ?? '-' }} {{ $item->teachers_note ?? '-' }} {{ $item->created_at ? $item->created_at->format('d-M-Y') : '-' }} Download
No performance report found.
@push('scripts') @endpush