{{-- resources/views/admin/akademik/kurikulum/kelola_prosem.blade.php --}}
@csrf @php $mapelReferensi = \App\Models\Akademik\Mapel::where('tahun_ajaran_id', $kurikulum->tahun_ajaran_id) ->where('level_kelas_id', $kurikulum->level_kelas_id) ->where('mapel_nama_id', $kurikulum->mapel_id) ->first(); $alokasiMingguan = $mapelReferensi->alokasi_jam ?? 0; $estimasiJpSemester = $alokasiMingguan * 18; // 2. HITUNG TOTAL JP YANG SUDAH TERPAKAI (Diinput di TLTP) $totalJpTerdistribusi = 0; if(isset($atps)) { foreach($atps as $atpItem) { $totalJpTerdistribusi += $atpItem->tltps->sum('jam_pelajaran'); } } $sisaKuota = $estimasiJpSemester - $totalJpTerdistribusi; @endphp
G. PROGRAM SEMESTER (PROSEM)
Distribusi Alokasi Waktu (JP) Alur Tujuan Pembelajaran per Minggu dalam Semester.
Monitoring Alokasi Waktu Semester
@if($alokasiMingguan > 0)
Target Semester

{{ $estimasiJpSemester }} JP

(18 Minggu x {{ $alokasiMingguan }} JP)
Total Kebutuhan Materi

{{ $totalJpTerdistribusi }} JP

(Dari Tindak Lanjut TP)
Status Rencana Waktu

{{ $sisaKuota }} JP

{!! $sisaKuota < 0 ? 'Overload! Cek kembali materi.' : 'Beban materi proporsional' !!}
@else
Beban JP belum diatur. Admin harus mengisi "Alokasi Jam" untuk mapel ini di menu Manajemen Jadwal terlebih dahulu.
@endif
Matriks Distribusi Program Semester
@for($b = 1; $b <= 6; $b++) @endfor @for($b = 1; $b <= 6; $b++) @for($m = 1; $m <= 5; $m++) @endfor @endfor @if($atps->isEmpty()) @else @php $noProsem = 1; @endphp @foreach($cps as $cp) @php $cp_atps = $atps->where('kurikulum_cp_id', $cp->id); @endphp @if($cp_atps->count() > 0) @foreach($cp_atps as $atp) @php $alurs = json_decode($atp->tahapan, true); @endphp @if(is_array($alurs) && count($alurs) > 0) @foreach($alurs as $alurIndex => $alur) @php $cp_induk = \App\Models\Akademik\KurikulumCp::find($alur['cp_id']); $nama_elemen = $cp_induk ? $cp_induk->elemen : 'Elemen Dihapus'; $tltp = $atp->tltps->where('alur_index', $alurIndex)->first(); $jp = $tltp->jam_pelajaran ?? 0; $rowId = "prosem_" . $atp->id . "_" . $alurIndex; $prosemRowData = $prosems->where('kurikulum_atp_id', $atp->id)->where('alur_index', $alurIndex); @endphp @for($b = 1; $b <= 6; $b++) @for($m = 1; $m <= 5; $m++) @php $valSaved = ''; if($prosemRowData->count() > 0){ $matchData = $prosemRowData->where('bulan', $b)->where('minggu_ke', $m)->first(); $valSaved = $matchData->jam_pelajaran ?? ''; } @endphp @endfor @endfor @endforeach @endif @endforeach @endif @endforeach @endif
No Alur Tujuan Pembelajaran (ATP) JPBln {{ $b }}
M{{ $m }}
Belum Ada Data Prosem

Pastikan ATP telah diisi sebelumnya.

Elemen : {{ $cp->elemen }}
{{ $noProsem++ }} {{ $nama_elemen }}
    @foreach($alur['tps'] as $tp_text)
  • {{ $tp_text }}
  • @endforeach
{{ $jp }}