-- Database schema for WebGIS Pemetaan Kemiskinan Pontianak CREATE DATABASE IF NOT EXISTS webgis; USE webgis; -- 1. Tabel rumah_ibadah DROP TABLE IF EXISTS `log_bantuan`; DROP TABLE IF EXISTS `rumah_ibadah`; CREATE TABLE `rumah_ibadah` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nama` varchar(255) NOT NULL, `jenis` varchar(100) NOT NULL, `alamat` text, `radius` double NOT NULL DEFAULT 0, `lat` double NOT NULL, `lng` double NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 2. Tabel penduduk_miskin DROP TABLE IF EXISTS `penduduk_miskin`; CREATE TABLE `penduduk_miskin` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nama` varchar(255) NOT NULL, `kategori_bantuan` varchar(255) NOT NULL, `jumlah_jiwa` int(11) NOT NULL DEFAULT 1, `lat` double NOT NULL, `lng` double NOT NULL, `foto_rumah` varchar(255) DEFAULT NULL, `foto_kk` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 3. Tabel log_bantuan CREATE TABLE `log_bantuan` ( `id` int(11) NOT NULL AUTO_INCREMENT, `miskin_id` int(11) NOT NULL, `ibadah_id` int(11) NOT NULL, `tipe_bantuan` varchar(255) NOT NULL, `tanggal` date NOT NULL, `keterangan` text, PRIMARY KEY (`id`), KEY `fk_log_miskin` (`miskin_id`), KEY `fk_log_ibadah` (`ibadah_id`), CONSTRAINT `fk_log_ibadah` FOREIGN KEY (`ibadah_id`) REFERENCES `rumah_ibadah` (`id`) ON DELETE CASCADE, CONSTRAINT `fk_log_miskin` FOREIGN KEY (`miskin_id`) REFERENCES `penduduk_miskin` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- Data Contoh (Sample Data) untuk Pontianak -- Data Contoh Rumah Ibadah INSERT INTO `rumah_ibadah` (`nama`, `jenis`, `alamat`, `radius`, `lat`, `lng`) VALUES ('Masjid Raya Mujahidin', 'Masjid', 'Jl. Jenderal Ahmad Yani, Akcaya, Kec. Pontianak Sel.', 500, -0.0435, 109.3440), ('Gereja Katedral Santo Yosef', 'Gereja', 'Jl. Patria Tama, Darat Sekip, Kec. Pontianak Kota', 500, -0.0278, 109.3370), ('Vihara Bodhisatva Karaniya Metta', 'Vihara', 'Jl. Kapten Marsan, Darat Sekip, Kec. Pontianak Kota', 500, -0.0232, 109.3432); -- Data Contoh Penduduk Miskin INSERT INTO `penduduk_miskin` (`nama`, `kategori_bantuan`, `jumlah_jiwa`, `lat`, `lng`) VALUES ('Budi Santoso', 'Makan', 4, -0.0420, 109.3415), ('Siti Aminah', 'Pemberdayaan', 3, -0.0285, 109.3395), ('Ahmad Subarjo', 'Makan', 5, -0.0245, 109.3448); -- Data Contoh Log Bantuan INSERT INTO `log_bantuan` (`miskin_id`, `ibadah_id`, `tipe_bantuan`, `tanggal`, `keterangan`) VALUES (1, 1, 'Sembako', '2026-05-15', 'Pembagian paket sembako bulanan'), (2, 2, 'Pendidikan', '2026-05-20', 'Bantuan biaya sekolah anak'), (3, 1, 'Uang Tunai', '2026-06-01', 'Santunan tunai darurat'); -- 7. Tabel users DROP TABLE IF EXISTS `users`; CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(100) NOT NULL UNIQUE, `password` varchar(255) NOT NULL, `role` enum('admin', 'pengelola') NOT NULL, `ibadah_id` int(11) DEFAULT NULL, PRIMARY KEY (`id`), CONSTRAINT `fk_users_ibadah` FOREIGN KEY (`ibadah_id`) REFERENCES `rumah_ibadah` (`id`) ON DELETE SET NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- Data Contoh Pengguna (Default Users) -- Password admin: password -- Password pengelola: password (terhubung ke Masjid Raya Mujahidin, ibadah_id = 1) INSERT INTO `users` (`username`, `password`, `role`, `ibadah_id`) VALUES ('admin', '$2y$10$qqKxivn4646czFu/ffwa/uZxJrkj3T9xmsrRbyxJbHx6jllpOOfDO', 'admin', NULL), ('pengelola_mujahidin', '$2y$10$qqKxivn4646czFu/ffwa/uZxJrkj3T9xmsrRbyxJbHx6jllpOOfDO', 'pengelola', 1);