299 lines
8.5 KiB
Markdown
299 lines
8.5 KiB
Markdown
# PANDUAN INSTALASI SINERGI
|
|
## Sistem Informasi Geografis Penanganan Kemiskinan — Kota Pontianak
|
|
|
|
---
|
|
|
|
## PRASYARAT SISTEM
|
|
|
|
Pastikan software berikut sudah terinstal:
|
|
|
|
| Software | Versi | Keterangan |
|
|
|----------|-------|------------|
|
|
| Laragon | 6.0+ | Full / Lite |
|
|
| PHP | 8.1+ | Sudah termasuk dalam Laragon |
|
|
| MySQL | 8.0+ | Sudah termasuk dalam Laragon |
|
|
| Apache | 2.4+ | Sudah termasuk dalam Laragon |
|
|
|
|
---
|
|
|
|
## LANGKAH INSTALASI
|
|
|
|
### Step 1: Copy Folder Proyek
|
|
|
|
```
|
|
Salin folder `sinergi/` ke:
|
|
C:\laragon\www\sinergi\
|
|
```
|
|
|
|
Pastikan struktur folder seperti ini:
|
|
```
|
|
C:\laragon\www\sinergi\
|
|
├── app\
|
|
│ ├── controllers\
|
|
│ ├── models\
|
|
│ └── views\
|
|
├── config\
|
|
├── core\
|
|
├── public\
|
|
├── database\
|
|
├── index.php
|
|
└── .htaccess
|
|
```
|
|
|
|
---
|
|
|
|
### Step 2: Aktifkan mod_rewrite Apache
|
|
|
|
1. Buka **Laragon** → klik kanan tray icon
|
|
2. Pilih **Apache** → **httpd.conf**
|
|
3. Cari baris: `#LoadModule rewrite_module modules/mod_rewrite.so`
|
|
4. Hapus tanda `#` di depannya
|
|
5. Simpan file
|
|
6. Restart Laragon
|
|
|
|
---
|
|
|
|
### Step 3: Import Database
|
|
|
|
#### Cara A — Melalui phpMyAdmin (Disarankan)
|
|
1. Buka browser: `http://localhost/phpmyadmin`
|
|
2. Klik **"Import"** di menu atas
|
|
3. Pilih file `database/sinergi.sql` → klik **Go**
|
|
4. Setelah selesai, pilih file `database/dummy_data.sql` → klik **Go**
|
|
|
|
#### Cara B — Melalui Command Line
|
|
```bash
|
|
# Buka Command Prompt di folder sinergi
|
|
cd C:\laragon\www\sinergi
|
|
|
|
# Import schema
|
|
mysql -u root -p < database\sinergi.sql
|
|
|
|
# Import dummy data
|
|
mysql -u root -p sinergi_db < database\dummy_data.sql
|
|
```
|
|
|
|
---
|
|
|
|
### Step 4: Konfigurasi Aplikasi
|
|
|
|
Edit file `config/database.php`:
|
|
```php
|
|
define('DB_HOST', 'localhost');
|
|
define('DB_NAME', 'sinergi_db');
|
|
define('DB_USER', 'root');
|
|
define('DB_PASS', ''); // Sesuaikan password MySQL Anda
|
|
define('DB_CHARSET', 'utf8mb4');
|
|
```
|
|
|
|
Edit file `config/app.php` jika nama folder berbeda:
|
|
```php
|
|
define('APP_URL', 'http://localhost/sinergi'); // Sesuaikan
|
|
```
|
|
|
|
---
|
|
|
|
### Step 5: Buat Folder Upload
|
|
|
|
```bash
|
|
# Pastikan folder ini ada dan bisa ditulis
|
|
C:\laragon\www\sinergi\public\images\uploads\
|
|
C:\laragon\www\sinergi\public\images\laporan\
|
|
C:\laragon\www\sinergi\public\images\warga\
|
|
C:\laragon\www\sinergi\public\images\bantuan\
|
|
C:\laragon\www\sinergi\public\images\rumah_ibadah\
|
|
```
|
|
|
|
Atau jalankan script ini di Command Prompt:
|
|
```batch
|
|
mkdir C:\laragon\www\sinergi\public\images\uploads
|
|
mkdir C:\laragon\www\sinergi\public\images\laporan
|
|
mkdir C:\laragon\www\sinergi\public\images\warga
|
|
mkdir C:\laragon\www\sinergi\public\images\bantuan
|
|
mkdir C:\laragon\www\sinergi\public\images\rumah_ibadah
|
|
```
|
|
|
|
---
|
|
|
|
### Step 6: Jalankan Aplikasi
|
|
|
|
1. **Start Laragon** (klik tombol Start All)
|
|
2. Buka browser: `http://localhost/sinergi`
|
|
3. Halaman beranda publik akan tampil
|
|
|
|
---
|
|
|
|
## AKUN LOGIN DEMO
|
|
|
|
Semua akun menggunakan password: **Admin@123**
|
|
|
|
| Role | Username | Password | Akses |
|
|
|------|----------|----------|-------|
|
|
| Super Admin | `superadmin` | Admin@123 | Semua fitur admin |
|
|
| Verifikator (Kel. Darat Sekip) | `verif_darat` | Admin@123 | Verifikasi laporan |
|
|
| Verifikator (Kel. Sungai Jawi) | `verif_jawi` | Admin@123 | Verifikasi laporan |
|
|
| Pengurus Masjid Darussalam | `ri_masjid_darussalam` | Admin@123 | Penyaluran bantuan |
|
|
| Pengurus Gereja Bethel | `ri_gereja_bethel` | Admin@123 | Penyaluran bantuan |
|
|
| Pengurus Masjid Al-Falah | `ri_masjid_alfalah` | Admin@123 | Penyaluran bantuan |
|
|
| Dinas Sosial | `dinsos_ahmad` | Admin@123 | Monitoring |
|
|
| Wali Kota | `walikota` | Admin@123 | Dashboard Eksekutif |
|
|
|
|
---
|
|
|
|
## URL AKSES
|
|
|
|
| Halaman | URL |
|
|
|---------|-----|
|
|
| Beranda Publik | `http://localhost/sinergi/` |
|
|
| Form Laporan | `http://localhost/sinergi/lapor` |
|
|
| Cek Laporan | `http://localhost/sinergi/cek-laporan` |
|
|
| Login | `http://localhost/sinergi/login` |
|
|
| Dashboard Admin | `http://localhost/sinergi/admin/dashboard` |
|
|
| Dashboard Verifikator | `http://localhost/sinergi/verifikator/dashboard` |
|
|
| Dashboard Rumah Ibadah | `http://localhost/sinergi/rumah-ibadah/dashboard` |
|
|
| Dashboard Dinsos | `http://localhost/sinergi/dinsos/dashboard` |
|
|
| Dashboard Wali Kota | `http://localhost/sinergi/walikota/dashboard` |
|
|
|
|
---
|
|
|
|
## TROUBLESHOOTING
|
|
|
|
### Error 404 (Halaman tidak ditemukan)
|
|
- Pastikan `mod_rewrite` sudah aktif di Apache
|
|
- Cek file `.htaccess` ada di root folder `sinergi/`
|
|
- Pastikan `AllowOverride All` aktif di `httpd.conf`:
|
|
```
|
|
<Directory "C:/laragon/www">
|
|
AllowOverride All
|
|
</Directory>
|
|
```
|
|
|
|
### Error database connection
|
|
- Pastikan MySQL running di Laragon
|
|
- Cek konfigurasi di `config/database.php`
|
|
- Pastikan database `sinergi_db` sudah diimport
|
|
|
|
### Peta Leaflet tidak muncul
|
|
- Pastikan koneksi internet aktif (Leaflet CDN)
|
|
- Cek console browser (F12) untuk error JavaScript
|
|
|
|
### Upload foto gagal
|
|
- Pastikan folder `public/images/uploads/` ada dan writable
|
|
- Cek konfigurasi `upload_max_filesize` di `php.ini` (minimal 5M)
|
|
|
|
### Halaman putih kosong
|
|
- Aktifkan error reporting: tambah di awal `index.php`:
|
|
```php
|
|
ini_set('display_errors', 1);
|
|
error_reporting(E_ALL);
|
|
```
|
|
|
|
---
|
|
|
|
## STRUKTUR FOLDER LENGKAP
|
|
|
|
```
|
|
sinergi/
|
|
├── .htaccess # URL Rewriting
|
|
├── index.php # Entry point & Router
|
|
│
|
|
├── config/
|
|
│ ├── app.php # Konfigurasi aplikasi
|
|
│ └── database.php # Konfigurasi database
|
|
│
|
|
├── core/
|
|
│ ├── Auth.php # Autentikasi & session
|
|
│ ├── Controller.php # Base controller
|
|
│ ├── Database.php # Koneksi database (PDO)
|
|
│ ├── Router.php # URL Router
|
|
│ └── helpers.php # Helper functions (Haversine, skor, dll)
|
|
│
|
|
├── app/
|
|
│ ├── controllers/
|
|
│ │ ├── AdminController.php
|
|
│ │ ├── AuthController.php
|
|
│ │ ├── DinsosController.php
|
|
│ │ ├── PublicController.php
|
|
│ │ ├── RumahIbadahController.php
|
|
│ │ ├── VerifikatorController.php
|
|
│ │ └── WalikotaController.php
|
|
│ │
|
|
│ └── views/
|
|
│ ├── layouts/
|
|
│ │ ├── admin.php
|
|
│ │ ├── dinsos.php
|
|
│ │ ├── public.php
|
|
│ │ ├── rumah_ibadah.php
|
|
│ │ ├── verifikator.php
|
|
│ │ └── walikota.php
|
|
│ ├── admin/ # View Super Admin
|
|
│ ├── auth/ # Login
|
|
│ ├── dinsos/ # View Dinsos
|
|
│ ├── public/ # View Publik
|
|
│ ├── rumah_ibadah/ # View Pengurus RI
|
|
│ ├── verifikator/ # View Verifikator
|
|
│ └── walikota/ # View Wali Kota
|
|
│
|
|
├── public/
|
|
│ ├── css/app.css # Stylesheet utama
|
|
│ ├── js/app.js # JavaScript utama (GIS, Charts)
|
|
│ └── images/ # Gambar & upload
|
|
│
|
|
└── database/
|
|
├── sinergi.sql # Schema + data roles/kecamatan
|
|
└── dummy_data.sql # Data dummy untuk testing
|
|
```
|
|
|
|
---
|
|
|
|
## TEKNOLOGI YANG DIGUNAKAN
|
|
|
|
| Komponen | Teknologi | Versi |
|
|
|----------|-----------|-------|
|
|
| Frontend | HTML5, CSS3 Native, JavaScript | — |
|
|
| Peta GIS | Leaflet.js | 1.9.4 |
|
|
| Heatmap | Leaflet.heat | 0.2.0 |
|
|
| Grafik | Chart.js | 4.4.0 |
|
|
| Font | Inter (Google Fonts) | — |
|
|
| Backend | PHP Native (tanpa framework) | 8.1+ |
|
|
| Database | MySQL | 8.0+ |
|
|
| Arsitektur | MVC Sederhana + RBAC | — |
|
|
| Environment | Laragon | 6.0+ |
|
|
|
|
---
|
|
|
|
## FITUR UTAMA
|
|
|
|
### 🗺 Sistem GIS
|
|
- Peta interaktif Leaflet.js
|
|
- Marker warga miskin (merah=ekstrem, oranye=miskin, kuning=rentan)
|
|
- Marker & radius rumah ibadah (hijau)
|
|
- Heatmap persebaran kemiskinan
|
|
- Layer control (beralih antara tampilan)
|
|
- Popup informasi detail
|
|
|
|
### 📊 Algoritma Prioritas Bantuan
|
|
Skor 0-100 berdasarkan 7 faktor:
|
|
1. **Penghasilan** (30 poin) — semakin rendah = skor lebih tinggi
|
|
2. **Jumlah tanggungan** (20 poin)
|
|
3. **Kondisi rumah** (15 poin)
|
|
4. **Pendidikan** (10 poin)
|
|
5. **Riwayat penyakit** (10 poin)
|
|
6. **Status lansia** (8 poin)
|
|
7. **Status disabilitas** (7 poin)
|
|
|
|
### 🔍 Deteksi Blind Spot
|
|
- Menggunakan **Haversine Formula** untuk menghitung jarak
|
|
- Jika warga tidak berada dalam radius rumah ibadah manapun → **Blind Spot**
|
|
- Blind spot otomatis muncul di dashboard Dinsos & Admin
|
|
|
|
### ⛪ Assignment Rumah Ibadah
|
|
- Otomatis dihitung saat verifikasi warga
|
|
- Menggunakan Haversine Formula mencari rumah ibadah dalam radius terdekat
|
|
- 1 warga = 1 rumah ibadah penanggung jawab
|
|
|
|
---
|
|
|
|
*SINERGI v1.0.0 — Sistem Informasi Geografis Penanganan Kemiskinan*
|
|
*Kota Pontianak — © 2024 Dinas Sosial Kota Pontianak*
|