@if(session('success'))
â
{{ session('success') }}
@endif
@php
$rekomendasi = $hasilList->first();
$namaField = $siswa->nama_lengkap ?? $siswa->nama ?? $siswa->nama ?? Auth::user()->nama ?? 'Siswa';
$jurusanIkon = [
'Alat Berat' => 'đ', 'Otomotif' => 'đ', 'Motor' => 'đī¸',
'Pemesinan' => 'đ§', 'Mekatronika' => 'đ¤', 'Konstruksi' => 'đī¸',
'Bangunan' => 'đī¸', 'Listrik' => 'âĄ', 'Pembangkit' => 'đ',
'Audio' => 'đē', 'Komputer' => 'đģ', 'Desain' => 'đ¨',
];
$ikon = 'đ';
foreach ($jurusanIkon as $kata => $ico) {
if (str_contains($rekomendasi->jurusan->nama_jurusan ?? '', $kata)) {
$ikon = $ico;
break;
}
}
// Hitung BMI
$tinggiBadan = (float) $tesTerakhir->tinggi_badan;
$beratBadan = (float) $tesTerakhir->berat_badan;
$tinggiMeter = $tinggiBadan / 100;
$bmi = $tinggiMeter > 0 ? round($beratBadan / ($tinggiMeter * $tinggiMeter), 1) : 0;
if ($bmi < 18.5) { $bmiKategori = 'Berat Badan Kurang'; $bmiClass = 'bmi-kurang'; }
elseif ($bmi < 25) { $bmiKategori = 'Normal / Ideal'; $bmiClass = 'bmi-normal'; }
elseif ($bmi < 30) { $bmiKategori = 'Berat Badan Lebih'; $bmiClass = 'bmi-lebih'; }
else { $bmiKategori = 'Obesitas'; $bmiClass = 'bmi-obese'; }
@endphp
{{-- HERO --}}
{{ $ikon }}
đ Rekomendasi #1 Untukmu
{{ $rekomendasi->jurusan->nama_jurusan ?? '-' }}
â Skor SAW: {{ number_format($rekomendasi->nilai_preferensi * 100, 2) }}%
Halo {{ $namaField }}, berdasarkan nilai akademik dan minat bakat kamu, jurusan ini paling sesuai untukmu.
{{-- PERBANDINGAN 2 JURUSAN PILIHAN --}}
@if(isset($jurusanPilihan1) && isset($jurusanPilihan2) && $jurusanPilihan1 && $jurusanPilihan2)
@php
$skor1 = $skorPilihan1 ? $skorPilihan1->nilai_preferensi : 0;
$skor2 = $skorPilihan2 ? $skorPilihan2->nilai_preferensi : 0;
$maxSkor = max($skor1, $skor2, 0.0001);
$bar1 = number_format(($skor1 / $maxSkor) * 100, 1);
$bar2 = number_format(($skor2 / $maxSkor) * 100, 1);
$winner = $skor1 > $skor2 ? 1 : ($skor2 > $skor1 ? 2 : 0);
$ikon1 = 'đĢ'; $ikon2 = 'đĢ';
foreach ($jurusanIkon as $kata => $ico) {
if (str_contains($jurusanPilihan1->nama_jurusan, $kata)) $ikon1 = $ico;
if (str_contains($jurusanPilihan2->nama_jurusan, $kata)) $ikon2 = $ico;
}
@endphp
{{ $ikon1 }}
Pilihan 1
{{ $jurusanPilihan1->nama_jurusan }}
@if($skorPilihan1)
{{ number_format($skor1*100,2) }}%
Skor Kesesuaian SAW
đ
Peringkat #{{ $skorPilihan1->peringkat }}
@else
âšī¸ Tidak masuk perhitungan SAW
@endif
VS
{{ $ikon2 }}
Pilihan 2
{{ $jurusanPilihan2->nama_jurusan }}
@if($skorPilihan2)
{{ number_format($skor2*100,2) }}%
Skor Kesesuaian SAW
đ
Peringkat #{{ $skorPilihan2->peringkat }}
@else
âšī¸ Tidak masuk perhitungan SAW
@endif
@if($winner===1)
â
{{ $jurusanPilihan1->nama_jurusan }} lebih sesuai dengan profil kamu
(selisih {{ number_format(abs($skor1-$skor2)*100,2) }}%)
@elseif($winner===2)
â
{{ $jurusanPilihan2->nama_jurusan }} lebih sesuai dengan profil kamu
(selisih {{ number_format(abs($skor1-$skor2)*100,2) }}%)
@else
âī¸ Kedua jurusan memiliki tingkat kesesuaian yang sama
@endif
Berdasarkan analisis SAW dari nilai akademik dan tes minat bakat kamu
@endif
{{-- ===== CARD: NILAI AKADEMIK (8 mapel, grid 4 kolom x 2 baris) ===== --}}
đ Nilai Akademik
Matematika
{{ $tesTerakhir->nilai_matematika }}
Bhs. Indonesia
{{ $tesTerakhir->nilai_bahasa_indonesia }}
Bhs. Inggris
{{ $tesTerakhir->nilai_bahasa_inggris }}
IPA
{{ $tesTerakhir->nilai_ipa }}
{{-- ===== CARD: DATA FISIK (tinggi, berat, bmi â masing-masing kotak terpisah) ===== --}}
đ Data Fisik & Kesehatan
{{-- Baris 1: Tinggi | Berat | BMI --}}
Tinggi Badan
{{ $tesTerakhir->tinggi_badan }}
cm
Berat Badan
{{ $tesTerakhir->berat_badan }}
kg
BMI
{{ $bmi }}
{{ $bmiKategori }}
{{-- Baris 2: Buta Warna | Skor Minat | Tanggal Tes --}}
{{-- RANKING --}}
đ
Ranking Semua Jurusan
@php
$idPilihan1 = $tesTerakhir->minat_jurusan_1_id ?? null;
$idPilihan2 = $tesTerakhir->minat_jurusan_2_id ?? null;
$topScore = $hasilList->first()->nilai_preferensi;
@endphp
@foreach($hasilList as $i => $hasil)
@php
$rankClass = $i===0 ? 'top' : ($i===1 ? 'top2' : ($i===2 ? 'top3' : ''));
$isPilihan = ($hasil->jurusan_id == $idPilihan1 || $hasil->jurusan_id == $idPilihan2);
$pct = number_format($hasil->nilai_preferensi * 100, 2);
$barWidth = $topScore > 0
? number_format(($hasil->nilai_preferensi / $topScore) * 100, 1)
: '0';
@endphp
{{ $hasil->peringkat }}
{{ $hasil->jurusan->nama_jurusan ?? '-' }}
@if($isPilihan)â Pilihanmu@endif
{{ $pct }}%
@endforeach
{{-- TABEL SAW --}}
đ Detail Nilai Preferensi SAW
| Rank |
Jurusan |
Nilai Preferensi (V) |
Skor (%) |
@foreach($hasilList as $i => $hasil)
| {{ $hasil->peringkat }} |
{{ $hasil->jurusan->nama_jurusan ?? '-' }} |
{{ number_format($hasil->nilai_preferensi, 6) }} |
{{ number_format($hasil->nilai_preferensi * 100, 2) }}% |
@endforeach