@php $minggu_req = $minggu ?? request('minggu'); $isMingguan = !empty($minggu_req); $ambangAlpaMingguan = $ambangAlpaMingguan ?? 4; $ambangFlagBulananUntukCetak = $ambangFlagBulananUntukCetak ?? 3; @endphp
@php $namaBulan = [ 1=>'Januari',2=>'Februari',3=>'Maret',4=>'April', 5=>'Mei',6=>'Juni',7=>'Juli',8=>'Agustus', 9=>'September',10=>'Oktober',11=>'November',12=>'Desember' ]; $namaHariSingkat = ['Min','Sen','Sel','Rab','Kam','Jum','Sab']; $isSiswa = ($type ?? 'siswa') === 'siswa'; $labelIdentitas = $isSiswa ? 'NISN' : 'IDENTITAS'; $labelNama = $isSiswa ? 'Nama Siswa' : 'Nama Guru / Staff'; $labelSubJudul = $isSiswa ? 'KELAS: ' . strtoupper($kelas ?? '-') : 'UNIT KERJA: MTs KH ZUMRATUL MUTTAQIN'; $arrayLibur = []; if (isset($dataLibur)) { foreach ($dataLibur as $lb) { $start = strtotime($lb->tanggal_mulai); $end = strtotime($lb->tanggal_selesai); for ($t = $start; $t <= $end; $t += 86400) { $arrayLibur[] = date('Y-m-j', $t); } } } $startDay = 1; $endDay = $jumlahHari ?? 31; if ($isMingguan) { $startDay = ($minggu_req - 1) * 7 + 1; $endDay = $minggu_req * 7; if ($endDay > $jumlahHari) $endDay = $jumlahHari; if ($startDay > $jumlahHari) $startDay = $jumlahHari; } @endphp {{-- KOP SURAT --}}
YAYASAN KIYAI HAJI ZUMRATUL MUTTAQIN
SK. MENTERI HUKUM DAN HAK ASASI MANUSIA RI
Nomor : AHU-0022733.AH.01.04.Tahun 2015
MTs KH ZUMRATUL MUTTAQIN
NPSN: 60728096
Kp. Gunungpari No.108 Desa Sukamenak Kec. Sukarame Kab. Tasikmalaya
{{-- JUDUL --}}

DAFTAR HADIR {{ $isSiswa ? 'PESERTA DIDIK' : 'GURU & STAFF' }}

BULAN {{ strtoupper($namaBulan[(int)$bulan]) }} {{ $tahun }} {{ $isMingguan ? '| MINGGU KE-'.$minggu_req : '' }} | {{ $labelSubJudul }}

{{-- Keterangan tanda merah — beda kalimat tergantung mingguan/bulanan --}}
@if($isMingguan) = Alpa ≥ {{ $ambangAlpaMingguan }}x pada Minggu ke-{{ $minggu_req }} ini (perlu evaluasi / pemanggilan). @else = Sudah kena flag "Perlu Perhatian" di ≥ {{ $ambangFlagBulananUntukCetak }} minggu berbeda dalam bulan ini (kasus berulang, perlu tindak lanjut lebih serius). @endif
{{-- TABEL --}} @for($i = $startDay; $i <= $endDay; $i++) @php $tglKey = "$tahun-$bulan-$i"; $isMingguLibur = date('w', strtotime($tglKey)) == 0; $isLiburInput = in_array($tglKey, $arrayLibur); @endphp @endfor @for($i = $startDay; $i <= $endDay; $i++) @php $tglKey = "$tahun-$bulan-$i"; $isMingguLibur = date('w', strtotime($tglKey)) == 0; $isLiburInput = in_array($tglKey, $arrayLibur); $hariIdx = (int) date('w', strtotime($tglKey)); @endphp @endfor @foreach($data_rekap as $index => $d) @php // ── Penentuan tanda merah, KONSISTEN dengan halaman web // rekap bulanan (pakai data yang sama: minggu_kena_flag_list). ── // // - Cetak MINGGUAN: merah kalau minggu yang SEDANG dicetak ini // ada di daftar minggu yang kena flag (alpa >= ambang & // minggunya sudah selesai). // - Cetak BULANAN (full bulan): merah kalau sudah kena flag // di >= $ambangFlagBulananUntukCetak minggu BERBEDA dalam // bulan ini — pola berulang yang serius, bukan cuma sekali. $mingguKenaFlagList = $d['minggu_kena_flag_list'] ?? []; $perluTandaMerah = $isMingguan ? in_array((int) $minggu_req, $mingguKenaFlagList) : (($d['minggu_kena_flag'] ?? 0) >= $ambangFlagBulananUntukCetak); @endphp @for($i = $startDay; $i <= $endDay; $i++) @php $tglKey = "$tahun-$bulan-$i"; $isMingguLibur = date('w', strtotime($tglKey)) == 0; $isLiburInput = in_array($tglKey, $arrayLibur); $dayData = $d['detail'][$i] ?? []; @endphp @if($isMingguLibur || $isLiburInput) @elseif($dayData === 'libur') @elseif(is_array($dayData) && count($dayData) > 0) @else @endif @endfor @endforeach
No {{ $labelIdentitas }} {{ $labelNama }} L/P {{ $i }} Hdr
{{ $namaHariSingkat[$hariIdx] }}
{{ $index + 1 }} {{ $isSiswa ? ($d['nisn'] ?? '-') : (($d['jenis_identitas'] ?? 'ID') . ': ' . ($d['nomor_identitas'] ?? '-')) }} {{ strtoupper($d['nama']) }} @if($perluTandaMerah) @endif {{ $d['jk'] ?? '-' }}XX @foreach($dayData as $scanIdx => $scan) @if($scanIdx > 0)
@endif @if($isMingguan) {{ $scan['sesi'] }} {{ $scan['jam'] }} @else @endif @endforeach
{{ $d['hadir'] }}
{{-- TANDA TANGAN --}}

Tasikmalaya, {{ date('d') }} {{ $namaBulan[(int)date('m')] }} {{ date('Y') }}

Kepala Sekolah,

( Drs.H.GAOSUL ADOM, M.M.Pd. )

NIP. 196607172007011029

{{-- end #areaCetak --}} {{-- Library PDF --}}