@extends('layouts.admin', ['title' => 'Data Kelompok', 'header' => 'Data Kelompok']) @section('admin_content')
Kelompok

Data Kelompok

Kelola kelompok aktif per zonasi (Timor, Flores, Sumba, Alor, Rote), termasuk mode satu kampus atau multi perguruan tinggi, beserta DPL dan anggota mahasiswanya.

@if(auth()->user()?->role === 'admin' && ($groupedByZonasi ?? collect())->isNotEmpty())
Ringkasan per Zonasi
@foreach($groupedByZonasi as $zonasiGroup)
{{ $zonasiGroup->zonasi }}
{{ $zonasiGroup->total_kelompok }} Kelompok
{{ $zonasiGroup->total_mahasiswa }} Mahasiswa
@if($zonasiGroup->total_anggota_zona > 0)
{{ $zonasiGroup->total_anggota_zona }} dari distribusi zona
@endif
@endforeach
@endif @if(auth()->user()?->role === 'admin')
@if($selectedZonasi) Reset @endif
@endif
@forelse($items as $key => $item) @php $joinedCampusSummaries = $item->joinedCampusSummaries(); $joinedCampusesCount = $item->joinedCampusesCount(); $remainingCampusCount = max($joinedCampusesCount - count($joinedCampusSummaries), 0); $programStudiBreakdown = $item->mahasiswas ->groupBy('nama_program_studi') ->map(fn ($group, $name) => ['name' => $name, 'count' => $group->count()]) ->sortByDesc('count') ->values(); @endphp @empty @endforelse
No Kelompok Akademik Wilayah Ringkasan Anggota Dosen Pembimbing Lapangan Status Aksi
{{ $items->firstItem() + $key }} {{ $item->masterKelompok->kode_kelompok }}
{{ $item->masterKelompok->nama_kelompok }}
@if($item->masterKelompok?->zonasi) {{ $item->masterKelompok->zonasi }} @endif
{{ $item->programStudi->nama_program_studi ?? 'Multi Program Studi' }}
Relasi akademik kelompok
{{ $item->kabupaten->nama_kabupaten ?? '-' }}
{{ $item->kecamatan->nama_kecamatan ?? '-' }} / {{ $item->desa->nama_desa ?? '-' }}
Kepala desa: {{ $item->kepalaDesa->nama_lengkap ?? 'Belum terhubung' }}
{{ $item->mahasiswas_count }}/20 mahasiswa
{{ $item->mahasiswas_count >= 20 ? 'Kapasitas penuh' : (20 - $item->mahasiswas_count) . ' slot tersisa' }}
@php $zoneCounts = [ 'Timor' => $item->anggota_timor, 'Flores' => $item->anggota_flores, 'Sumba' => $item->anggota_sumba, 'Alor' => $item->anggota_alor, ]; $hasZoneData = collect($zoneCounts)->filter(fn ($v) => $v !== null && $v > 0)->isNotEmpty(); @endphp @if($hasZoneData)
Per Zona:
@foreach($zoneCounts as $zone => $count) @if($count !== null && $count > 0) {{ $zone }} ({{ $count }}) @endif @endforeach
@endif @if($programStudiBreakdown->isNotEmpty())
Per Program Studi:
@foreach($programStudiBreakdown as $ps) {{ $ps['name'] }} ({{ $ps['count'] }}) @endforeach
@endif @if($joinedCampusesCount > 0)
{{ $joinedCampusesCount }} perguruan tinggi tergabung
@foreach($joinedCampusSummaries as $campus) @if(!empty($campus['id'])) {{ $campus['name'] }} @else {{ $campus['name'] }} @endif @endforeach @if($remainingCampusCount > 0) +{{ $remainingCampusCount }} lainnya @endif
@endif Lihat Anggota
{{ $item->dosenPembimbingLapangan->nama_lengkap }}
{{ $item->dosenPembimbingLapangan->nidn_nuptk }}
{{ $item->is_active ? 'Aktif' : 'Nonaktif' }}
Anggota Edit
@csrf @method('DELETE')
Belum Ada Data Kelompok

Data kelompok yang menghubungkan master kelompok, perguruan tinggi, dan DPL akan muncul di sini.

@if(method_exists($items, 'links'))
{{ $items->links() }}
@endif
@include('admin.master.partials.index-styles') @endsection