Initial commit
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
require_once 'db_config.php';
|
||||
|
||||
$sql = "
|
||||
SELECT
|
||||
w.id as warga_id,
|
||||
w.kemiskinan_id,
|
||||
w.nik,
|
||||
w.nama_warga,
|
||||
w.hubungan_keluarga,
|
||||
w.tanggal_lahir,
|
||||
w.pendidikan,
|
||||
w.riwayat_penyakit,
|
||||
k.nama_kk,
|
||||
k.alamat,
|
||||
k.jumlah_kk,
|
||||
(SELECT COUNT(*) FROM histori_bantuan hb WHERE hb.kemiskinan_id = k.id) as jumlah_bantuan
|
||||
FROM warga w
|
||||
LEFT JOIN kemiskinan k ON w.kemiskinan_id = k.id
|
||||
ORDER BY w.updated_at DESC
|
||||
";
|
||||
|
||||
$result = $conn->query($sql);
|
||||
$data = [];
|
||||
|
||||
if ($result) {
|
||||
while($row = $result->fetch_assoc()) {
|
||||
// Hitung kategori berdasarkan jumlah_kk dari tabel kemiskinan
|
||||
$jumlah = intval($row['jumlah_kk'] ?? 1);
|
||||
$kategori = 'Hampir Miskin';
|
||||
$badge_color = '#3b82f6'; // Blue
|
||||
|
||||
if($jumlah >= 5) {
|
||||
$kategori = 'Sangat Miskin';
|
||||
$badge_color = '#dc2626'; // Red
|
||||
} else if($jumlah >= 3) {
|
||||
$kategori = 'Miskin';
|
||||
$badge_color = '#ea580c'; // Orange
|
||||
}
|
||||
|
||||
// Hitung umur
|
||||
$usia = '-';
|
||||
if (!empty($row['tanggal_lahir'])) {
|
||||
$bday = new DateTime($row['tanggal_lahir']);
|
||||
$today = new DateTime('today');
|
||||
$usia = $bday->diff($today)->y . ' thn';
|
||||
$tgl_format = $bday->format('d M Y');
|
||||
} else {
|
||||
$tgl_format = '-';
|
||||
}
|
||||
|
||||
$row['kategori_label'] = $kategori;
|
||||
$row['kategori_color'] = $badge_color;
|
||||
$row['usia_label'] = $usia;
|
||||
$row['tgl_lahir_format'] = $tgl_format;
|
||||
|
||||
$data[] = $row;
|
||||
}
|
||||
echo json_encode(["status" => "success", "data" => $data]);
|
||||
} else {
|
||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
||||
}
|
||||
|
||||
$conn->close();
|
||||
?>
|
||||
Reference in New Issue
Block a user