Pedagang Korban Kebakaran
Selamat, Budi Santoso 👋
Pendataan komprehensif untuk validasi dan penyerahan bantuan sosial bagi pedagang terdampak Pasar Dwikora.
Memuat waktu...
Pengumuman Posko Terkini
0
Orang terdampak0
(0%) Selesai0
(0%) Proses0
(0%) MenungguPerhatian Penting
Pastikan semua data pedagang diisi dengan benar, jujur, dan sesuai dengan dokumen resmi pendukung (KTP/KPHSK). Data ini digunakan untuk verifikasi bantuan sosial dan rekonstruksi relokasi pasar.
Menu Cepat & Aksi
Pembagian Kategori Kios
KATEGORIStatus Kelengkapan Berkas
BERKASEntri Data Terbaru
| Pedagang & Toko | Kios & Kategori | Kontak & NIK | Info Rekening Bank (Bansos) | Kerugian (Est.) | Status | Aksi |
|---|
Denah Penempatan Relokasi Kios Darurat
Klik pada salah satu blok atau nomor kavling untuk melihat detail pengisi.
Kios A - Sembako (3x2m)
Kios B - Sandang & Pakaian (2.5x2m)
Kios C - Kelontong & Lainnya (2x2m)
Warna Biru/Hijau/Emas menunjukkan kavling telah terisi pedagang yang valid. Warna abu-abu redup menandakan kavling kosong / belum ada alokasi.
Budi Santoso
Petugas Pendata LapanganKelola Pengumuman Posko (Admin)
Admin OnlyLog History Aktivitas Sistem
Semua AktivitasMenampilkan seluruh riwayat log tindakan yang dilakukan oleh pengguna sistem ini.
Pengaturan Sumber Data (Koneksi)
LOCAL_SIMULATIONSecara default, aplikasi berjalan dalam mode simulasi browser. Hubungkan aplikasi Anda langsung ke Google Sheets secara real-time dengan memasukkan URL Google Apps Script yang sesuai.
// Salin kode ini ke Google Apps Script Anda (Editor Skrip pada Google Sheets):
function doGet(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = sheet.getDataRange().getValues();
var headers = data[0];
var jsonArray = [];
for (var i = 1; i < data.length; i++) {
var obj = {};
for (var j = 0; j < headers.length; j++) {
obj[headers[j]] = data[i][j];
}
jsonArray.push(obj);
}
return ContentService.createTextOutput(JSON.stringify(jsonArray))
.setMimeType(ContentService.MimeType.JSON);
}
function doPost(e) {
try {
var postData = JSON.parse(e.postData.contents);
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
if (postData.action === "add") {
sheet.appendRow([
postData.id, postData.nama, postData.nik, postData.hp,
postData.alamat, postData.kphsk, postData.jenisUsaha,
postData.zona, postData.nomorKios, postData.status,
postData.kerugian, postData.bankNama, postData.bankRekening,
postData.bankPemilik, postData.tglUpdate
]);
} else if (postData.action === "edit") {
var data = sheet.getDataRange().getValues();
for (var i = 1; i < data.length; i++) {
if (data[i][0] == postData.id) {
sheet.getRange(i + 1, 1, 1, 15).setValues([[
postData.id, postData.nama, postData.nik, postData.hp,
postData.alamat, postData.kphsk, postData.jenisUsaha,
postData.zona, postData.nomorKios, postData.status,
postData.kerugian, postData.bankNama, postData.bankRekening,
postData.bankPemilik, postData.tglUpdate
]]);
break;
}
}
} else if (postData.action === "delete") {
var data = sheet.getDataRange().getValues();
for (var i = 1; i < data.length; i++) {
if (data[i][0] == postData.id) {
sheet.deleteRow(i + 1);
break;
}
}
}
return ContentService.createTextOutput(JSON.stringify({status: "success"}))
.setMimeType(ContentService.MimeType.JSON);
} catch(err) {
return ContentService.createTextOutput(JSON.stringify({status: "error", message: err.toString()}))
.setMimeType(ContentService.MimeType.JSON);
}
}