first commit

This commit is contained in:
2026-06-11 21:18:48 +07:00
parent 14ef9997c2
commit 2747d616c7
45 changed files with 7381 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
-- ============================================================
-- WebGIS Pemetaan Kemiskinan Berbasis Partisipasi Rumah Ibadah
-- Studi Kasus: Masjid di Kota Pontianak
-- Schema Versi 1.0 sesuai SRS_CONTEXT.md Bab 5.4
-- ============================================================
CREATE DATABASE IF NOT EXISTS webgis_kemiskinan
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
USE webgis_kemiskinan;
-- ── Tabel: kemiskinan ─────────────────────────────────────────
-- Menyimpan data spasial lokasi dan atribut keluarga miskin.
-- Koordinat menggunakan WGS84 (EPSG:4326).
CREATE TABLE IF NOT EXISTS kemiskinan (
id INT AUTO_INCREMENT PRIMARY KEY,
nama_kepala_keluarga VARCHAR(255) NOT NULL COMMENT 'Nama kepala keluarga miskin',
jumlah_kk INT NOT NULL COMMENT 'Jumlah anggota keluarga, angka bulat positif',
alamat TEXT NOT NULL COMMENT 'Alamat lengkap tempat tinggal',
latitude DECIMAL(10,8) NOT NULL COMMENT 'Koordinat lintang WGS84, range -90 s.d. +90',
longitude DECIMAL(11,8) NOT NULL COMMENT 'Koordinat bujur WGS84, range -180 s.d. +180',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Waktu pencatatan data'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- ── Tabel: masjid ─────────────────────────────────────────────
-- Menyimpan data spasial lokasi masjid beserta radius layanan sosial.
-- Radius (meter) digunakan sebagai parameter visualisasi L.circle di Leaflet.js.
CREATE TABLE IF NOT EXISTS masjid (
id INT AUTO_INCREMENT PRIMARY KEY,
nama_masjid VARCHAR(255) NOT NULL COMMENT 'Nama lengkap masjid',
pic_masjid VARCHAR(255) NOT NULL COMMENT 'Nama pengurus/penanggung jawab (PIC)',
alamat TEXT NOT NULL COMMENT 'Alamat lengkap masjid',
latitude DECIMAL(10,8) NOT NULL COMMENT 'Koordinat lintang WGS84',
longitude DECIMAL(11,8) NOT NULL COMMENT 'Koordinat bujur WGS84',
radius INT NOT NULL DEFAULT 500 COMMENT 'Radius layanan sosial dalam meter, range 100-5000',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Waktu pencatatan data'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- ── Catatan ERD (SRS Bab 7.4) ─────────────────────────────────
-- Kedua tabel TIDAK memiliki foreign key.
-- Relasi logis antara masjid dan kemiskinan ditentukan secara spasial
-- (kalkulasi jarak vs radius) di layer peta Leaflet, bukan melalui
-- relasi database relasional. Ini merupakan desain yang disederhanakan
-- untuk versi 1.0. Versi lanjutan dapat mengimplementasikan tabel relasi
-- atau tipe spasial MySQL POINT/GEOMETRY.