'; require_once __DIR__ . '/../includes/header.php'; $db = getDB(); // Statistik utama $stats = [ 'ibadah' => (int)$db->query("SELECT COUNT(*) FROM rumah_ibadah")->fetchColumn(), 'miskin' => (int)$db->query("SELECT COUNT(*) FROM penduduk_miskin")->fetchColumn(), 'sudah' => (int)$db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='sudah'")->fetchColumn(), 'belum' => (int)$db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='belum'")->fetchColumn(), 'menunggu' => (int)$db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='menunggu'")->fetchColumn(), 'darurat' => (int)$db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='darurat'")->fetchColumn(), 'anggota' => (int)$db->query("SELECT SUM(jumlah_anggota) FROM penduduk_miskin")->fetchColumn(), 'nominal' => (float)$db->query("SELECT COALESCE(SUM(nominal_bantuan),0) FROM penduduk_miskin WHERE status_bantuan IN ('sudah','darurat') AND nominal_bantuan IS NOT NULL")->fetchColumn(), ]; // Per jenis ibadah $jenisStats = $db->query("SELECT jenis, COUNT(*) AS total FROM rumah_ibadah GROUP BY jenis ORDER BY total DESC")->fetchAll(); // Per kecamatan (top 7) $kecamatanStats = $db->query(" SELECT kecamatan, COUNT(*) AS total, SUM(CASE WHEN status_bantuan='sudah' THEN 1 ELSE 0 END) AS sudah, SUM(CASE WHEN status_bantuan='belum' THEN 1 ELSE 0 END) AS belum FROM penduduk_miskin WHERE kecamatan IS NOT NULL AND kecamatan != '' GROUP BY kecamatan ORDER BY total DESC LIMIT 7 ")->fetchAll(); // Data terbaru 6 baris $recentMiskin = $db->query(" SELECT pm.id, pm.kk_nama, pm.jumlah_anggota, pm.status_bantuan, pm.kecamatan, pm.created_at, ri.nama AS ibadah_nama FROM penduduk_miskin pm LEFT JOIN rumah_ibadah ri ON pm.rumah_ibadah_id = ri.id ORDER BY pm.created_at DESC LIMIT 6 ")->fetchAll(); // Tren bulanan (6 bulan terakhir) $trenBulan = $db->query(" SELECT DATE_FORMAT(created_at,'%Y-%m') AS bulan, COUNT(*) AS total, SUM(CASE WHEN status_bantuan='sudah' THEN 1 ELSE 0 END) AS sudah FROM penduduk_miskin WHERE created_at >= DATE_SUB(NOW(), INTERVAL 6 MONTH) GROUP BY bulan ORDER BY bulan ASC ")->fetchAll(); ?>
| Nama KK | Kecamatan | Status | Ibadah | Tanggal |
|---|---|---|---|---|
| = htmlspecialchars($r['kk_nama']) ?> | = htmlspecialchars($r['kecamatan'] ?: '—') ?> | = ucfirst($r['status_bantuan']) ?> | = htmlspecialchars($r['ibadah_nama'] ?: '—') ?> | = formatTanggal($r['created_at']) ?> |
| Belum ada data | ||||