Files
D1041231027-WebGIS/03/database/laporan_migration.sql
T
2026-06-10 18:54:25 +07:00

45 lines
2.0 KiB
SQL

-- laporan_migration.sql
-- Jalankan script ini di phpMyAdmin untuk database "bansos_gis"
-- Fitur: Pelaporan Warga oleh Kontributor & Koordinator
-- Tambah kolom no_telp ke tabel users jika belum ada
ALTER TABLE `users`
ADD COLUMN IF NOT EXISTS `no_telp` VARCHAR(20) NULL DEFAULT NULL
COMMENT 'Nomor telepon/WA pengguna';
-- Buat tabel laporan_warga
CREATE TABLE IF NOT EXISTS `laporan_warga` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`rumah_warga_id` INT(11) NOT NULL COMMENT 'Warga yang dilaporkan',
`pelapor_id` INT(11) NOT NULL COMMENT 'User yang membuat laporan',
`koordinator_ibadah_id` INT(11) NULL DEFAULT NULL COMMENT 'Rumah ibadah pelapor (jika koordinator)',
`jenis_laporan` ENUM(
'data_tidak_sesuai',
'warga_mampu',
'warga_pindah',
'warga_meninggal',
'data_ganda',
'lainnya'
) NOT NULL DEFAULT 'data_tidak_sesuai' COMMENT 'Jenis ketidaksesuaian yang dilaporkan',
`deskripsi` TEXT NOT NULL COMMENT 'Penjelasan detail dari pelapor',
`prioritas` ENUM('rendah', 'sedang', 'tinggi') NOT NULL DEFAULT 'sedang',
`status` ENUM(
'pending',
'ditinjau',
'diproses',
'selesai',
'ditolak'
) NOT NULL DEFAULT 'pending' COMMENT 'Status penanganan laporan',
`catatan_admin` TEXT NULL DEFAULT NULL COMMENT 'Catatan atau keputusan admin',
`ditugaskan_ke` VARCHAR(150) NULL DEFAULT NULL COMMENT 'Nama petugas yang ditugaskan cek lapangan',
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(),
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP(),
PRIMARY KEY (`id`),
KEY `fk_laporan_warga` (`rumah_warga_id`),
KEY `fk_laporan_pelapor` (`pelapor_id`),
KEY `idx_laporan_status` (`status`),
KEY `idx_laporan_prioritas` (`prioritas`),
CONSTRAINT `fk_laporan_warga` FOREIGN KEY (`rumah_warga_id`) REFERENCES `rumah_warga` (`id`) ON DELETE CASCADE,
CONSTRAINT `fk_laporan_pelapor` FOREIGN KEY (`pelapor_id`) REFERENCES `users` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;