@extends('layouts.app') @section('title', 'Laporan') @section('page-title', 'Laporan & Monitoring') @section('content')
@if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif
Reset
Mahasiswa Magang Berjalan

{{ $pengajuan_berjalan }}

Belum masuk tahap penilaian final
Proses Penilaian

{{ $pengajuan_proses_penilaian }}

Seminar diajukan, nilai belum lengkap
Mahasiswa Selesai Magang

{{ $pengajuan_selesai }}

Nilai Akhir sudah keluar
Kota Penempatan

{{ $kota_penempatan }}

Berdasarkan kota mitra
Sebaran Mahasiswa Magang per Kota

Marker ditempatkan dengan mapping koordinat kota sederhana. Kota tanpa mapping tetap tampil di tabel sebaran.

Peta Indonesia
@forelse($mapPoints as $point) @php($pointSize = 14 + min(14, $point->total * 2))
{{ $point->kota }}: {{ $point->total }}
@empty
Belum ada marker kota. Data kota tetap tersedia di tabel sebaran jika ada.
@endforelse
Legend
1-5 mahasiswa
6-15 mahasiswa
>15 mahasiswa
@forelse($topKota as $row) @empty @endforelse
KotaJumlah Mahasiswa MagangDaftar/Top Mitra
{{ $row->kota }} {{ $row->total }} @forelse($row->top_mitras as $nama => $total) {{ $nama }} ({{ $total }}) @empty Data mitra belum tersedia. @endforelse
Belum ada data mahasiswa magang berjalan atau selesai.
Top Kota Penempatan
@forelse($topKota->take(7) as $row)
{{ $loop->iteration }} {{ $row->kota }} {{ $row->total }}
@empty
Data kota belum tersedia.
@endforelse
Top Mitra
@forelse($topMitras->take(7) as $row)
{{ $loop->iteration }} {{ $row->nama }} ({{ $row->kota }}) {{ $row->total }}
@empty
Data mitra belum tersedia.
@endforelse
Data Monitoring Magang
Menampilkan {{ $monitoringRows->count() }} mahasiswa magang berstatus berjalan atau selesai.
Export
@forelse($monitoringRows as $row) @empty @endforelse
Nama Mahasiswa NIM Program Studi Mitra Kota Status Magang Nama Dosen Pembimbing Dosen Pembimbing Pembimbing Lapangan Periode
{{ $row->mahasiswa->nama_lengkap ?? '-' }} {{ $row->mahasiswa->nim ?? '-' }} {{ $row->mahasiswa->prodi->nama_prodi ?? '-' }} {{ $row->mitra->nama_instansi ?? $row->nama_instansi_manual ?? '-' }} {{ $row->mitra->kota ?? 'Tidak diketahui' }} @php($statusMonitoring = $row->penilaian?->nilai_akhir !== null ? 'selesai' : ($row->hasValidSeminar() ? 'proses_penilaian' : 'berjalan')) {{ $statusMonitoring === 'selesai' ? 'Selesai' : ($statusMonitoring === 'proses_penilaian' ? 'Proses Penilaian' : 'Berjalan') }} {{ $row->bimbingans->pluck('dosen.nama_dosen')->filter()->unique()->implode(', ') ?: '-' }} @if($row->penilaian?->hasNilaiDosenTahap1()) ✓ Sudah Menilai @else — Belum Menilai @endif @if($row->penilaian?->hasNilaiPembimbingTahap1()) ✓ Sudah Menilai @else — Belum Menilai @endif {{ $row->periode->nama_periode ?? '-' }}
Belum ada data mahasiswa magang berjalan atau selesai.
Laporan KUKERTA Mahasiswa
File dibuka melalui route admin yang aman, bukan link storage langsung.
@forelse($laporanKukertas as $laporan) @empty @endforelse
Mahasiswa Instansi/Mitra Lokasi Target/Sasaran Dokumentasi File Submit/Update
{{ $laporan->mahasiswa->nama_lengkap ?? '-' }}
{{ $laporan->mahasiswa->nim ?? '-' }}
{{ $laporan->pengajuan->mitra->nama_instansi ?? $laporan->pengajuan->nama_instansi_manual ?? '-' }} {{ $laporan->lokasi_kukerta ?: '-' }} {{ \Illuminate\Support\Str::limit($laporan->target_kukerta ?: '-', 120) }}
@foreach($laporan->foto_dokumentasi_kukerta ?? [] as $i => $foto) Foto {{ $i + 1 }} @endforeach @if(empty($laporan->foto_dokumentasi_kukerta)) Belum tersedia @endif
@if($laporan->laporan_kukerta) Laporan KUKERTA @endif @if($laporan->output_kukerta_file) Output File @endif @if($laporan->output_kukerta_link) Output Link @endif @if(!$laporan->laporan_kukerta && !$laporan->output_kukerta_file && !$laporan->output_kukerta_link) Belum tersedia @endif
Dibuat: {{ optional($laporan->created_at)->timezone(config('app.timezone'))->format('d/m/Y H:i') }}
Update: {{ optional($laporan->updated_at)->timezone(config('app.timezone'))->format('d/m/Y H:i') }}
Belum ada Laporan KUKERTA.
@endsection