@extends('layouts.app', [ 'title' => 'Dashboard SIAKAD ' . ($setting->get('nama_singkat', 'UNDARMA')), 'pageTitle' => 'Dashboard', 'pageSubtitle' => 'Ringkasan aktivitas dan modul yang tersedia untuk peranmu saat ini.', ]) @php $statColors = ['stat-card-primary', 'stat-card-success', 'stat-card-warning', 'stat-card-danger', 'stat-card-info', 'stat-card-purple', 'stat-card-teal', 'stat-card-dark']; $statIcons = ['fa-university', 'fa-book-open', 'fa-user-graduate', 'fa-money-check-alt', 'fa-user-plus', 'fa-calendar-day', 'fa-clipboard-check', 'fa-book-reader', 'fa-wallet', 'fa-headset', 'fa-archive', 'fa-chart-pie']; $pegawaiDivision = $user->pegawai?->bagian; $pegawaiQuickTitle = match ($pegawaiDivision) { 'baak' => 'Akses Cepat BAAK', 'bauk' => 'Akses Cepat BAUK', default => 'Akses Cepat Pegawai', }; $financeQuickTitle = $user->pegawai?->bagian === 'bendahara' ? 'Akses Cepat Bendahara' : 'Akses Cepat Keuangan'; @endphp @section('content') {{-- Profile & Quick Stats Row --}}
{{-- Profile Card --}}
{{ strtoupper(mb_substr($user->name, 0, 1)) }}
{{ $user->name }}
{{ $user->displayRoleLabel() }}
{{ $user->username ?? '-' }}
T.A. {{ $tahunAkademikAktif ? $tahunAkademikAktif->tahun.' / '.ucfirst($tahunAkademikAktif->semester) : 'Belum diatur' }}
Login terakhir: {{ $user->last_login?->format('d M Y H:i') ?? 'Pertama kali' }}
{{-- Quick Stats --}} @foreach (array_slice($metrics, 0, 2) as $index => $metric)
{{ $metric['value'] }}
{{ $metric['label'] }}
{{ $metric['description'] }}
@endforeach
{{-- Quick Actions --}}
@if (in_array($role->value, ['super_admin', 'admin'], true)) Akses Cepat Admin @elseif ($role->value === 'dosen') Akses Cepat Dosen @elseif ($role->value === 'mahasiswa') Akses Cepat Mahasiswa @elseif ($role->value === 'pegawai') {{ $pegawaiQuickTitle }} @elseif ($role->value === 'keuangan') {{ $financeQuickTitle }} @elseif ($role->value === 'pmb') Akses Cepat PMB @elseif ($role->value === 'perpustakaan') Akses Cepat Perpustakaan @elseif ($role->value === 'alumni') Akses Cepat Alumni @endif
@if (in_array($role->value, ['super_admin', 'admin'], true)) Pusat Modul Fakultas Prodi Dosen Mahasiswa Jadwal Kuliah Kalender Keuangan PMB Pegawai Perpustakaan Akun User Export Mahasiswa @elseif ($role->value === 'dosen') Jadwal Mengajar Persetujuan KRS Input Nilai E-Learning Perpustakaan @elseif ($role->value === 'mahasiswa') Isi KRS Jadwal Kuliah KHS Transkrip Status Akademik E-Learning Perpustakaan Keuangan Layanan @elseif ($role->value === 'pegawai') Dashboard Pegawai @if (in_array($pegawaiDivision, [null, '', 'baak'], true)) Verifikasi Mahasiswa Surat Akademik Helpdesk @endif @if (in_array($pegawaiDivision, [null, '', 'bauk'], true)) Arsip @endif Pengajuan @elseif ($role->value === 'keuangan') Tagihan & Pembayaran Buat Tagihan Laporan Keuangan @elseif ($role->value === 'pmb') Data Pendaftar Form Registrasi Cek Status PMB @elseif ($role->value === 'perpustakaan') Dashboard Perpustakaan Data Buku Peminjaman Ebook Kampus @elseif ($role->value === 'alumni') Profil & Tracer Study @endif
{{-- IPK/IPS Card for Mahasiswa --}} @if ($role->value === 'mahasiswa' && $academicSummary)
{{ number_format($academicSummary['transkrip']['ipk'], 2) }}
IPK
{{ $academicSummary['transkrip']['predikat_ipk'] }}
{{ $academicSummary['transkrip']['total_sks'] }}
Total SKS
{{ $academicSummary['progress']['sks_lulus'] }} SKS lulus
{{ $academicSummary['progress']['progress_percent'] }}%
Progress Studi
{{ $academicSummary['progress']['sks_remaining'] }} SKS lagi
{{ $academicSummary['khs_terakhir']['ips'] > 0 ? number_format($academicSummary['khs_terakhir']['ips'], 2) : '-' }}
IPS Terakhir
{{ $academicSummary['khs_terakhir']['predikat_ips'] ?? 'Belum ada' }}
{{-- Progress Bar --}}
Progress Penyelesaian Studi {{ $academicSummary['progress']['progress_percent'] }}%
0 SKS {{ $academicSummary['progress']['sks_lulus'] }} SKS lulus dari {{ $academicSummary['progress']['sks_required'] }} SKS {{ $academicSummary['progress']['sks_required'] }} SKS
@endif {{-- Metrics Row (Remaining) --}} @if (count($metrics) > 2)
@foreach (array_slice($metrics, 2) as $index => $metric) @php $colorIndex = ($index + 2) % count($statColors); @endphp
{{ $metric['value'] }}
{{ $metric['label'] }}
{{ $metric['description'] }}
@endforeach
@endif {{-- Modules & Announcements --}}
{{-- Module Map --}}
Peta Modul untuk {{ $role->label() }}
@foreach ($sections as $section)
@php $sectionIcons = [ 'Master Data' => 'fa-database text-primary', 'Operasional Akademik' => 'fa-graduation-cap text-success', 'Keuangan & Laporan' => 'fa-chart-line text-info', 'Akademik Dosen' => 'fa-chalkboard-teacher text-primary', 'E-Learning & Referensi' => 'fa-laptop-house text-info', 'Akademik Mahasiswa' => 'fa-user-graduate text-primary', 'E-Learning & Perpustakaan' => 'fa-book-reader text-danger', 'Keuangan' => 'fa-wallet text-dark', 'Layanan Administrasi' => 'fa-headset text-warning', 'Administrasi Akademik' => 'fa-user-check text-success', 'Administrasi Umum' => 'fa-archive text-danger', 'Keuangan Mahasiswa' => 'fa-file-invoice-dollar text-dark', 'Penerimaan Mahasiswa Baru' => 'fa-user-plus text-primary', 'Layanan Perpustakaan' => 'fa-book text-danger', 'Layanan Alumni' => 'fa-user-tie text-purple', ]; $iconClass = $sectionIcons[$section['title']] ?? 'fa-th-large text-secondary'; @endphp
{{ $section['title'] }}
{{ $section['description'] }}
    @foreach ($section['items'] as $item)
  • {{ $item }}
  • @endforeach
@endforeach
{{-- Announcements --}}
Pengumuman Kampus
{{ count($announcements) }}
@forelse ($announcements as $announcement)
{{ $announcement->judul }}
{{ $announcement->tanggal?->format('d M Y') ?? $announcement->created_at?->format('d M Y') }}
{{ Str::limit($announcement->isi, 120) }}
@empty

Belum ada pengumuman kampus.

@if (in_array($role->value, ['super_admin', 'admin'], true)) Buat Pengumuman @endif
@endforelse
@endsection