From 50de6580bc3fbddbace50d815a833176f9e2bf42 Mon Sep 17 00:00:00 2001 From: TiaraChontesa Date: Wed, 10 Jun 2026 09:35:37 +0000 Subject: [PATCH] Upload files to "/" --- database.sql | 132 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 database.sql diff --git a/database.sql b/database.sql new file mode 100644 index 0000000..0bd147a --- /dev/null +++ b/database.sql @@ -0,0 +1,132 @@ +CREATE DATABASE IF NOT EXISTS db_poverty_mapping; +USE db_poverty_mapping; + +CREATE TABLE IF NOT EXISTS data_parsil ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_parsil VARCHAR(200) NOT NULL, + fungsi_parsil VARCHAR(150) NOT NULL DEFAULT 'Pemukiman', + luas_m2 DECIMAL(12,2) NOT NULL DEFAULT 0.00, + geojson LONGTEXT NOT NULL, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(), + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +USE db_poverty_mapping; + +-- 1. TABEL PENGGUNA +CREATE TABLE IF NOT EXISTS users ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_lengkap VARCHAR(150) NOT NULL, + username VARCHAR(80) NOT NULL UNIQUE, + email VARCHAR(150) NOT NULL UNIQUE, + password VARCHAR(255) NOT NULL, + role ENUM('admin','relawan','pengurus','pemerintah') NOT NULL DEFAULT 'relawan', + foto VARCHAR(255) DEFAULT NULL, + aktif TINYINT(1) NOT NULL DEFAULT 1, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + last_login TIMESTAMP NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +-- Akun Default Admin (Password: admin123) +INSERT INTO users (nama_lengkap, username, email, password, role) VALUES +('Administrator', 'admin', 'admin@webgis.id', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'admin') +ON DUPLICATE KEY UPDATE id=id; + +-- 2. TABEL RUMAH IBADAH & RUMAH MISKIN +CREATE TABLE IF NOT EXISTS rumah_ibadah ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_ibadah VARCHAR(200) NOT NULL, + kategori ENUM('Masjid','Musholla','Gereja','Pura','Vihara') NOT NULL, + alamat VARCHAR(255) DEFAULT NULL, + nama_pengurus VARCHAR(150) DEFAULT NULL, + no_telp VARCHAR(25) DEFAULT NULL, + kuota_bantuan INT NOT NULL DEFAULT 0, + radius_m INT NOT NULL DEFAULT 300, + lat DECIMAL(10,8) NOT NULL, + lng DECIMAL(11,8) NOT NULL, + created_by INT DEFAULT NULL, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + FOREIGN KEY (created_by) REFERENCES users(id) ON DELETE SET NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +CREATE TABLE IF NOT EXISTS rumah_miskin ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_kepala_keluarga VARCHAR(150) NOT NULL, + nik VARCHAR(20) NOT NULL UNIQUE, + tanggal_lahir DATE DEFAULT NULL, + jumlah_tanggungan INT NOT NULL DEFAULT 0, + pendapatan_bulanan DECIMAL(12,2) NOT NULL DEFAULT 0.00, + kondisi_rumah ENUM('Layak','Tidak Layak','Sangat Tidak Layak') NOT NULL DEFAULT 'Tidak Layak', + lat DECIMAL(10,8) NOT NULL, + lng DECIMAL(11,8) NOT NULL, + prioritas TINYINT(1) NOT NULL DEFAULT 0, + status_bantuan ENUM('Blank Spot','Terjangkau') NOT NULL DEFAULT 'Blank Spot', + created_by INT DEFAULT NULL, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + FOREIGN KEY (created_by) REFERENCES users(id) ON DELETE SET NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +-- 3. TABEL BENCANA & BANTUAN TERSALUR +CREATE TABLE IF NOT EXISTS bencana ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_bencana VARCHAR(150) NOT NULL, + jenis_bencana VARCHAR(100) NOT NULL, + tanggal_kejadian DATE NOT NULL, + lokasi_terdampak TEXT NOT NULL, + keterangan TEXT DEFAULT NULL, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +CREATE TABLE IF NOT EXISTS bantuan_tersalur ( + id INT AUTO_INCREMENT PRIMARY KEY, + warga_id INT NOT NULL, + ibadah_id INT DEFAULT NULL, + bencana_id INT DEFAULT NULL, + jenis_bantuan VARCHAR(150) NOT NULL, + jumlah VARCHAR(100) DEFAULT NULL, + tanggal DATE NOT NULL, + petugas VARCHAR(150) DEFAULT NULL, + keterangan TEXT DEFAULT NULL, + disalurkan_oleh INT DEFAULT NULL, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + FOREIGN KEY (warga_id) REFERENCES rumah_miskin(id) ON DELETE CASCADE, + FOREIGN KEY (ibadah_id) REFERENCES rumah_ibadah(id) ON DELETE SET NULL, + FOREIGN KEY (bencana_id) REFERENCES bencana(id) ON DELETE SET NULL, + FOREIGN KEY (disalurkan_oleh) REFERENCES users(id) ON DELETE SET NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +-- 4. TABEL DATA JALAN, DATA POINT & GEOMETRI SIGMA +CREATE TABLE IF NOT EXISTS data_jalan ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_jalan VARCHAR(200) NOT NULL, + status_jalan ENUM('Jalan Nasional','Jalan Provinsi','Jalan Kabupaten') NOT NULL, + panjang_meter DECIMAL(12,2) NOT NULL DEFAULT 0.00, + geojson LONGTEXT NOT NULL, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(), + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +CREATE TABLE IF NOT EXISTS data_point ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_fasilitas VARCHAR(200) NOT NULL, + jenis_fasilitas VARCHAR(100) NOT NULL, + geojson LONGTEXT NOT NULL, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(), + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +CREATE TABLE IF NOT EXISTS geometri_sigma ( + id INT AUTO_INCREMENT PRIMARY KEY, + nama_objek VARCHAR(200) NOT NULL, + keterangan TEXT DEFAULT NULL, + apakah_terdampak ENUM('Ya','Tidak') NOT NULL DEFAULT 'Tidak', + tipe_geometri ENUM('marker','polyline','polygon') NOT NULL, + koordinat_json LONGTEXT NOT NULL, + warna_layer VARCHAR(50) NOT NULL DEFAULT 'blue', + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(), + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; + +-- INDEX OPTIMALISASI +CREATE INDEX idx_miskin_coords ON rumah_miskin (lat, lng); +CREATE INDEX idx_ibadah_coords ON rumah_ibadah (lat, lng); \ No newline at end of file