query("SELECT COUNT(*) FROM rumah_ibadah")->fetchColumn(); $totalMiskin = $db->query("SELECT COUNT(*) FROM penduduk_miskin")->fetchColumn(); $sudahDibantu = $db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='sudah'")->fetchColumn(); $belumDibantu = $db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='belum'")->fetchColumn(); $menunggu = $db->query("SELECT COUNT(*) FROM penduduk_miskin WHERE status_bantuan='menunggu'")->fetchColumn(); $totalNominal = $db->query("SELECT COALESCE(SUM(nominal_bantuan),0) FROM penduduk_miskin WHERE status_bantuan='sudah' AND nominal_bantuan IS NOT NULL")->fetchColumn(); $totalNominalAll = $db->query("SELECT COALESCE(SUM(nominal_bantuan),0) FROM penduduk_miskin WHERE nominal_bantuan IS NOT NULL")->fetchColumn(); // Per jenis ibadah $jenisStats = $db->query(" SELECT jenis, COUNT(*) as total, (SELECT COUNT(*) FROM penduduk_miskin pm WHERE pm.rumah_ibadah_id = ri.id) AS binaan FROM rumah_ibadah ri GROUP BY jenis ORDER BY total DESC ")->fetchAll(); // Per kecamatan (top 5) $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 != '' AND kecamatan IS NOT NULL GROUP BY kecamatan ORDER BY total DESC LIMIT 5 ")->fetchAll(); // Data terbaru (5 data) $recentMiskin = $db->query(" SELECT pm.id, pm.kk_nama, pm.status_bantuan, 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 5 ")->fetchAll(); jsonResponse([ 'success' => true, 'data' => [ 'total_ibadah' => (int)$totalIbadah, 'total_miskin' => (int)$totalMiskin, 'sudah_dibantu' => (int)$sudahDibantu, 'belum_dibantu' => (int)$belumDibantu, 'menunggu' => (int)$menunggu, 'total_nominal' => (float)$totalNominal, 'total_nominal_all' => (float)$totalNominalAll, 'jenis_stats' => $jenisStats, 'kecamatan_stats' => $kecamatanStats, 'recent_miskin' => $recentMiskin, ] ]);