fitur kelola bantuan melalui rumah ibadah

This commit is contained in:
Farha
2026-04-20 11:54:58 +07:00
parent 6408b0447a
commit bae0569701
13 changed files with 2487 additions and 33 deletions
+46 -7
View File
@@ -1,8 +1,9 @@
<?php
// Script untuk membuat tabel jalan_rusak jika belum ada
// Script untuk membuat tabel utama jika belum ada
include 'db_config.php';
$sql = "CREATE TABLE IF NOT EXISTS jalan_rusak (
$statements = [
"CREATE TABLE IF NOT EXISTS jalan_rusak (
id INT AUTO_INCREMENT PRIMARY KEY,
latitude DECIMAL(10, 8) NOT NULL,
longitude DECIMAL(11, 8) NOT NULL,
@@ -12,13 +13,51 @@ $sql = "CREATE TABLE IF NOT EXISTS jalan_rusak (
gambar VARCHAR(255),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
INDEX idx_coords (latitude, longitude)
)";
)",
"CREATE TABLE IF NOT EXISTS rumah_ibadah (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255) NOT NULL,
alamat TEXT NOT NULL,
pic VARCHAR(255) NOT NULL,
latitude DECIMAL(10, 8) NOT NULL,
longitude DECIMAL(11, 8) NOT NULL,
radius_m INT NOT NULL DEFAULT 1000,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
INDEX idx_rumah_ibadah_coords (latitude, longitude)
)",
"CREATE TABLE IF NOT EXISTS penduduk_miskin (
id INT AUTO_INCREMENT PRIMARY KEY,
nama_ketua_kk VARCHAR(255) NOT NULL,
jumlah_anggota INT NOT NULL,
latitude DECIMAL(10, 8) NOT NULL,
longitude DECIMAL(11, 8) NOT NULL,
rumah_ibadah_id INT DEFAULT NULL,
rumah_ibadah_nama VARCHAR(255) DEFAULT NULL,
jarak_ke_rumah_ibadah_m DECIMAL(10, 2) DEFAULT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
INDEX idx_penduduk_coords (latitude, longitude),
INDEX idx_penduduk_rumah_ibadah (rumah_ibadah_id)
)"
];
if ($conn->query($sql) === TRUE) {
echo json_encode(['status' => 'success', 'message' => 'Tabel jalan_rusak berhasil dibuat atau sudah ada']);
} else {
echo json_encode(['status' => 'error', 'message' => $conn->error]);
foreach ($statements as $sql) {
if ($conn->query($sql) !== TRUE) {
echo json_encode(['status' => 'error', 'message' => $conn->error]);
$conn->close();
exit;
}
}
$alterStatements = [
"ALTER TABLE penduduk_miskin ADD COLUMN bantuan_status VARCHAR(20) NOT NULL DEFAULT 'belum' AFTER jarak_ke_rumah_ibadah_m",
"ALTER TABLE penduduk_miskin ADD COLUMN bantuan_catatan TEXT DEFAULT NULL AFTER bantuan_status",
"ALTER TABLE penduduk_miskin ADD COLUMN bantuan_updated_at TIMESTAMP NULL DEFAULT NULL AFTER bantuan_catatan"
];
foreach ($alterStatements as $alterSql) {
$conn->query($alterSql);
}
echo json_encode(['status' => 'success', 'message' => 'Tabel berhasil dibuat atau sudah ada']);
$conn->close();
?>