@php $kelText = $header['kelurahan'] ?? ($user->kelurahan->nama ?? '-'); $rwText = $header['rw'] ?? '-'; $rtText = $header['rt'] ?? '-'; $thText = $header['tahun'] ?? date('Y'); // Prepare grouping and KK-level counters like the web view $addressIndex = []; // alamat_rumah => sequential starting 1 $kkOrderByAddress = []; // alamat_rumah => [nomor_kk => order] $memberOrderByKk = []; // nomor_kk => running index $kkBabyCount6to12 = []; // nomor_kk => count $kkBabyLulusAsi6to12 = []; // nomor_kk => count $kkHasBabyBalita = []; // nomor_kk => bool foreach ($rows as $r) { $kk = $r['nomor_kk'] ?? ''; $usiaBulan = (int)($r['usia_bulan'] ?? 0); $usiaTahun = (int)($r['usia_tahun'] ?? 0); if ($kk) { if (!isset($kkBabyCount6to12[$kk])) $kkBabyCount6to12[$kk] = 0; if (!isset($kkBabyLulusAsi6to12[$kk])) $kkBabyLulusAsi6to12[$kk] = 0; if (!isset($kkHasBabyBalita[$kk])) $kkHasBabyBalita[$kk] = false; if ($usiaBulan >= 6 && $usiaBulan <= 12) { $kkBabyCount6to12[$kk] += 1; $s = strtolower((string)($r['lulus_asi'] ?? '')); $lulus = (($r['lulus_asi'] ?? false) === true) || ($r['lulus_asi'] ?? 0) === 1 || $s === '1' || $s === 'ya' || $s === 'y' || $s === 'true'; if ($lulus) $kkBabyLulusAsi6to12[$kk] += 1; } if ($usiaTahun < 5) $kkHasBabyBalita[$kk] = true; } } // Group by address + KK $groups = []; // key => rows[] $groupOrder = []; foreach ($rows as $r) { $addr = $r['alamat_rumah'] ?? ''; $kk = $r['nomor_kk'] ?? ''; $key = $addr . '|' . $kk; if (!isset($groups[$key])) { $groups[$key] = []; $groupOrder[] = $key; } $groups[$key][] = $r; } $yesNo = function($val) { $s = strtolower((string)($val ?? '')); return ($val === true || $val === 1 || $s === '1' || $s === 'ya' || $s === 'y' || $s === 'true') ? 'Ya' : 'Tidak'; }; @endphp
|
RT: {{ $rtText }}
RW: {{ $rwText }}
KELURAHAN: {{ $kelText }}
|
TAHUN: {{ $thText }}
|
| No. Rumah Tangga (RT) | No. Urut Kepala Keluarga | Nama Kepala Keluarga | No Anggota Keluarga | Identitas | Indikator Perilaku Hidup Bersih dan Sehat (PHBS) | Status Rumah Tangga | Indikator PHS | Status PHS | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nama Anggota Keluarga | Umur (tahun) | Persalinan | Memberi ASI Eksklusif | Menimbang | Menggunakan Air Bersih | Melakukan Cuci Tangan Dengan Benar (usia >10 tahun) |
Menggunakan Jamban Sehat | Memberantas Jentik di Rumah | Konsumsi Buah dan/atau Sayur | Melakukan Aktifitas Fisik (usia >10 tahun) | Tidak Merokok (usia >10 tahun) | Sehat | Tidak Sehat | Cek Tekanan Darah Minimal 1x dalam setahun (usia >15 tahun) |
Cek Gula Darah Minimal 1x dalam setahun (usia >15 tahun) |
Perilaku Sehat | Perilaku Tidak Sehat | |||||||||
| Ada Ibu Bersalin | Linakes | Bayi <6 bulan | ASI Saja | Jumlah Bayi 6-12 Bulan | Bayi 6-12 Bulan Lulus ASI | Ada Bayi dan Balita | Ditimbang | |||||||||||||||||||
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | ||||
| {{ $addressIndex[$addr] ?? '-' }} | {{ $kk ? ($kkOrderByAddress[$addr][$kk] ?? '-') : '-' }} | {{ $first['kepala_keluarga'] ?? '-' }} | @php if ($kk && !isset($memberOrderByKk[$kk])) $memberOrderByKk[$kk] = 0; if ($kk) $memberOrderByKk[$kk]++; $usiaTahun = (int)($row['usia_tahun'] ?? 0); $usiaBulan = (int)($row['usia_bulan'] ?? 0); $statusRt = strtolower((string)($row['status_rumah_tangga'] ?? '')); $sehat = str_contains($statusRt, 'sehat'); $phsYes = $yesNo($row['perilaku_hidup_sehat']); @endphp{{ $kk ? ($memberOrderByKk[$kk] ?? '-') : '-' }} | {{ $row['nama_lengkap'] ?? '-' }} | {{ $usiaTahun ?: '-' }} | {{ $yesNo($row['ibu_bersalin']) }} | {{ $yesNo($row['linakes']) }} | {{ ($usiaBulan > 0 && $usiaBulan < 6) ? 'Ya' : 'Tidak' }} | {{ $yesNo($row['asi_saja']) }} | {{ (string)($kkBabyCount6to12[$kk] ?? 0) }} | {{ (string)($kkBabyLulusAsi6to12[$kk] ?? 0) }} | {{ ($kkHasBabyBalita[$kk] ?? false) ? 'Ya' : 'Tidak' }} | {{ $yesNo($row['ditimbang_rutin'] ?? ($row['ditimbang'] ?? false)) }} | {{ $yesNo($row['air_bersih']) }} | {{ ($usiaTahun > 10) ? $yesNo($row['cuci_tangan_benar']) : 'Tidak' }} | {{ $yesNo($row['jamban_sehat']) }} | {{ $yesNo($row['berantas_jentik']) }} | {{ $yesNo($row['konsumsi_buah_sayur']) }} | {{ ($usiaTahun > 10) ? $yesNo($row['aktifitas_fisik']) : 'Tidak' }} | {{ ($usiaTahun > 10) ? $yesNo($row['tidak_merokok']) : 'Tidak' }} | {{ $sehat ? 'Ya' : 'Tidak' }} | {{ $sehat ? 'Tidak' : 'Ya' }} | {{ ($usiaTahun > 15) ? $yesNo($row['cek_tekanan_darah']) : 'Tidak' }} | {{ ($usiaTahun > 15) ? $yesNo($row['cek_gula_darah']) : 'Tidak' }} | {{ $phsYes === 'Ya' ? 'Ya' : 'Tidak' }} | {{ $phsYes === 'Ya' ? 'Tidak' : 'Ya' }} |
| Tidak ada data | ||||||||||||||||||||||||||