/** * Menyuntikkan data lokasi tempat penyaluran bantuan (Rumah Ibadah) di Pontianak * @param {object} db - Instansi koneksi SQLite */ async function buat_seeder_rumah_ibadah(db) { // Array objek berisi titik koordinat asli tempat ibadah ikonik di Pontianak const daftar_rumah_ibadah = [ { nama: 'Masjid Raya Mujahidin', agama: 'Islam', lat: -0.0336, lng: 109.3364, alamat: 'Jl. Ahmad Yani' }, { nama: 'Gereja Katedral Santo Yosef', agama: 'Katolik', lat: -0.0331, lng: 109.3330, alamat: 'Jl. Pattimura' }, { nama: 'Gereja HKBP Pontianak', agama: 'Kristen Protestan', lat: -0.0305, lng: 109.3321, alamat: 'Jl. Pulau We' }, { nama: 'Vihara Bodhisatva Karaniya Metta', agama: 'Buddha', lat: -0.0255, lng: 109.3361, alamat: 'Jl. Kapten Marsan' }, { nama: 'Pura Giripati Mulawarman', agama: 'Hindu', lat: -0.0631, lng: 109.3705, alamat: 'Jl. Adi Sucipto' }, { nama: 'Kelenteng Kwan Tie Bio', agama: 'Konghucu', lat: -0.0261, lng: 109.3352, alamat: 'Jl. Diponegoro' } ]; return new Promise((resolve, reject) => { db.get("SELECT COUNT(*) as hitung FROM RUMAH_IBADAH", [], (err, row) => { if (err) return reject(err); if (row.hitung > 0) { console.log('Seeder Rumah Ibadah: Data titik penyaluran sudah tersedia.'); return resolve(); } try { const kueri_insert = `INSERT INTO RUMAH_IBADAH (nama_tempat, agama, lat, lng, alamat) VALUES (?, ?, ?, ?, ?)`; daftar_rumah_ibadah.forEach((tempat) => { db.run(kueri_insert, [tempat.nama, tempat.agama, tempat.lat, tempat.lng, tempat.alamat], (error_sql) => { if (error_sql) console.error(`Gagal menyisipkan ${tempat.nama}:`, error_sql.message); }); }); console.log('Seeder: 6 Titik pangkalan rumah ibadah Pontianak berhasil diinisialisasi.'); resolve(); } catch (error_sistem) { reject(error_sistem); } }); }); } module.exports = buat_seeder_rumah_ibadah;