Data RAP

Kelola Recruitment Affiliate Program (RAP) - Data yang sudah divalidasi

{{ $statistik['total'] ?? 0 }}

Total RAP Valid

{{ $statistik['aktif'] ?? 0 }}

Aktif

{{ $statistik['nonaktif'] ?? 0 }}

Nonaktif

{{ $statistik['mahasiswa'] ?? 0 }}

Mahasiswa

{{ $statistik['non_mahasiswa'] ?? 0 }}

Non Mahasiswa

Reset
@php $tahunAjaranFilter = $currentTahunFilter; $rapSiapCairBonus = $rapList->filter(function ($rap) use ($tahunAjaranFilter) { if ($tahunAjaranFilter != 'all') { $totalMhs = $rap->getMahasiswaByTahunAjaran($tahunAjaranFilter); $mahasiswaLunas = $rap->hitungMahasiswaLunasSemesterByTahunAjaran(1, $tahunAjaranFilter); $bonusRule = $rap->getBonusRuleByTahunAjaran($tahunAjaranFilter); $minMahasiswa = $bonusRule ? $bonusRule->min_mahasiswa : PHP_INT_MAX; return $totalMhs >= $minMahasiswa && $mahasiswaLunas >= $totalMhs && !$rap->isBonusCairForTahunAjaran($tahunAjaranFilter); } return $rap->isBonusCairAvailable() && !$rap->isBonusCairForTahunAjaran($tahunAjaranFilter); }); $rapSudahCairBonus = $rapList->filter(function ($rap) use ($tahunAjaranFilter) { if ($tahunAjaranFilter != 'all') { return $rap->isBonusCairForTahunAjaran($tahunAjaranFilter); } return $rap->isBonusCairForTahunAjaran($tahunAjaranFilter); }); // PERBAIKAN: Gunakan method yang sudah ada, jangan isMahasiswaLunasSemester $rapSiapCairKomisi = $rapList->filter(function ($rap) use ($tahunAjaranFilter) { if ($tahunAjaranFilter != 'all') { // Langsung cek apakah ada mahasiswa lunas untuk tahun ajaran ini $mahasiswaLunas = $rap->hitungMahasiswaLunasSemesterByTahunAjaran(1, $tahunAjaranFilter); if ($mahasiswaLunas > 0) { // Ambil semua mahasiswa yang sudah lunas untuk RAP ini $mahasiswaList = $rap->mahasiswa()->where('validasi_status', 'valid')->get(); foreach ($mahasiswaList as $mhs) { // Cek apakah mahasiswa ini sudah lunas semester 1 untuk tahun ajaran ini // Gunakan method hitungMahasiswaLunasSemesterByTahunAjaran dengan parameter mahasiswa_id $isLunas = false; $angsuran = $mhs->angsuran; if ($angsuran) { $spp = $angsuran->details->where('kode_biaya', 'SPP1_1')->first(); if ($spp && $spp->sisa <= 0 && $spp->pembayaran_valid === 'valid') { $isLunas = true; } if (!$isLunas) { $ukt = $angsuran->details->where('kode_biaya', 'UKT')->first(); if ($ukt && $ukt->sisa <= 0 && $ukt->pembayaran_valid === 'valid') { $isLunas = true; } } if (!$isLunas) { $uktFormat = $angsuran->details->where('kode_biaya', 'UKT1_1')->first(); if ( $uktFormat && $uktFormat->sisa <= 0 && $uktFormat->pembayaran_valid === 'valid' ) { $isLunas = true; } } } // Pastikan tahun ajaran sesuai if ($isLunas && $mhs->tahun_ajaran == $tahunAjaranFilter) { $komisi = \App\Models\RapKomisiCair::where('rap_id', $rap->id) ->where('mahasiswa_id', $mhs->id) ->where('semester', 1) ->first(); if (!$komisi || $komisi->status !== 'disetujui') { return true; } } } } return false; } return $rap->has_notification; }); @endphp

RAP Siap Ajukan Bonus

{{ $rapSiapCairBonus->count() }} Data (Semua mahasiswa sudah lunas angsuran 1 semester 1)
@forelse($rapSiapCairBonus as $index => $rap) @php $totalMhs = $tahunAjaranFilter != 'all' ? $rap->getMahasiswaByTahunAjaran($tahunAjaranFilter) : $rap->total_mahasiswa_daftar; $bonusRule = $tahunAjaranFilter != 'all' ? $rap->getBonusRuleByTahunAjaran($tahunAjaranFilter) : $rap->getBonusRule(); $bonusNominal = $tahunAjaranFilter != 'all' ? $rap->hitungTotalBonusByTahunAjaran($tahunAjaranFilter) : $rap->hitungTotalBonus(); $bonusCair = $rap->getOrCreateBonusCair($tahunAjaranFilter); @endphp @empty @endforelse
No Nama RAP Tipe Marketing Total Mahasiswa Bonus Status Aksi
{{ $loop->iteration }} {{ $rap->nama }} {{ $rap->tipe == 'mahasiswa' ? 'Mahasiswa' : 'Non Mahasiswa' }} {{ $rap->marketing ?? '-' }} {{ $totalMhs }} Rp {{ number_format($bonusNominal, 0, ',', '.') }} @if ($bonusRule) ({{ $bonusRule->nama_rule }}) @endif @if ($bonusCair->status == 'disetujui') Sudah Cair @elseif($bonusCair->status == 'pending') Menunggu Approval @elseif($bonusCair->validasi_status == 'valid') Siap Diajukan @elseif($bonusCair->validasi_status == 'invalid') Invalid @else Perlu Validasi @endif Kelola Bonus

Belum ada RAP yang memenuhi syarat bonus

RAP Siap Cairkan Komisi

{{ $rapSiapCairKomisi->count() }} Data (Ada mahasiswa yang sudah lunas)
@forelse($rapSiapCairKomisi as $index => $rap) @empty @endforelse
No Nama RAP Tipe Marketing Total Mahasiswa Aksi
{{ $loop->iteration }}
{{ $rap->nama }}
{{ $rap->tipe == 'mahasiswa' ? 'Mahasiswa' : 'Non Mahasiswa' }} {{ $rap->marketing ?? '-' }} {{ $rap->total_mahasiswa_daftar }} Kelola Komisi

Belum ada RAP yang siap cairkan komisi

Daftar RAP

{{ $rapList->count() }} Data @if ($tahunAjaranFilter != 'all') (Menampilkan data untuk tahun ajaran: {{ $tahunAjaranFilter }}) @endif
@forelse($rapList as $index => $rap) @php $totalMhs = $tahunAjaranFilter != 'all' ? $rap->getMahasiswaByTahunAjaran($tahunAjaranFilter) : $rap->total_mahasiswa_daftar; $bonusRule = $tahunAjaranFilter != 'all' ? $rap->getBonusRuleByTahunAjaran($tahunAjaranFilter) : $rap->getBonusRule(); $bonusNominal = $tahunAjaranFilter != 'all' ? $rap->hitungTotalBonusByTahunAjaran($tahunAjaranFilter) : $rap->hitungTotalBonus(); @endphp @empty @endforelse
No Nama RAP Tipe Kampus Prodi No HP Marketing Status Total Mahasiswa Aksi
{{ $loop->iteration }} {{ $rap->nama }} {{ $rap->tipe == 'mahasiswa' ? 'Mahasiswa' : 'Non Mahasiswa' }} {{ $rap->kampus ?? '-' }} {{ $rap->prodi ?? '-' }} {{ $rap->no_hp }} {{ $rap->marketing ?? '-' }} {{ $rap->status == 'aktif' ? 'Aktif' : 'Nonaktif' }} {{ $totalMhs }}
@csrf @method('DELETE')

Tidak ada data RAP

@if ($rapList->hasPages())
{{ $rapList->withQueryString()->links('vendor.pagination.tailwind') }}
@endif