@extends('layouts.app', ['title' => 'Review Usulan AI']) @section('content') @php $selectedSection = $selectedSection ?? 'all'; $reviewSections = $reviewSections ?? []; $consistencyReport = data_get($rps->ai_draft_payload, 'pipeline_meta.quality_meta.consistency_report', []); $sectionQuality = collect(data_get($consistencyReport, 'per_section', [])); $statusLabels = [ 'aman' => 'Aman', 'perlu_cek' => 'Perlu Cek', 'kurang_bukti' => 'Kurang Bukti', 'unknown' => 'Belum Dinilai', ]; $sectionPriority = [ 'kurang_bukti' => 0, 'perlu_cek' => 1, 'aman' => 2, 'unknown' => 3, ]; $sectionQuality = $sectionQuality ->sortBy(function ($section, $key) use ($sectionPriority, $reviewSections) { $statusKey = $section['status'] ?? 'unknown'; return [ $sectionPriority[$statusKey] ?? 99, $section['label'] ?? ($reviewSections[$key] ?? strtoupper((string) $key)), ]; }) ->map(fn ($section) => $section); $topPrioritySectionKey = $sectionQuality->keys()->first(); $visibleStatuses = collect(); if ($selectedSection === 'all') { $visibleStatuses = $visibleStatuses ->push($comparison['course_description']['status'] ?? 'same') ->concat(collect($comparison['study_materials']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['cpl']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['cpmk']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['sub_cpmk']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['main_references']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['supporting_references']['suggested'] ?? [])->pluck('_status')) ->concat(collect($comparison['meetings']['suggested'] ?? [])->pluck('_status')); } elseif ($selectedSection === 'study_materials') { $visibleStatuses = collect($comparison['study_materials']['suggested'] ?? [])->pluck('_status'); } elseif ($selectedSection === 'cpmk') { $visibleStatuses = collect($comparison['cpmk']['suggested'] ?? [])->pluck('_status'); } elseif ($selectedSection === 'meetings') { $visibleStatuses = collect($comparison['meetings']['suggested'] ?? [])->pluck('_status'); } $statusCounts = $visibleStatuses->filter()->countBy(); $selectedLabel = $selectedSection === 'all' ? 'Semua Bagian' : ($reviewSections[$selectedSection] ?? strtoupper($selectedSection)); @endphp
Halaman ini membantu membandingkan isi draft sekarang dengan usulan AI sebelum diterapkan. Fokus review saat ini: {{ $selectedLabel }}.
| Pekan | Draft Saat Ini | Usulan AI |
|---|---|---|
| {{ $week }} |
@if ($current)
{{ strtoupper($current['session_type'] ?? 'regular') }}
Sub-CPMK: {{ $current['sub_cpmk'] ?: '-' }}
Indikator: {{ $current['indicator'] ?: '-' }}
Materi: {{ $current['study_material'] ?: '-' }}
Bobot: {{ $current['assessment_weight'] ?? '-' }}
@else
-
@endif
|
@if ($suggested)
{{ ($suggested['_status'] ?? 'same') === 'new' ? 'Baru' : (($suggested['_status'] ?? 'same') === 'changed' ? 'Berbeda' : 'Sudah ada') }}
{{ strtoupper($suggested['session_type'] ?? 'regular') }}
Sub-CPMK: {{ $suggested['sub_cpmk'] ?? '-' }}
Indikator: {{ $suggested['indicator'] ?? '-' }}
Materi: {{ $suggested['study_material'] ?? '-' }}
Bobot: {{ $suggested['assessment_weight'] ?? '-' }}
@else
-
@endif
|