{{ __('Detail Soal & Assign Reviewer') }} - {{ $question->question_code }}

Kembali
@if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif

Detail Lengkap Soal CBT

Tinjauan Soal

Tinjauan 1

{{ $question->review_1 }}

Tinjauan 2

{{ $question->review_2 }}

Tinjauan 3

{{ $question->review_3 }}

Tinjauan 4

{{ $question->review_4 }}

Tinjauan 5

{{ $question->review_5 }}

Tinjauan 6

{{ $question->review_6 }}

Kode Soal: {{ $question->question_code }}
Departemen: {{ $question->department }}
Institusi: {{ $question->institution ?? 'Tidak diset' }}
Pembuat: {{ $question->author_name ?? $question->creator->name }}
Tanggal Dibuat: {{ $question->created_at->format('d M Y, H:i') }}
Status: {{ ucfirst($question->status ?? 'Draft') }}
@if($question->vignette)

Vignette:

{{ $question->vignette }}

@endif

Pertanyaan:

{{ $question->question }}

Pilihan Jawaban:

@php $options = [ 'A' => $question->option_a, 'B' => $question->option_b, 'C' => $question->option_c, 'D' => $question->option_d, 'E' => $question->option_e ]; @endphp @foreach($options as $letter => $option) @if($option)
{{ $letter }}

{{ $option }}

@if($letter === $question->correct_answer) Jawaban Benar @endif
@endif @endforeach
@if($question->calculation_explanation)

Pembahasan:

{{ $question->calculation_explanation }}

@endif @if($question->references)

Referensi:

@if(is_array($question->references)) @foreach($question->references as $index => $reference)
{{ $index + 1 }}. {{ is_array($reference) ? ($reference['title'] ?? '') . ' - ' . ($reference['details'] ?? '') : $reference }}
@endforeach @else

{{ $question->references }}

@endif
@endif @if($question->keywords)

Keywords: {{ $question->keywords }}

@endif

Reviewer yang Ditugaskan

@if($question->reviews->count() > 0)
@foreach($question->reviews as $review)
{{ substr($review->reviewer->name, 0, 1) }}

{{ $review->reviewer->name }}

Ditugaskan: {{ $review->assigned_at->format('d M Y, H:i') }} @if($review->started_at) • Dimulai: {{ $review->started_at->format('d M Y, H:i') }} @endif @if($review->completed_at) • Selesai: {{ $review->completed_at->format('d M Y, H:i') }} @endif

{{ ucfirst($review->status) }} @if($review->recommendation) {{ ucfirst($review->recommendation) }} @endif @if($review->status !== 'completed')
@csrf @method('DELETE')
@endif
@endforeach
@else

Belum ada reviewer

Tugaskan reviewer untuk memulai proses review.

@endif
@if($question->reviews->where('status', 'completed')->count() > 0)

Hasil Review Detail

@php $completedReviews = $question->reviews->where('status', 'completed'); $detailedQuestions = \App\Models\CbtQuestionReview::getDetailedReviewQuestions(); @endphp

📊 Statistik Catatan Reviewer

@foreach($completedReviews as $review) @php $notesCount = 0; $totalQuestions = count($detailedQuestions); foreach($detailedQuestions as $questionKey => $questionData) { if($review->{$questionData['notes_field']}) { $notesCount++; } } $completionPercent = $totalQuestions > 0 ? round(($notesCount / $totalQuestions) * 100) : 0; @endphp
{{ $notesCount }}/{{ $totalQuestions }}
{{ $review->reviewer->name }}
{{ $completionPercent }}% Catatan
@endforeach

Menunjukkan seberapa detail setiap reviewer memberikan catatan pada kriteria review

@foreach($completedReviews as $review) @endforeach @php $currentSection = ''; @endphp @foreach($detailedQuestions as $questionKey => $questionData) @if($currentSection !== $questionData['section']) @php $currentSection = $questionData['section']; @endphp @endif @php $responses = []; $yaCount = 0; @endphp @foreach($completedReviews as $review) @php $response = $review->{$questionData['field']}; $responses[] = $response; if($response === 'ya') $yaCount++; @endphp @endforeach @foreach($completedReviews as $review) @if($review->{$questionData['notes_field']}) @endif @endforeach @endforeach
Kriteria Review {{ $review->reviewer->name }} Konsensus
{{ $questionData['section'] }}
{{ $questionData['question'] }}
{{ $response ? ucfirst($response) : 'N/A' }} @if($review->{$questionData['notes_field']})
📝 Catatan:
{{ Str::limit($review->{$questionData['notes_field']}, 100) }}
@if(strlen($review->{$questionData['notes_field']}) > 100) @endif
@else
Tidak ada catatan
@endif
@php $consensusPercent = $completedReviews->count() > 0 ? round(($yaCount / $completedReviews->count()) * 100) : 0; @endphp
{{ $consensusPercent }}% Ya

Komentar Keseluruhan dari Reviewer

@foreach($completedReviews as $review) @if($review->overall_comments)
{{ $review->reviewer->name }} {{ ucfirst($review->recommendation) }}

{{ $review->overall_comments }}

@endif @endforeach
@endif

Tugaskan Reviewer Baru

@if($availableReviewers->count() > 0)
@csrf
0/2
Pilih 1 atau 2 reviewer

Pilih maksimal 2 reviewer. Gunakan kolom pencarian untuk memudahkan.

@error('reviewer_id')

{{ $message }}

@enderror
@endif
@csrf
@csrf
@if($question->reviews->where('status', 'completed')->count() > 0)

Keputusan Final Review

@php $completedReviews = $question->reviews->where('status', 'completed'); $totalReviews = $question->reviews->count(); $approveCount = $completedReviews->where('recommendation', 'approve')->count(); $reviseCount = $completedReviews->where('recommendation', 'revise')->count(); $rejectCount = $completedReviews->where('recommendation', 'reject')->count(); $completionRate = $totalReviews > 0 ? round(($completedReviews->count() / $totalReviews) * 100) : 0; // Calculate suggested decision based on majority $suggestions = ['approve' => $approveCount, 'revise' => $reviseCount, 'reject' => $rejectCount]; $suggestedDecision = array_search(max($suggestions), $suggestions); $consensusLevel = $completedReviews->count() > 0 ? round((max($suggestions) / $completedReviews->count()) * 100) : 0; @endphp
{{ $completedReviews->count() }}/{{ $totalReviews }}
Review Selesai
{{ $completionRate }}% Complete
{{ $approveCount }}
Approve
{{ $completedReviews->count() > 0 ? round(($approveCount / $completedReviews->count()) * 100) : 0 }}%
{{ $rejectCount + $reviseCount }}
Revise/Reject
{{ $completedReviews->count() > 0 ? round((($rejectCount + $reviseCount) / $completedReviews->count()) * 100) : 0 }}%
@if($completedReviews->count() >= 2)

Rekomendasi Sistem

Berdasarkan {{ $completedReviews->count() }} review yang selesai, sistem merekomendasikan untuk {{ $suggestedDecision === 'approve' ? 'MENYETUJUI' : 'MENOLAK/MEREVISI' }} soal ini. Tingkat konsensus: {{ $consensusLevel }}%

@endif

Ringkasan Review Detail

@foreach($completedReviews as $review)
{{ $review->recommendation === 'approve' ? '✓' : ($review->recommendation === 'revise' ? '!' : '✗') }}
{{ $review->reviewer->name }}
{{ $review->completed_at->format('d M Y, H:i') }}
{{ ucfirst($review->recommendation) }} @if($review->comments) @endif
@if($review->comments) @endif @endforeach
@csrf
@error('final_status')

{{ $message }}

@enderror

Catatan ini akan dikirim ke pembuat soal sebagai feedback

@error('admin_notes')

{{ $message }}

@enderror

Catatan: Keputusan ini akan final dan dikirim ke pembuat soal

@endif