Add Layanan Polsek submenu polsek terdekat
Seeder menu keamanan -> menu ekonomi submenu : demografi pekerjaan, junlah pengangguran, lowongan kerja lokal, pasar desa, program kemiskinan, sektor unggulan, struktur organisasi
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
[
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh7ugj2",
|
||||
"pekerjaan": "Petani/Pekebun",
|
||||
"lakiLaki": 180,
|
||||
"perempuan": 120
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh8vhk3",
|
||||
"pekerjaan": "Perajin Industri",
|
||||
"lakiLaki": 95,
|
||||
"perempuan": 140
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh9wil4",
|
||||
"pekerjaan": "Pedagang/UMKM",
|
||||
"lakiLaki": 130,
|
||||
"perempuan": 170
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh0xjm5",
|
||||
"pekerjaan": "Karyawan Swasta",
|
||||
"lakiLaki": 260,
|
||||
"perempuan": 310
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh1ykn6",
|
||||
"pekerjaan": "PNS/TNI/Polri",
|
||||
"lakiLaki": 85,
|
||||
"perempuan": 75
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh2zlo7",
|
||||
"pekerjaan": "Buruh Harian Lepas",
|
||||
"lakiLaki": 140,
|
||||
"perempuan": 90
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh3amp8",
|
||||
"pekerjaan": "Wiraswasta",
|
||||
"lakiLaki": 165,
|
||||
"perempuan": 110
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh4bnq9",
|
||||
"pekerjaan": "Pelajar/Mahasiswa",
|
||||
"lakiLaki": 220,
|
||||
"perempuan": 240
|
||||
},
|
||||
{
|
||||
"id": "cmkf3kv0b0004vnys6hh5cor0",
|
||||
"pekerjaan": "Belum/Tidak Bekerja",
|
||||
"lakiLaki": 70,
|
||||
"perempuan": 95
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,57 @@
|
||||
[
|
||||
{
|
||||
"id": "3b3e817b-c136-4488-ac79-9a7d408939a2",
|
||||
"posisi": "Lowongan TPS3R Pudak Mesari",
|
||||
"namaPerusahaan": "TPS3R Pudak Mesari Desa Darmasaba",
|
||||
"lokasi": "Desa Darmasaba, Abiansemal, Kabupaten Badung, Bali",
|
||||
"tipePekerjaan": "Freelance",
|
||||
"gaji": "1.500.000",
|
||||
"deskripsi": "Menjalankan tugas di TPS3R Pudak Mesari.",
|
||||
"kualifikasi": "Usia 18-30 tahun, SMA/SMK minimal",
|
||||
"notelp": "089647037426"
|
||||
},
|
||||
{
|
||||
"id": "3b3e817b-c136-4488-bd80-9a7d408939a2",
|
||||
"posisi": "Marketing Executive",
|
||||
"namaPerusahaan": "PT Mitra Krida Mandiri (Dealer Honda MKM Darmasaba)",
|
||||
"lokasi": "Jalan Raya Darmasaba No.169, Abiansemal, Badung, Bali",
|
||||
"tipePekerjaan": "Full Time",
|
||||
"gaji": "2.500.000",
|
||||
"deskripsi": "Menjalankan tugas pemasaran dan penjualan produk Honda di area Darmasaba.",
|
||||
"kualifikasi": "Usia 18-30 tahun, SMA/SMK minimal, memiliki sepeda motor Honda dan smartphone.",
|
||||
"notelp": "081296001047"
|
||||
},
|
||||
{
|
||||
"id": "3b3e817b-c136-4488-ce91-9a7d408939a2",
|
||||
"posisi": "Kasir",
|
||||
"namaPerusahaan": "GOGO DARMASABA",
|
||||
"lokasi": "Jl. Raya Darmasaba, Darmasaba, Kec. Abiansemal, Kabupaten Badung, Bali",
|
||||
"tipePekerjaan": "Full Time",
|
||||
"gaji": "2.500.000",
|
||||
"deskripsi": "Melakukan pelayanan kasir dan administrasi pelanggan di restoran/food service.",
|
||||
"kualifikasi": "Wanita, 18-30 tahun, SMA/SMK minimal pengalaman 1-3 tahun sebagai kasir atau Customer Service.",
|
||||
"notelp": "089647037426"
|
||||
},
|
||||
{
|
||||
"id": "3b3e817b-c136-4488-df02-9a7d408939a2",
|
||||
"posisi": "Kasir / Teknisi Handphone",
|
||||
"namaPerusahaan": "Jaya Cell Darmasaba",
|
||||
"lokasi": "Jl. Raya Darmasaba, Darmasaba, Abiansemal, Badung, Bali",
|
||||
"tipePekerjaan": "Full Time",
|
||||
"gaji": "2.000.000",
|
||||
"deskripsi": "Melakukan pelayanan kasir serta teknisi ponsel termasuk troubleshooting dan perbaikan.",
|
||||
"kualifikasi": "Tidak disebutkan pengalaman khusus, memiliki KTP dan keinginan kuat untuk bekerja.",
|
||||
"notelp": "089647037426"
|
||||
},
|
||||
{
|
||||
"id": "3b3e817b-c136-4488-eg13-9a7d408939a2",
|
||||
"posisi": "Guru Les (Pengajar Anak)",
|
||||
"namaPerusahaan": "Bimba AIUEO Darmasaba",
|
||||
"lokasi": "Darmasaba, Kabupaten Badung, Bali",
|
||||
"tipePekerjaan": "Full Time",
|
||||
"gaji": "2.000.000",
|
||||
"deskripsi": "Mengajar calistung dan perkembangan dasar anak usia 3-6 tahun.",
|
||||
"kualifikasi": "Minimal SMA/SMK, komunikasi baik, berinteraksi dengan anak-anak.",
|
||||
"notelp": "089647037426"
|
||||
}
|
||||
]
|
||||
@@ -6,5 +6,17 @@
|
||||
{
|
||||
"id": "5c06chf7-123f-6hfe-0663-5e9h76e55060",
|
||||
"nama": "Minuman"
|
||||
},
|
||||
{
|
||||
"id": "5c06chf7-123f-7igd-0663-5e9h76e55060",
|
||||
"nama": "Sembako"
|
||||
},
|
||||
{
|
||||
"id": "5c06chf7-123f-8jhe-0663-5e9h76e55060",
|
||||
"nama": "Sayur Mayur"
|
||||
},
|
||||
{
|
||||
"id": "5c06chf7-123f-9kif-0663-5e9h76e55060",
|
||||
"nama": "Protein Hewani"
|
||||
}
|
||||
]
|
||||
|
||||
42
prisma/data/ekonomi/pasar-desa/kategori-to-pasar.json
Normal file
42
prisma/data/ekonomi/pasar-desa/kategori-to-pasar.json
Normal file
@@ -0,0 +1,42 @@
|
||||
[
|
||||
{
|
||||
"id": "f6b52033-5016-45d9-b0fd-b9d4b6c4729b",
|
||||
"kategoriId": "5c06chf7-123f-9kif-0663-5e9h76e55060",
|
||||
"pasarDesaId": "d62660a2-ac6b-428a-acf6-58cc837ef789"
|
||||
},
|
||||
{
|
||||
"id": "d2ef373c-043c-44b5-adde-6a25a54199d3",
|
||||
"kategoriId": "5c06chf7-123f-7igd-0663-5e9h76e55060",
|
||||
"pasarDesaId": "d62660a2-ac6b-428a-acf6-58cc837ef789"
|
||||
},
|
||||
{
|
||||
"id": "ad427752-fea0-4ef3-a312-5961eefd5ee3",
|
||||
"kategoriId": "4b95bge6-012e-5ged-9552-4d8g65d44959",
|
||||
"pasarDesaId": "d62660a2-ac6b-428a-acf6-58cc837ef789"
|
||||
},
|
||||
{
|
||||
"id": "bd00ab59-7ac8-4d40-94de-a86bb0eb4557",
|
||||
"kategoriId": "5c06chf7-123f-8jhe-0663-5e9h76e55060",
|
||||
"pasarDesaId": "24c6b992-49da-4c6e-aebb-72cf89f75438"
|
||||
},
|
||||
{
|
||||
"id": "b7d311a2-a23a-499d-a339-823c5e30849a",
|
||||
"kategoriId": "5c06chf7-123f-7igd-0663-5e9h76e55060",
|
||||
"pasarDesaId": "24c6b992-49da-4c6e-aebb-72cf89f75438"
|
||||
},
|
||||
{
|
||||
"id": "50ccc6c9-92c1-4d86-9585-85d48d35f640",
|
||||
"kategoriId": "4b95bge6-012e-5ged-9552-4d8g65d44959",
|
||||
"pasarDesaId": "24c6b992-49da-4c6e-aebb-72cf89f75438"
|
||||
},
|
||||
{
|
||||
"id": "3b27f795-1d1d-4655-90f9-b779a009094e",
|
||||
"kategoriId": "4b95bge6-012e-5ged-9552-4d8g65d44959",
|
||||
"pasarDesaId": "6dea2257-b710-4cd2-8d94-9b6737e658d8"
|
||||
},
|
||||
{
|
||||
"id": "d45873c5-5948-40f9-a88d-aa0861132bae",
|
||||
"kategoriId": "4b95bge6-012e-5ged-9552-4d8g65d44959",
|
||||
"pasarDesaId": "1b7a17ea-83f7-4e73-a94d-96e2b4a623f2"
|
||||
}
|
||||
]
|
||||
46
prisma/data/ekonomi/pasar-desa/pasar-desa.json
Normal file
46
prisma/data/ekonomi/pasar-desa/pasar-desa.json
Normal file
@@ -0,0 +1,46 @@
|
||||
[
|
||||
{
|
||||
"id": "1b7a17ea-83f7-4e73-a94d-96e2b4a623f2",
|
||||
"nama": "Warung Pasar Darmasaba",
|
||||
"harga": 30000,
|
||||
"imageId": "cmkew56ls0000vnysrnzr9ttx",
|
||||
"rating": 4.3,
|
||||
"alamatUsaha": "Br. Baler Pasar, Desa Darmasaba, Kec. Abiansemal",
|
||||
"kontak": "081234567890",
|
||||
"deskripsi": "Warung tradisional yang menjual kebutuhan pokok harian seperti sembako, jajanan pasar, dan minuman.",
|
||||
"kategoriProdukId": "5c06chf7-123f-7igd-0663-5e9h76e55060"
|
||||
},
|
||||
{
|
||||
"id": "6dea2257-b710-4cd2-8d94-9b6737e658d8",
|
||||
"nama": "Jajanan Pasar Bu Made",
|
||||
"imageId": "cmkewaa2s0001vnysvvs9tu56",
|
||||
"harga": 5000,
|
||||
"rating": 4.6,
|
||||
"alamatUsaha": "Jl. Raya Darmasaba, dekat Banjar Baler Pasar",
|
||||
"kontak": "082145678901",
|
||||
"deskripsi": "Menjual berbagai jajanan pasar tradisional Bali seperti laklak, klepon, dan pisang rai.",
|
||||
"kategoriProdukId": "4b95bge6-012e-5ged-9552-4d8g65d44959"
|
||||
},
|
||||
{
|
||||
"id": "24c6b992-49da-4c6e-aebb-72cf89f75438",
|
||||
"nama": "Sayur Segar Pak Wayan",
|
||||
"imageId": "cmkewcvfq0002vnys6985nm90",
|
||||
"harga": 20000,
|
||||
"rating": 4.4,
|
||||
"alamatUsaha": "Area Pasar Desa Darmasaba",
|
||||
"kontak": "087865432109",
|
||||
"deskripsi": "Lapak sayur segar yang menyediakan sayuran lokal hasil petani sekitar Desa Darmasaba.",
|
||||
"kategoriProdukId": "5c06chf7-123f-8jhe-0663-5e9h76e55060"
|
||||
},
|
||||
{
|
||||
"id": "d62660a2-ac6b-428a-acf6-58cc837ef789",
|
||||
"nama": "Ayam & Daging Segar Darmasaba",
|
||||
"imageId": "cmkewf4u90003vnys87en35nj",
|
||||
"harga": 80000,
|
||||
"rating": 4.2,
|
||||
"alamatUsaha": "Br. Baler Pasar, Desa Darmasaba",
|
||||
"kontak": "081998877665",
|
||||
"deskripsi": "Menjual ayam potong dan daging segar untuk kebutuhan rumah tangga dan upacara adat.",
|
||||
"kategoriProdukId": "5c06chf7-123f-9kif-0663-5e9h76e55060"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,23 @@
|
||||
[
|
||||
{
|
||||
"id": "dd92a029-cd7d-4b60-8a3b-dd88e61fe715",
|
||||
"nama": "BLT-DD (Bantuan Langsung Tunai Dana Desa)",
|
||||
"icon": "bantuan",
|
||||
"deskripsi": "<p>Program pemberian Bantuan Langsung Tunai yang dibiayai dari Dana Desa untuk meringankan beban ekonomi keluarga miskin/prasejahtera di Desa Darmasaba.</p>",
|
||||
"statistikId": "d59481a3-ff7f-4e52-cd5c-89e143eeb869"
|
||||
},
|
||||
{
|
||||
"id": "dd92a029-cd7d-4b60-9b4c-dd88e61fe715",
|
||||
"nama": "Penguatan Ketahanan Pangan",
|
||||
"icon": "air",
|
||||
"deskripsi": "<p>Kegiatan pemberdayaan masyarakat dalam ketahanan pangan untuk mendukung ketersediaan pangan keluarga kurang mampu dan meningkatkan kemampuan produksi pangan lokal.</p>",
|
||||
"statistikId": "d59481a3-ff7f-4e52-de6d-89e143eeb869"
|
||||
},
|
||||
{
|
||||
"id": "dd92a029-cd7d-4b60-0c5d-dd88e61fe715",
|
||||
"nama": "Peningkatan IKM berbasis E-commerce",
|
||||
"icon": "ekonomi",
|
||||
"deskripsi": "<p>Program peningkatan keterampilan usaha mikro kecil (IKM) termasuk pelatihan branding, pengemasan, dan promosi digital untuk memperkuat ekonomi rumah tangga melalui pemasaran online.</p>",
|
||||
"statistikId": "d59481a3-ff7f-4e52-df7e-89e143eeb869"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,17 @@
|
||||
[
|
||||
{
|
||||
"id": "d59481a3-ff7f-4e52-cd5c-89e143eeb869",
|
||||
"tahun": 2023,
|
||||
"jumlah": 20
|
||||
},
|
||||
{
|
||||
"id": "d59481a3-ff7f-4e52-de6d-89e143eeb869",
|
||||
"tahun": 2024,
|
||||
"jumlah": 30
|
||||
},
|
||||
{
|
||||
"id": "d59481a3-ff7f-4e52-df7e-89e143eeb869",
|
||||
"tahun": 2025,
|
||||
"jumlah": 20
|
||||
}
|
||||
]
|
||||
44
prisma/data/ekonomi/sektor-unggulan/sektor-unggulan.json
Normal file
44
prisma/data/ekonomi/sektor-unggulan/sektor-unggulan.json
Normal file
@@ -0,0 +1,44 @@
|
||||
[
|
||||
{
|
||||
"id": "053999e8-e5c4-4a50-b587-0e0ce15aba1a",
|
||||
"name": "Pertanian",
|
||||
"description": "Sektor pertanian meliputi kegiatan bercocok tanam padi, palawija, dan tanaman lain di subak yang menjadi basis mata pencaharian warga",
|
||||
"value": 90
|
||||
},
|
||||
{
|
||||
"id": "8e0d2f2d-512d-4c05-8880-b6e7d144a34d",
|
||||
"name": "UMKM Kecil",
|
||||
"description": "Usaha Mikro Kecil Menengah termasuk IKM berbasis pengolahan pangan dan kuliner yang tumbuh di desa sebagai penggerak ekonomi lokal",
|
||||
"value": 45
|
||||
},
|
||||
{
|
||||
"id": "0378b10a-f0e3-421c-9272-225d931179ce",
|
||||
"name": "Peternakan",
|
||||
"description": "Peternakan ikan lele dan mata pencaharian lain yang mendukung ketahanan pangan dan ekonomi masyarakat desa",
|
||||
"value": 30
|
||||
},
|
||||
{
|
||||
"id": "4fa28680-8014-4c46-9dd0-1aa910630fd3",
|
||||
"name": "BUMDes",
|
||||
"description": "BUMDes Pudak Mesari sebagai lembaga usaha desa yang mengembangkan potensi lokal dan layanan ekonomi",
|
||||
"value": 20
|
||||
},
|
||||
{
|
||||
"id": "669464b2-dd7e-44be-b609-97a9b844df8b",
|
||||
"name": "Kawasan Kuliner",
|
||||
"description": "Potensi kawasan kuliner desa yang menjadi daya tarik ekonomi dan pariwisata kecil di daerah Darmasaba",
|
||||
"value": 15
|
||||
},
|
||||
{
|
||||
"id": "ef65e122-84ce-4483-93e9-c1a8bcee9b79",
|
||||
"name": "Pariwisata",
|
||||
"description": "Potensi wisata lokal seperti Jogging Track, taman dan water park yang memberikan nilai tambah ekonomi masyarakat",
|
||||
"value": 35
|
||||
},
|
||||
{
|
||||
"id": "08443c84-8ca9-4690-b900-e5e3e753cc97",
|
||||
"name": "Kerajinan Genteng",
|
||||
"description": "Kerajinan genteng press di Desa Adat Tegal yang merupakan usaha kerajinan lokal dengan kontribusi ekonomi",
|
||||
"value": 25
|
||||
}
|
||||
]
|
||||
@@ -999,7 +999,7 @@
|
||||
"link": "/api/fileStorage/findUnique/M9QlgVKIEfCdY3g4F_tRZ-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
{
|
||||
"id": "cmkayz2h8001cvn6yrb7uptjs",
|
||||
"name": "Gi8EX3pBmT719AfzXirDS-desktop.webp",
|
||||
"realName": "pd1.jpg",
|
||||
@@ -1115,5 +1115,59 @@
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/DyX82oztXbHfu6HEvbrpt-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkc2tcn30000vnt9esmx8kyb",
|
||||
"name": "K0wY911212dinYA3AFB_f-desktop.webp",
|
||||
"realName": "keamananl-1.jpg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/K0wY911212dinYA3AFB_f-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkc2xm1z0003vnt98682dv0a",
|
||||
"name": "x0_-siY2V8IehBzo4_uph-desktop.webp",
|
||||
"realName": "keamananl-2.jpg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/x0_-siY2V8IehBzo4_uph-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkc36q2j0006vnt9g87h5it4",
|
||||
"name": "TXknK9CSRSxwvM2hPW6BO-desktop.webp",
|
||||
"realName": "pecalang.jpeg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/TXknK9CSRSxwvM2hPW6BO-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkccs50d0000vn2mfuk0d9dw",
|
||||
"name": "U7rePDZq5E59z-Eo9tLBe-desktop.webp",
|
||||
"realName": "tips-keamanan-1.jpg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/U7rePDZq5E59z-Eo9tLBe-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkccyh7t0003vn2mjdrqtuu0",
|
||||
"name": "TTur8BttDlAS9UgZVe3M8-desktop.webp",
|
||||
"realName": "tipskaman.jpg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/TTur8BttDlAS9UgZVe3M8-desktop.webp",
|
||||
"category": "image"
|
||||
},
|
||||
{
|
||||
"id": "cmkdu8kb20002vn4lihwo4k86",
|
||||
"name": "6DQbAvn0St-xHdPGW3vpY-desktop.webp",
|
||||
"realName": "Jamban4.jpg",
|
||||
"path": "uploads/images",
|
||||
"mimeType": "image/webp",
|
||||
"link": "/api/fileStorage/findUnique/6DQbAvn0St-xHdPGW3vpY-desktop.webp",
|
||||
"category": "image"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
[
|
||||
{
|
||||
"id": "cmkc2tcs00002vnt9c0ssj05n",
|
||||
"name": "Sosialisasi dan Pembinaan Keamanan Lingkungan Desa Darmasaba",
|
||||
"deskripsi": "<p>Pemerintah Desa Darmasaba melaksanakan Sosialisasi dan Pembinaan tentang keamanan dan ketertiban lingkungan kepada warga Perumahan Darmasaba Permai di Wantilan Perum Darmasaba Permai, Desa Darmasaba. Kegiatan ini melibatkan Perbekel Darmasaba, Bhabinkamtibmas, Babinsa, anggota BPD, LPM Desa, KBD dan KBA untuk mengajak warga berperan aktif dalam menjaga keamanan lingkungan, serta mendukung pemasangan lampu penerangan jalan guna mencegah kriminalitas dan kecelakaan di wilayah lingkungan.</p>",
|
||||
"imageId": "cmkc2tcn30000vnt9esmx8kyb"
|
||||
},
|
||||
{
|
||||
"id": "cmkc2xmdh0005vnt9ri6f4nk8",
|
||||
"name": "Sinergi Aparat dan Masyarakat untuk Keamanan Lingkungan",
|
||||
"deskripsi": "<p>Desa Darmasaba bersama aparat seperti Polres Badung dan elemen masyarakat berkomitmen menjalin sinergi untuk menciptakan keamanan dan ketertiban lingkungan yang kondusif, memperkuat kepedulian serta tindakan nyata dalam menjaga situasi kamtibmas desa.</p>",
|
||||
"imageId": "cmkc2xm1z0003vnt98682dv0a"
|
||||
},
|
||||
{
|
||||
"id": "cmkc36qbl0008vnt9odvekex6",
|
||||
"name": "Peran Sistem Keamanan Lingkungan (Siskamling) dan Pecalang di Bali",
|
||||
"deskripsi": "<p>Sistem keamanan lingkungan (Siskamling) di Bali termasuk di Desa Darmasaba melibatkan kolaborasi antara pemerintah desa, satlinmas, dan pecalang sebagai pranata adat Bali. Sinergi ini penting untuk menjaga ketertiban masyarakat serta harmoni sosial berdasarkan kearifan lokal seperti Tri Hita Karana, meskipun perlu pembinaan dan koordinasi terus menerus dari desa dan aparat terkait.</p>",
|
||||
"imageId": "cmkc36q2j0006vnt9g87h5it4"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,20 @@
|
||||
[
|
||||
{
|
||||
"id": "keamanan-polisi",
|
||||
"nama": "Kepolisian",
|
||||
"icon": "keamanan",
|
||||
"kategoriId": "item-polisi"
|
||||
},
|
||||
{
|
||||
"id": "keamanan-damkar",
|
||||
"nama": "Pemadam Kebakaran",
|
||||
"icon": "pemadam",
|
||||
"kategoriId": "item-damkar"
|
||||
},
|
||||
{
|
||||
"id": "keamanan-sar",
|
||||
"nama": "SAR & Evakuasi",
|
||||
"icon": "sar",
|
||||
"kategoriId": "item-sar"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,17 @@
|
||||
[
|
||||
{
|
||||
"id": "map-polisi-1",
|
||||
"kontakDaruratId": "keamanan-polisi",
|
||||
"kontakItemId": "item-polsek-darmasaba"
|
||||
},
|
||||
{
|
||||
"id": "map-polisi-2",
|
||||
"kontakDaruratId": "keamanan-polisi",
|
||||
"kontakItemId": "item-polres-badung"
|
||||
},
|
||||
{
|
||||
"id": "map-damkar-1",
|
||||
"kontakDaruratId": "keamanan-damkar",
|
||||
"kontakItemId": "item-damkar-badung"
|
||||
}
|
||||
]
|
||||
45
prisma/data/keamanan/kontak-darurat-keamanan/kontakItem.json
Normal file
45
prisma/data/keamanan/kontak-darurat-keamanan/kontakItem.json
Normal file
@@ -0,0 +1,45 @@
|
||||
[
|
||||
{
|
||||
"id": "item-polisi",
|
||||
"nama": "Polisi",
|
||||
"nomorTelepon": "110",
|
||||
"icon": "keamanan"
|
||||
},
|
||||
{
|
||||
"id": "item-damkar",
|
||||
"nama": "Pemadam Kebakaran",
|
||||
"nomorTelepon": "113",
|
||||
"icon": "pemadam"
|
||||
},
|
||||
{
|
||||
"id": "item-sar",
|
||||
"nama": "BASARNAS",
|
||||
"nomorTelepon": "115",
|
||||
"icon": "sar"
|
||||
},
|
||||
|
||||
{
|
||||
"id": "item-polsek-darmasaba",
|
||||
"nama": "Polsek Darmasaba",
|
||||
"nomorTelepon": "0361123456",
|
||||
"icon": "bangunan"
|
||||
},
|
||||
{
|
||||
"id": "item-polres-badung",
|
||||
"nama": "Polres Badung",
|
||||
"nomorTelepon": "0361123999",
|
||||
"icon": "bangunan"
|
||||
},
|
||||
{
|
||||
"id": "item-damkar-badung",
|
||||
"nama": "Damkar Kabupaten Badung",
|
||||
"nomorTelepon": "0361900113",
|
||||
"icon": "pemadam"
|
||||
},
|
||||
{
|
||||
"id": "item-bpbd-badung",
|
||||
"nama": "BPBD Badung",
|
||||
"nomorTelepon": "0361900113",
|
||||
"icon": "sar"
|
||||
}
|
||||
]
|
||||
16
prisma/data/keamanan/laporan-publik/laporan-publik.json
Normal file
16
prisma/data/keamanan/laporan-publik/laporan-publik.json
Normal file
@@ -0,0 +1,16 @@
|
||||
[
|
||||
{
|
||||
"id": "cmkdt14my0000vn4lrvfv6jxr",
|
||||
"judul": "LAPORAN REALISASI APBDES SEMESTER I TAHUN ANGGARAN 2025",
|
||||
"lokasi": "Desa Darmasaba, Kecamatan Abiansemal, Kabupaten Badung",
|
||||
"tanggalWaktu": "2025-08-04T08:58:55.080Z",
|
||||
"kronologi": "<p>Pemerintah Desa Darmasaba menyampaikan realisasi pendapatan dan belanja desa hingga semester I tahun 2025 yang mencakup berbagai sumber pendapatan dan rincian belanja desa.</p>"
|
||||
},
|
||||
{
|
||||
"id": "cmkdt14my0000vn4lrvfv7kys",
|
||||
"judul": "Aksi Penanganan Maraknya Pembuangan Sampah Liar di Wilayah Desa Darmasaba",
|
||||
"lokasi": "Desa Darmasaba, Kabupaten Badung",
|
||||
"tanggalWaktu": "2025-11-24T08:58:55.080Z",
|
||||
"kronologi": "<p>Tim mendatangi rumah pihak yang diduga melakukan pembuangan sampah liar, melakukan pendataan dan penelusuran, serta koordinasi lintas wilayah untuk memastikan penanganan yang tepat.</p>"
|
||||
}
|
||||
]
|
||||
12
prisma/data/keamanan/laporan-publik/penanganan-laporan.json
Normal file
12
prisma/data/keamanan/laporan-publik/penanganan-laporan.json
Normal file
@@ -0,0 +1,12 @@
|
||||
[
|
||||
{
|
||||
"id": "cmkdt41lx0001vn4lrlcqz735",
|
||||
"laporanId": "cmkdt14my0000vn4lrvfv6jxr",
|
||||
"deskripsi": "<p>Laporan ini disampaikan sebagai bentuk komitmen transparansi pengelolaan keuangan desa dan dapat dimonitor oleh masyarakat.</p>"
|
||||
},
|
||||
{
|
||||
"id": "cmkdt41lx0002vn4lrlcqz846",
|
||||
"laporanId": "cmkdt14my0000vn4lrvfv7kys",
|
||||
"deskripsi": "<p>Pemerintah Desa bersama Penyidik Lingkungan Hidup melakukan investigasi lapangan terhadap laporan masyarakat mengenai aksi pembuangan sampah liar, serta melakukan koordinasi untuk penindakan sesuai ketentuan.</p>"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,23 @@
|
||||
[
|
||||
{
|
||||
"id": "cmh48mn850003qq091pvs7rf1",
|
||||
"judul": "Maling Motor di Darmasaba, Residivis Begal Didor",
|
||||
"deskripsi": "<p>Maling Motor di Darmasaba, Residivis Begal Didor David Andiansyah kembali terancam dibui lantaran melakukan aksi pencurian.</p>",
|
||||
"deskripsiSingkat": "<p>Maling Motor di Darmasaba, Residivis Begal Didor David Andiansyah kembali terancam dibui lantaran melakukan aksi pencurian. Mantan narapidana kasus begal ini diciduk polisi usai mencuri sepeda motor di garase rumah, kawasan Banjar Cabe, Desa Darmasaba, Abiansemal, Badung, Kamis (24/6). Kasi Humas Polres Badung Iptu Ketut Sudana menerangkan, peristiwa tersebut bermula ketika korban Ni Made Desniari berkunjung ke rumah tetangganya Putu Juliati. Saat itu korban memarkirkan sepeda motor Honda Beat miliknya di garase (TKP), tetapi kunci motornya masih nyantol di motor. Ketika korban kembali sekitar pukul 13.00, didapati motornya telah raib. Atas kejadian ini wanita asli Banjar Cabe melapor ke polisi.</p>",
|
||||
"linkVideo": "https://www.youtube.com/embed/2rxK5A-KoeY"
|
||||
},
|
||||
{
|
||||
"id": "cmh59no850003qq091pvs7rf1",
|
||||
"judul": "Integrasi Digital & Akuntabilitas Desa (Pencegahan Penyalahgunaan Wewenang)",
|
||||
"deskripsi": "<p>Video ini membahas bagaimana integrasi digital seperti Simpades, Siskeudes, dan program Jaga Desa memperkuat akuntabilitas pemerintahan desa Darmasaba. Program tersebut mendukung transparansi dan pencegahan tindak pidana administrasi maupun penyalahgunaan wewenang karena tata kelola data desa yang baik membantu mencegah korupsi atau kecurangan dalam pengelolaan dana dan layanan desa.</p>",
|
||||
"deskripsiSingkat": "<p>Integrasi digital meningkatkan transparansi dan mencegah penyalahgunaan wewenang di pemerintahan desa.</p>",
|
||||
"linkVideo": "https://www.youtube.com/embed/l7NIqjA2b_k"
|
||||
},
|
||||
{
|
||||
"id": "cmh60op850003qq091pvs7rf1",
|
||||
"judul": "PROFIL DESA DARMASABA",
|
||||
"deskripsiSingkat": "PROFIL DESA DARMASABA Desa Darmasaba adalah permata di ujung selatan Kecamatan Abiansemal, Kabupaten Badung",
|
||||
"deskripsi": "<p>PROFIL DESA DARMASABA Desa Darmasaba adalah permata di ujung selatan Kecamatan Abiansemal, Kabupaten Badung, yang dikenal dengan kekayaan budaya, inovasi desa, dan potensi ekonomi yang terus berkembang. Berbatasan langsung dengan Kota Denpasar, Desa Darmasaba memiliki luas wilayah 567 hektar dengan jumlah penduduk 10.141 jiwa (per akhir Desember 2024). Video ini menampilkan potensi dan keunggulan Desa Darmasaba: 🏞️ Keindahan alam dan kawasan persawahan yang dikelola empat subak aktif. 🍽️ Keberhasilan UMKM dan kuliner lokal, termasuk produk unggulan ACK yang merambah pasar nasional. 🌱 Inovasi ketahanan pangan, pengolahan sampah ramah lingkungan (TPS3R Pudak Mesari, CINTA Darmasaba), hingga Graha Sari Boga dengan program makan bergizi gratis. 🎭 Pelestarian seni, budaya, dan tradisi, termasuk maskot Sekar Pudak dan tradisi Ngerebeg. 🏆 Prestasi desa tingkat nasional dan internasional. 📱 Transformasi digital dengan aplikasi Darmasaba Digital App, talkshow Bicara Darmasaba, hingga perpustakaan digital Pustaka Ananta Loka. Dengan motto \\\"Menggali Warisan, Merangkai Inovasi\\\", Desa Darmasaba menghadirkan 13 inovasi unggulan di bidang pemerintahan, kewilayahan, UMKM, dan kemasyarakatan. Desa ini membuktikan bahwa kolaborasi masyarakat dan pemerintah mampu mewujudkan desa yang mandiri, berdaya saing, dan berkelanjutan. 🎥 Produksi: Tim Media Kreatif Desa Darmasaba 🤝 Dukungan: Seluruh Lembaga & Elemen Masyarakat Desa Darmasaba</p>",
|
||||
"linkVideo": "https://www.youtube.com/watch?v=9eCnhJvdv6A"
|
||||
}
|
||||
]
|
||||
14
prisma/data/keamanan/polsek-terdekat/layanan-polsek.json
Normal file
14
prisma/data/keamanan/polsek-terdekat/layanan-polsek.json
Normal file
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"id": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478",
|
||||
"nama": "Layanan Administrasi & Surat-Menyurat"
|
||||
},
|
||||
{
|
||||
"id": "b5af284c-6aa1-4442-935f-869d78eb7ecf",
|
||||
"nama": "Penanganan Laporan & Pengaduan"
|
||||
},
|
||||
{
|
||||
"id": "56b37d7f-d717-4e33-b05d-ea22b5f7af91",
|
||||
"nama": "Perlindungan & Pengayoman Masyarakat"
|
||||
}
|
||||
]
|
||||
62
prisma/data/keamanan/polsek-terdekat/layanan-to-polsek.json
Normal file
62
prisma/data/keamanan/polsek-terdekat/layanan-to-polsek.json
Normal file
@@ -0,0 +1,62 @@
|
||||
[
|
||||
{
|
||||
"id": "a50d52f2-e70f-4f29-9133-e294c40d14d3",
|
||||
"layananId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478",
|
||||
"polsekTerdekatId": "b92ee048-fb7f-44e9-aa5b-822e6cd0085d"
|
||||
},
|
||||
{
|
||||
"id": "012454f8-f5d7-41c0-9dce-2754c0356523",
|
||||
"layananId": "b5af284c-6aa1-4442-935f-869d78eb7ecf",
|
||||
"polsekTerdekatId": "b92ee048-fb7f-44e9-aa5b-822e6cd0085d"
|
||||
},
|
||||
{
|
||||
"id": "50736038-4ba6-47f8-8399-35b73b389f12",
|
||||
"layananId": "56b37d7f-d717-4e33-b05d-ea22b5f7af91",
|
||||
"polsekTerdekatId": "b92ee048-fb7f-44e9-aa5b-822e6cd0085d"
|
||||
},
|
||||
{
|
||||
"id": "e2dc3487-1f62-4f63-9a12-49ac30da3372",
|
||||
"layananId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478",
|
||||
"polsekTerdekatId": "de769c40-10d4-4fbc-a5ef-12f2ce53a0a2"
|
||||
},
|
||||
{
|
||||
"id": "47fe1f9c-4072-4203-90f9-3294d1369ac5",
|
||||
"layananId": "b5af284c-6aa1-4442-935f-869d78eb7ecf",
|
||||
"polsekTerdekatId": "de769c40-10d4-4fbc-a5ef-12f2ce53a0a2"
|
||||
},
|
||||
{
|
||||
"id": "2cc1ba81-6b62-42ff-af21-09f8165a2dd0",
|
||||
"layananId": "56b37d7f-d717-4e33-b05d-ea22b5f7af91",
|
||||
"polsekTerdekatId": "de769c40-10d4-4fbc-a5ef-12f2ce53a0a2"
|
||||
},
|
||||
{
|
||||
"id": "3ca2ce42-2e7d-4750-87b7-f1f52ed141de",
|
||||
"layananId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478",
|
||||
"polsekTerdekatId": "9a3fff54-8854-4929-b9b5-b5b2751011ea"
|
||||
},
|
||||
{
|
||||
"id": "90472bca-cf3d-47ca-92e5-db43c4c7e579",
|
||||
"layananId": "b5af284c-6aa1-4442-935f-869d78eb7ecf",
|
||||
"polsekTerdekatId": "9a3fff54-8854-4929-b9b5-b5b2751011ea"
|
||||
},
|
||||
{
|
||||
"id": "41cfc1fe-a193-446d-b574-64b1124c6f55",
|
||||
"layananId": "56b37d7f-d717-4e33-b05d-ea22b5f7af91",
|
||||
"polsekTerdekatId": "9a3fff54-8854-4929-b9b5-b5b2751011ea"
|
||||
},
|
||||
{
|
||||
"id": "f35443e1-6aca-416d-8c55-00e3f4a0f5f9",
|
||||
"layananId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478",
|
||||
"polsekTerdekatId": "c2d272e1-737d-44f5-bd85-ae268cb06cbf"
|
||||
},
|
||||
{
|
||||
"id": "e09797f6-82e5-4b77-946e-319eee431c8f",
|
||||
"layananId": "b5af284c-6aa1-4442-935f-869d78eb7ecf",
|
||||
"polsekTerdekatId": "c2d272e1-737d-44f5-bd85-ae268cb06cbf"
|
||||
},
|
||||
{
|
||||
"id": "bd9b1f27-cd1b-4e23-b162-3a757745f78a",
|
||||
"layananId": "56b37d7f-d717-4e33-b05d-ea22b5f7af91",
|
||||
"polsekTerdekatId": "c2d272e1-737d-44f5-bd85-ae268cb06cbf"
|
||||
}
|
||||
]
|
||||
54
prisma/data/keamanan/polsek-terdekat/polsek-terdekat.json
Normal file
54
prisma/data/keamanan/polsek-terdekat/polsek-terdekat.json
Normal file
@@ -0,0 +1,54 @@
|
||||
[
|
||||
{
|
||||
"id": "b92ee048-fb7f-44e9-aa5b-822e6cd0085d",
|
||||
"nama": "Kantor Polisi Abian Semal",
|
||||
"jarakKeDesa": "9,6 Km",
|
||||
"alamat": "ABIAN SEMAL POLICE STAT, JL. Pasar, Blahkiuh, Kec. Abiansemal, Kabupaten Badung, Bali 80352",
|
||||
"nomorTelepon": "0361813972",
|
||||
"jamOperasional": "Buka 24 Jam",
|
||||
"embedMapUrl": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d63127.118683990586!2d115.16592643905703!3d-8.553143643198624!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x2dd23ceb4f6e5363%3A0xa353662f070f47d8!2sAbian%20Semal%20Police%20Station!5e0!3m2!1sid!2sid!4v1768376981008!5m2!1sid!2sid",
|
||||
"namaTempatMaps": "Abian Semal Police Station",
|
||||
"alamatMaps": "ABIAN SEMAL POLICE STAT, JL. Pasar, Blahkiuh, Kec. Abiansemal, Kabupaten Badung, Bali 80352",
|
||||
"linkPetunjukArah": "https://maps.app.goo.gl/GhHVNQqffNrXSMFX7",
|
||||
"layananPolsekId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478"
|
||||
},
|
||||
{
|
||||
"id": "de769c40-10d4-4fbc-a5ef-12f2ce53a0a2",
|
||||
"nama": "Polres Badung",
|
||||
"jarakKeDesa": "5,8 Km",
|
||||
"alamat": "Jl. Kebo Iwa No.1, Mengwitani, Kec. Mengwi, Kabupaten Badung, Bali 80351",
|
||||
"nomorTelepon": "0361829949",
|
||||
"jamOperasional": "Buka 24 Jam",
|
||||
"embedMapUrl": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d15780.907469872707!2d115.17829950197888!3d-8.574172113520685!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x2dd238cade1488c3%3A0x918ba5cac3ef00b7!2sPolres%20Badung!5e0!3m2!1sid!2sid!4v1768377100998!5m2!1sid!2sid",
|
||||
"namaTempatMaps": "Polres Badung",
|
||||
"alamatMaps": "Jl. Kebo Iwa No.1, Mengwitani, Kec. Mengwi, Kabupaten Badung, Bali 80351",
|
||||
"linkPetunjukArah": "https://maps.app.goo.gl/7yQQod4PFhpqqe7Z8",
|
||||
"layananPolsekId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478"
|
||||
},
|
||||
{
|
||||
"id": "9a3fff54-8854-4929-b9b5-b5b2751011ea",
|
||||
"nama": "Polsek Mengwi",
|
||||
"jarakKeDesa": "9,7 Km",
|
||||
"alamat": "Jl. I Gusti Ngurah Rai No.110, Werdi Bhuwana, Kec. Mengwi, Kabupaten Badung, Bali 80351",
|
||||
"nomorTelepon": "0361411270",
|
||||
"jamOperasional": "Buka 24 Jam",
|
||||
"embedMapUrl": "https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d63126.100310757916!2d115.1716545!3d-8.5592871!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x2dd23b9ddc3980af%3A0xa1f4f195483537b!2sPolsek%20Mengwi!5e0!3m2!1sid!2sid!4v1768377317955!5m2!1sid!2sid",
|
||||
"namaTempatMaps": "Polsek Mengwi",
|
||||
"alamatMaps": "Jl. I Gusti Ngurah Rai No.110, Werdi Bhuwana, Kec. Mengwi, Kabupaten Badung, Bali 80351",
|
||||
"linkPetunjukArah": "https://maps.app.goo.gl/cJD44NSUdpA7Ly2m6",
|
||||
"layananPolsekId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478"
|
||||
},
|
||||
{
|
||||
"id": "c2d272e1-737d-44f5-bd85-ae268cb06cbf",
|
||||
"nama": "Pos Polisi Ahmad Yani",
|
||||
"jarakKeDesa": "7 Km",
|
||||
"alamat": "Jl. Ahmad Yani Utara No.5, Peguyangan, Kec. Denpasar Utara, Kota Denpasar, Bali 80239",
|
||||
"nomorTelepon": "-",
|
||||
"jamOperasional": "-",
|
||||
"embedMapUrl": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d31558.650325984465!2d115.18791122296605!3d-8.612190901728288!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x2dd23f635f1186b1%3A0xcfdde508d897fb04!2sPos%20Polisi%20Simpang%20Ahmad%20Yani!5e0!3m2!1sid!2sid!4v1768377470154!5m2!1sid!2sid",
|
||||
"namaTempatMaps": "Pos Polisi Simpang Ahmad Yani",
|
||||
"alamatMaps": "Jl. Ahmad Yani Utara No.5, Peguyangan, Kec. Denpasar Utara, Kota Denpasar, Bali 80239",
|
||||
"linkPetunjukArah": "https://maps.app.goo.gl/D8HGs4mSAQqJm9KRA",
|
||||
"layananPolsekId": "7ded635b-bf4a-4c1b-b6fa-2f13f4dfc478"
|
||||
}
|
||||
]
|
||||
14
prisma/data/keamanan/tips-keamanan/tips-keamanan.json
Normal file
14
prisma/data/keamanan/tips-keamanan/tips-keamanan.json
Normal file
@@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"id": "cmh48wo9c0006qq09txnxusql",
|
||||
"judul": "Keamanan Rumah",
|
||||
"deskripsi": "<p><ul><li><p>Pastikan pintu dan jendela selalu terkunci saat meninggalkan rumah</p></li><li><p>Pasang lampu penerangan di halaman dan area sekitar rumah untuk mencegah tindak kejahatan.</p></li><li><p>Jangan mudah memberikan akses masuk ke orang yang tidak dikenal.</p></li></ul></p>",
|
||||
"imageId": "cmkccs50d0000vn2mfuk0d9dw"
|
||||
},
|
||||
{
|
||||
"id": "cmh48wo9c1117rr10txnxusql",
|
||||
"judul": "Keamanan Lingkungan Tanggungjawab Bersama",
|
||||
"deskripsi": "<p>Pemerintah Desa Darmasaba melaksanakan sosialisasi dan pembinaan tentang keamanan dan ketertiban lingkungan kepada warga Perumahan Darmasaba Permai. Warga diajak berperan aktif dalam menjaga keamanan lingkungan serta mendukung penyediaan lampu penerangan jalan untuk mencegah tindak kriminal dan kecelakaan. Bhabinkamtibmas dan Babinsa turut memberikan materi keamanan dan ketertiban kepada warga, menekankan pentingnya partisipasi masyarakat dalam menjaga keamanan desa.</p>",
|
||||
"imageId": "cmkccyh7t0003vn2mjdrqtuu0"
|
||||
}
|
||||
]
|
||||
@@ -40,5 +40,12 @@
|
||||
"deskripsiSingkat": "<p>Program pembinaan dan pengembangan kapasitas kader Posyandu.</p>",
|
||||
"deskripsi": "<p>Pemdes Darmasaba melaksanakan kegiatan Outbound Posyandu untuk meningkatkan kapasitas dan wawasan Kader Posyandu se-Desa Darmasaba sebagai bagian dari upaya peningkatan kualitas pelayanan kesehatan dasar di masyarakat.</p>",
|
||||
"imageId": "cmkaykipf0019vn6yknjno3k1"
|
||||
},
|
||||
{
|
||||
"id": "cmkdu8ki10004vn4lpbxm2zqo",
|
||||
"name": "PEMBANGUNAN JAMBAN BAGI MASYARAKAT",
|
||||
"deskripsiSingkat": "<p>Program pengadaan jamban bagi Masyarakat ini diharapkan menjadi stimulus agar masyarakat peduli terhadap lingkungan sehat sehingga Badung Open Defection Free atau terbebas dari buang air besar di tempat terbuka dapat terwujud.</p>",
|
||||
"deskripsi": "<p>Desa Darmasaba sebagai desa yang berkomitmen selalu selaras dengan pembangunan Pemerintah Kabupaten Badung pada tahun anggaran 2023 ini turut ambil bagian dalam menyukseskan program Bupati Badung I Nyoman Giri Prasta, S.Sos dalam bidang kesehatan sanitasi masyarakat. Program pengadaan jamban bagi Masyarakat ini diharapkan menjadi stimulus agar masyarakat peduli terhadap lingkungan sehat sehingga Badung Open Defection Free atau terbebas dari buang air besar di tempat terbuka dapat terwujud.</p><p style=\"text-align: justify\">Pemberian bantuan jamban ini dilaksanakan di 11 banjar dengan menyasar 22 keluarga yang memang belum memiliki jamban yang sumber dananya sepenuhnya dari APBDes Darmasaba T. A. 2023. Pembangunan Jamban bagi Masyarakat ini juga menjadi bukti komitmen Pemerintah Desa Darmasaba dalam melaksanakan salah satu visi mewujudkan masyarakat yang sejahtera dan berbudaya untuk menjaga lingkungan yang bersih dan sehat.</p>",
|
||||
"imageId": "cmkdu8kb20002vn4lihwo4k86"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -607,7 +607,7 @@ model Berita {
|
||||
id String @id @default(cuid())
|
||||
judul String
|
||||
deskripsi String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
content String @db.Text
|
||||
createdAt DateTime @default(now())
|
||||
@@ -1113,17 +1113,17 @@ model DoctorSign {
|
||||
|
||||
// ========================================= POSYANDU ========================================= //
|
||||
model Posyandu {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
nomor String
|
||||
deskripsi String
|
||||
jadwalPelayanan String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= PUSKESMAS ========================================= //
|
||||
@@ -1133,12 +1133,12 @@ model Puskesmas {
|
||||
alamat String
|
||||
jam JamOperasional @relation(fields: [jamId], references: [id])
|
||||
jamId String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
kontak KontakPuskesmas @relation(fields: [kontakId], references: [id])
|
||||
kontakId String
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
@@ -1170,57 +1170,57 @@ model KontakPuskesmas {
|
||||
|
||||
// ========================================= PROGRAM KESSEHATAN ========================================= //
|
||||
model ProgramKesehatan {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
deskripsiSingkat String
|
||||
deskripsi String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= PENANGANAN DARURAT ========================================= //
|
||||
model PenangananDarurat {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
deskripsi String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= KONTAK DARURAT ========================================= //
|
||||
model KontakDarurat {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
deskripsi String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
whatsapp String
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= INFO WABAH PENYAKIT ========================================= //
|
||||
model InfoWabahPenyakit {
|
||||
id String @id @default(cuid())
|
||||
id String @id @default(cuid())
|
||||
name String
|
||||
deskripsiSingkat String
|
||||
deskripsiLengkap String
|
||||
image FileStorage? @relation(fields: [imageId], references: [id])
|
||||
imageId String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= MENU KEAMANAN ========================================= //
|
||||
@@ -1239,7 +1239,7 @@ model KeamananLingkungan {
|
||||
|
||||
// ========================================= POLSEK TERDEKAT ========================================= //
|
||||
model PolsekTerdekat {
|
||||
id String @id @default(uuid())
|
||||
id String @id @default(uuid())
|
||||
nama String
|
||||
jarakKeDesa String
|
||||
alamat String
|
||||
@@ -1249,22 +1249,36 @@ model PolsekTerdekat {
|
||||
namaTempatMaps String
|
||||
alamatMaps String
|
||||
linkPetunjukArah String
|
||||
layananPolsek LayananPolsek @relation(fields: [layananPolsekId], references: [id])
|
||||
layananPolsek LayananPolsek @relation(fields: [layananPolsekId], references: [id])
|
||||
layananPolsekId String
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
LayananToPolsek LayananToPolsek[]
|
||||
}
|
||||
|
||||
model LayananPolsek {
|
||||
id String @id @default(uuid())
|
||||
nama String // contoh: "Pelayanan SKCK", "Laporan Kriminal"
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime?
|
||||
isActive Boolean @default(true)
|
||||
PolsekTerdekat PolsekTerdekat[]
|
||||
id String @id @default(uuid())
|
||||
nama String // contoh: "Pelayanan SKCK", "Laporan Kriminal"
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime?
|
||||
isActive Boolean @default(true)
|
||||
PolsekTerdekat PolsekTerdekat[]
|
||||
LayananToPolsek LayananToPolsek[]
|
||||
}
|
||||
|
||||
model LayananToPolsek {
|
||||
id String @id @default(uuid())
|
||||
layanan LayananPolsek @relation(fields: [layananId], references: [id])
|
||||
layananId String
|
||||
polsekTerdekat PolsekTerdekat @relation(fields: [polsekTerdekatId], references: [id])
|
||||
polsekTerdekatId String
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
isActive Boolean @default(true)
|
||||
}
|
||||
|
||||
// ========================================= KONTAK DARURAT ========================================= //
|
||||
@@ -1377,6 +1391,7 @@ model PasarDesa {
|
||||
rating Float
|
||||
alamatUsaha String
|
||||
kontak String
|
||||
deskripsi String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
deletedAt DateTime @default(now())
|
||||
|
||||
546
prisma/seed.ts
546
prisma/seed.ts
@@ -34,17 +34,35 @@ import perbekelDariMasaKeMasa from "./data/desa/profile/profile-perbekel-lalu.js
|
||||
import sejarahDesa from "./data/desa/profile/sejarah_desa.json";
|
||||
import visiMisiDesa from "./data/desa/profile/visi_misi_desa.json";
|
||||
import detailDataPengangguran from "./data/ekonomi/jumlah-pengangguran/detail-data-pengangguran.json";
|
||||
import kategoriProduk from "./data/ekonomi/pasar-desa/kategori-produk.json";
|
||||
import pegawai from "./data/ekonomi/struktur-organisasi/pegawai-bumdes.json";
|
||||
import posisiOrganisasi from "./data/ekonomi/struktur-organisasi/posisi-organisasi-bumdes.json";
|
||||
import posyandu from "./data/kesehatan/posyandu/posyandu.json";
|
||||
import kontakPuskesmas from "./data/kesehatan/puskesmas/kontak-puskesmas/kontak.json"
|
||||
import jamPuskesmas from "./data/kesehatan/puskesmas/jam-puskesmas/jam.json"
|
||||
import kontakPuskesmas from "./data/kesehatan/puskesmas/kontak-puskesmas/kontak.json";
|
||||
import jamPuskesmas from "./data/kesehatan/puskesmas/jam-puskesmas/jam.json";
|
||||
import puskesmas from "./data/kesehatan/puskesmas/puskesmas.json";
|
||||
import programKesehatan from "./data/kesehatan/program-kesehatan/program-kesehatan.json"
|
||||
import penangananDarurat from "./data/kesehatan/penanganan-darurat/penganan-darurat.json"
|
||||
import kontakDarurat from "./data/kesehatan/kontak-darurat/kontak-darurat.json"
|
||||
import infoWabahPenyakit from "./data/kesehatan/infowabahpenyakit/infowabahpenyakit.json"
|
||||
import programKesehatan from "./data/kesehatan/program-kesehatan/program-kesehatan.json";
|
||||
import penangananDarurat from "./data/kesehatan/penanganan-darurat/penganan-darurat.json";
|
||||
import kontakDarurat from "./data/kesehatan/kontak-darurat/kontak-darurat.json";
|
||||
import infoWabahPenyakit from "./data/kesehatan/infowabahpenyakit/infowabahpenyakit.json";
|
||||
import keamananLingkungan from "./data/keamanan/keamanan-lingkungan/keamanan-lingkungan.json";
|
||||
import kontakDaruratKeamanan from "./data/keamanan/kontak-darurat-keamanan/kontak-darurat-keamanan.json";
|
||||
import kontakItem from "./data/keamanan/kontak-darurat-keamanan/kontakItem.json";
|
||||
import kontakDaruratToItem from "./data/keamanan/kontak-darurat-keamanan/kontakDaruratToItem.json";
|
||||
import pencegahanKriminalitas from "./data/keamanan/pencegahan-kriminalitas/pencegahan-kriminalitas.json";
|
||||
import tipsKeamanan from "./data/keamanan/tips-keamanan/tips-keamanan.json";
|
||||
import polsekTerdekat from "./data/keamanan/polsek-terdekat/polsek-terdekat.json";
|
||||
import layananPolsek from "./data/keamanan/polsek-terdekat/layanan-polsek.json";
|
||||
import layananToPolsek from "./data/keamanan/polsek-terdekat/layanan-to-polsek.json";
|
||||
import penangananLaporan from "./data/keamanan/laporan-publik/penanganan-laporan.json";
|
||||
import laporanPublik from "./data/keamanan/laporan-publik/laporan-publik.json";
|
||||
import pasarDesa from "./data/ekonomi/pasar-desa/pasar-desa.json";
|
||||
import kategoriProduk from "./data/ekonomi/pasar-desa/kategori-produk.json";
|
||||
import kategoriToPasar from "./data/ekonomi/pasar-desa/kategori-to-pasar.json";
|
||||
import lowonganKerjaLokal from "./data/ekonomi/lowongan-kerja-lokal/lowongan-kerja-lokal.json";
|
||||
import demografiPekerjaan from "./data/ekonomi/demografi-pekerjaan/demografi-pekerjaan.json";
|
||||
import sektorUnggulanDesa from "./data/ekonomi/sektor-unggulan/sektor-unggulan.json";
|
||||
import programKemiskinan from "./data/ekonomi/program-kemiskinan/program-kemiskinan.json";
|
||||
import statistikKemiskinan from "./data/ekonomi/program-kemiskinan/statistik-kemiskinan.json";
|
||||
import berita from "./data/desa/berita/berita.json";
|
||||
import kategoriBerita from "./data/desa/berita/kategori-berita.json";
|
||||
import contohEdukasiLingkungan from "./data/lingkungan/edukasi-lingkungan/contoh-kegiatan-di-desa-darmasaba.json";
|
||||
@@ -1239,22 +1257,6 @@ import resolveImageById from "./resolveImageByName";
|
||||
}
|
||||
console.log("penghargaan success ...");
|
||||
|
||||
for (const k of kategoriProduk) {
|
||||
await prisma.kategoriProduk.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
nama: k.nama,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
nama: k.nama,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("kategori produk success ...");
|
||||
|
||||
const flattenedPosisiBumdes = posisiOrganisasi.flat();
|
||||
|
||||
// ====================== MENU KESEHATAN ========================
|
||||
@@ -1496,7 +1498,7 @@ import resolveImageById from "./resolveImageByName";
|
||||
}
|
||||
console.log("penanganan darurat success ...");
|
||||
|
||||
// ==================== SUBMENU KONTAK DARURAT =========================
|
||||
// ==================== SUBMENU KONTAK DARURAT =========================
|
||||
console.log("🔄 Seeding Kontak Darurat...");
|
||||
for (const p of kontakDarurat) {
|
||||
const existing = await prisma.kontakDarurat.findUnique({
|
||||
@@ -1544,7 +1546,7 @@ import resolveImageById from "./resolveImageByName";
|
||||
}
|
||||
console.log("kontak darurat success ...");
|
||||
|
||||
// ==================== SUBMENU INFO WABAH PENYAKIT =========================
|
||||
// ==================== SUBMENU INFO WABAH PENYAKIT =========================
|
||||
console.log("🔄 Seeding Info Wabah Penyakit...");
|
||||
for (const p of infoWabahPenyakit) {
|
||||
const existing = await prisma.infoWabahPenyakit.findUnique({
|
||||
@@ -1590,9 +1592,406 @@ import resolveImageById from "./resolveImageByName";
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("kontak darurat success ...");
|
||||
console.log("info wabah penyakit success ...");
|
||||
|
||||
// ✅ Urutkan berdasarkan hierarki
|
||||
// ====================== MENU KEAMANAN ========================
|
||||
// ==================== SUBMENU KEAMANAN LINGKUNGAN ============
|
||||
console.log("🔄 Seeding Keamanan Lingkungan...");
|
||||
for (const k of keamananLingkungan) {
|
||||
const existing = await prisma.keamananLingkungan.findUnique({
|
||||
where: { id: k.id },
|
||||
select: { imageId: true },
|
||||
});
|
||||
|
||||
let imageId = existing?.imageId; // Pertahankan existing
|
||||
|
||||
// Kalau belum ada imageId, cari berdasarkan name/realName
|
||||
if (!imageId && k.imageId) {
|
||||
// ✅ Cari langsung berdasarkan ID yang ada di p.imageId
|
||||
const fileRecord = await prisma.fileStorage.findUnique({
|
||||
where: { id: k.imageId },
|
||||
select: { id: true, name: true },
|
||||
});
|
||||
|
||||
if (fileRecord) {
|
||||
imageId = fileRecord.id;
|
||||
console.log(
|
||||
`✅ Found file by ID: ${fileRecord.name} (${fileRecord.id})`
|
||||
);
|
||||
} else {
|
||||
console.warn(`⚠️ File with ID ${k.imageId} not found for ${k.name}`);
|
||||
imageId = null;
|
||||
}
|
||||
}
|
||||
|
||||
await prisma.keamananLingkungan.upsert({
|
||||
where: { id: k.id },
|
||||
update: {
|
||||
name: k.name,
|
||||
deskripsi: k.deskripsi,
|
||||
imageId,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
name: k.name,
|
||||
deskripsi: k.deskripsi,
|
||||
imageId,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("info wabah penyakit success ...");
|
||||
|
||||
// ==================== SUBMENU POLSEK TERDEKAT ================
|
||||
console.log("🔄 Seeding Polsek Terdekat...");
|
||||
for (const k of polsekTerdekat) {
|
||||
await prisma.polsekTerdekat.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
nama: k.nama,
|
||||
jarakKeDesa: k.jarakKeDesa,
|
||||
alamat: k.alamat,
|
||||
nomorTelepon: k.nomorTelepon,
|
||||
jamOperasional: k.jamOperasional,
|
||||
embedMapUrl: k.embedMapUrl,
|
||||
namaTempatMaps: k.namaTempatMaps,
|
||||
alamatMaps: k.alamatMaps,
|
||||
linkPetunjukArah: k.linkPetunjukArah,
|
||||
layananPolsekId: k.layananPolsekId,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
nama: k.nama,
|
||||
jarakKeDesa: k.jarakKeDesa,
|
||||
alamat: k.alamat,
|
||||
nomorTelepon: k.nomorTelepon,
|
||||
jamOperasional: k.jamOperasional,
|
||||
embedMapUrl: k.embedMapUrl,
|
||||
namaTempatMaps: k.namaTempatMaps,
|
||||
alamatMaps: k.alamatMaps,
|
||||
linkPetunjukArah: k.linkPetunjukArah,
|
||||
layananPolsekId: k.layananPolsekId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("polsek terdekat success ...");
|
||||
|
||||
console.log("🔄 Seeding Layanan Polsek...");
|
||||
for (const k of layananPolsek) {
|
||||
await prisma.layananPolsek.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
nama: k.nama,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
nama: k.nama,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("layanan polsek success ...");
|
||||
|
||||
console.log("🔄 Seeding Layanan To Polsek...");
|
||||
for (const k of layananToPolsek) {
|
||||
await prisma.layananToPolsek.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
layananId: k.layananId,
|
||||
polsekTerdekatId: k.polsekTerdekatId,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
layananId: k.layananId,
|
||||
polsekTerdekatId: k.polsekTerdekatId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("layanan to polsek success ...");
|
||||
|
||||
// ==================== SUBMENU KONTAK DARURAT =================
|
||||
|
||||
console.log("🔄 Seeding Kontak Item...");
|
||||
for (const e of kontakItem) {
|
||||
await prisma.kontakItem.upsert({
|
||||
where: {
|
||||
id: e.id,
|
||||
},
|
||||
update: {
|
||||
nama: e.nama,
|
||||
icon: e.icon,
|
||||
nomorTelepon: e.nomorTelepon,
|
||||
},
|
||||
create: {
|
||||
id: e.id, // ✅ WAJIB
|
||||
nama: e.nama,
|
||||
icon: e.icon,
|
||||
nomorTelepon: e.nomorTelepon,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Kontak Item seeded successfully");
|
||||
|
||||
console.log("🔄 Seeding Kontak Darurat Keamanan...");
|
||||
for (const d of kontakDaruratKeamanan) {
|
||||
await prisma.kontakDaruratKeamanan.upsert({
|
||||
where: {
|
||||
id: d.id,
|
||||
},
|
||||
update: {
|
||||
nama: d.nama,
|
||||
icon: d.icon,
|
||||
kategoriId: d.kategoriId,
|
||||
},
|
||||
create: {
|
||||
id: d.id,
|
||||
nama: d.nama,
|
||||
icon: d.icon,
|
||||
kategoriId: d.kategoriId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("✅ Kontak Darurat Keamanan seeded successfully");
|
||||
|
||||
console.log("🔄 Seeding Kontak Darurat To Item...");
|
||||
for (const f of kontakDaruratToItem) {
|
||||
// ✅ Validasi foreign keys
|
||||
const kontakDaruratExists = await prisma.kontakDaruratKeamanan.findUnique({
|
||||
where: { id: f.kontakDaruratId },
|
||||
});
|
||||
|
||||
const kontakItemExists = await prisma.kontakItem.findUnique({
|
||||
where: { id: f.kontakItemId },
|
||||
});
|
||||
|
||||
if (!kontakDaruratExists) {
|
||||
console.warn(
|
||||
`⚠️ KontakDarurat ${f.kontakDaruratId} not found, skipping...`
|
||||
);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!kontakItemExists) {
|
||||
console.warn(`⚠️ KontakItem ${f.kontakItemId} not found, skipping...`);
|
||||
continue;
|
||||
}
|
||||
|
||||
await prisma.kontakDaruratToItem.upsert({
|
||||
where: { id: f.id },
|
||||
update: {
|
||||
kontakDaruratId: f.kontakDaruratId,
|
||||
kontakItemId: f.kontakItemId,
|
||||
},
|
||||
create: {
|
||||
id: f.id,
|
||||
kontakDaruratId: f.kontakDaruratId,
|
||||
kontakItemId: f.kontakItemId,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Kontak Darurat To Item seeded successfully");
|
||||
|
||||
// ==================== SUBMENU PENCEGAHAN KRIMINALITAS ========
|
||||
console.log("🔄 Seeding Pencegahan Kriminalitas...");
|
||||
for (const d of pencegahanKriminalitas) {
|
||||
await prisma.pencegahanKriminalitas.upsert({
|
||||
where: {
|
||||
id: d.id,
|
||||
},
|
||||
update: {
|
||||
judul: d.judul,
|
||||
deskripsi: d.deskripsi,
|
||||
deskripsiSingkat: d.deskripsiSingkat,
|
||||
linkVideo: d.linkVideo,
|
||||
},
|
||||
create: {
|
||||
id: d.id,
|
||||
judul: d.judul,
|
||||
deskripsi: d.deskripsi,
|
||||
deskripsiSingkat: d.deskripsiSingkat,
|
||||
linkVideo: d.linkVideo,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("✅ Pencegahan Kriminalitas seeded successfully");
|
||||
// ==================== SUBMENU LAPORAN PUBLIK =================
|
||||
console.log("🔄 Seeding Laporan Publik...");
|
||||
for (const l of laporanPublik) {
|
||||
await prisma.laporanPublik.upsert({
|
||||
where: {
|
||||
id: l.id,
|
||||
},
|
||||
update: {
|
||||
judul: l.judul,
|
||||
lokasi: l.lokasi,
|
||||
tanggalWaktu: l.tanggalWaktu,
|
||||
kronologi: l.kronologi,
|
||||
},
|
||||
create: {
|
||||
id: l.id,
|
||||
judul: l.judul,
|
||||
lokasi: l.lokasi,
|
||||
tanggalWaktu: l.tanggalWaktu,
|
||||
kronologi: l.kronologi,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("laporan publik success ...");
|
||||
|
||||
console.log("🔄 Seeding Penanganan Laporan...");
|
||||
for (const l of penangananLaporan) {
|
||||
await prisma.penangananLaporanPublik.upsert({
|
||||
where: {
|
||||
id: l.id,
|
||||
},
|
||||
update: {
|
||||
deskripsi: l.deskripsi,
|
||||
laporanId: l.laporanId,
|
||||
},
|
||||
create: {
|
||||
id: l.id,
|
||||
deskripsi: l.deskripsi,
|
||||
laporanId: l.laporanId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("penanganan laporan success ...");
|
||||
|
||||
// ==================== SUBMENU TIPS KEAMANAN ==================
|
||||
console.log("🔄 Seeding Tips Keamanan...");
|
||||
for (const t of tipsKeamanan) {
|
||||
await prisma.menuTipsKeamanan.upsert({
|
||||
where: {
|
||||
id: t.id,
|
||||
},
|
||||
update: {
|
||||
judul: t.judul,
|
||||
deskripsi: t.deskripsi,
|
||||
imageId: t.imageId,
|
||||
},
|
||||
create: {
|
||||
id: t.id,
|
||||
judul: t.judul,
|
||||
deskripsi: t.deskripsi,
|
||||
imageId: t.imageId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
console.log("✅ Tips Keamanan seeded successfully");
|
||||
|
||||
// ====================== MENU EKONOMI ========================
|
||||
// ==================== SUBMENU PASAR DESA ====================
|
||||
console.log("🔄 Seeding Kategori Produk...");
|
||||
for (const k of kategoriProduk) {
|
||||
await prisma.kategoriProduk.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
nama: k.nama,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
nama: k.nama,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Kategori Produk seeded successfully");
|
||||
|
||||
console.log("🔄 Seeding Pasar Desa...");
|
||||
for (const p of pasarDesa) {
|
||||
await prisma.pasarDesa.upsert({
|
||||
where: {
|
||||
id: p.id,
|
||||
},
|
||||
update: {
|
||||
nama: p.nama,
|
||||
imageId: p.imageId,
|
||||
harga: p.harga,
|
||||
rating: p.rating,
|
||||
alamatUsaha: p.alamatUsaha,
|
||||
kontak: p.kontak,
|
||||
deskripsi: p.deskripsi,
|
||||
kategoriProdukId: p.kategoriProdukId,
|
||||
},
|
||||
create: {
|
||||
id: p.id,
|
||||
nama: p.nama,
|
||||
imageId: p.imageId,
|
||||
harga: p.harga,
|
||||
rating: p.rating,
|
||||
alamatUsaha: p.alamatUsaha,
|
||||
kontak: p.kontak,
|
||||
deskripsi: p.deskripsi,
|
||||
kategoriProdukId: p.kategoriProdukId,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Pasar Desa seeded successfully");
|
||||
|
||||
console.log("🔄 Seeding Kategori To Pasar...");
|
||||
for (const p of kategoriToPasar) {
|
||||
await prisma.kategoriToPasar.upsert({
|
||||
where: {
|
||||
id: p.id,
|
||||
},
|
||||
update: {
|
||||
kategoriId: p.kategoriId,
|
||||
pasarDesaId: p.pasarDesaId,
|
||||
},
|
||||
create: {
|
||||
id: p.id,
|
||||
kategoriId: p.kategoriId,
|
||||
pasarDesaId: p.pasarDesaId,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
// ==================== SUBMENU LOWONGAN KERJA LOKAL ==========
|
||||
console.log("🔄 Seeding Lowongan Kerja Lokal...");
|
||||
for (const k of lowonganKerjaLokal) {
|
||||
await prisma.lowonganPekerjaan.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
posisi: k.posisi,
|
||||
namaPerusahaan: k.namaPerusahaan,
|
||||
lokasi: k.lokasi,
|
||||
tipePekerjaan: k.tipePekerjaan,
|
||||
gaji: k.gaji,
|
||||
deskripsi: k.deskripsi,
|
||||
kualifikasi: k.kualifikasi,
|
||||
notelp: k.notelp,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
posisi: k.posisi,
|
||||
namaPerusahaan: k.namaPerusahaan,
|
||||
lokasi: k.lokasi,
|
||||
tipePekerjaan: k.tipePekerjaan,
|
||||
gaji: k.gaji,
|
||||
deskripsi: k.deskripsi,
|
||||
kualifikasi: k.kualifikasi,
|
||||
notelp: k.notelp,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Lowongan Kerja Lokal seeded successfully");
|
||||
|
||||
// ==================== SUBMENU STRUKTUR ORGANISASI DAN SK PENGURUS BUMDES ==========
|
||||
const sortedPosisiBumdes = flattenedPosisiBumdes.sort(
|
||||
(a, b) => a.hierarki - b.hierarki
|
||||
);
|
||||
@@ -1648,6 +2047,9 @@ import resolveImageById from "./resolveImageByName";
|
||||
}
|
||||
console.log("pegawai success ...");
|
||||
|
||||
// ==================== SUBMENU PENDAPATAN ASLI DESA ==========
|
||||
|
||||
// ==================== SUBMENU JUMLAH PENGANGGURAN ==========
|
||||
for (const d of detailDataPengangguran) {
|
||||
await prisma.detailDataPengangguran.upsert({
|
||||
where: {
|
||||
@@ -1671,6 +2073,96 @@ import resolveImageById from "./resolveImageByName";
|
||||
}
|
||||
console.log("📊 detailDataPengangguran success ...");
|
||||
|
||||
// ==================== SUBMENU PENDUDUK USIA KERJA ==========
|
||||
|
||||
// ==================== SUBMENU PENDUDUK MISKIN =============
|
||||
|
||||
// ==================== SUBMENU PROGRAM KEMISKINAN =============
|
||||
for (const k of statistikKemiskinan) {
|
||||
await prisma.statistikKemiskinan.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
tahun: k.tahun,
|
||||
jumlah: k.jumlah,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
tahun: k.tahun,
|
||||
jumlah: k.jumlah,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("📊 Statistik Kemiskinan seeded successfully");
|
||||
|
||||
console.log("🔄 Seeding Program Kemiskinan...");
|
||||
for (const k of programKemiskinan) {
|
||||
await prisma.programKemiskinan.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
nama: k.nama,
|
||||
deskripsi: k.deskripsi,
|
||||
icon: k.icon,
|
||||
statistikId: k.statistikId,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
nama: k.nama,
|
||||
deskripsi: k.deskripsi,
|
||||
icon: k.icon,
|
||||
statistikId: k.statistikId,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Program Kemiskinan seeded successfully");
|
||||
|
||||
// ==================== SUBMENU SEKTOR UNGGULAN DESA =============
|
||||
console.log("🔄 Seeding Sektor Unggulan Desa...");
|
||||
for (const k of sektorUnggulanDesa) {
|
||||
await prisma.sektorUnggulanDesa.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
name: k.name,
|
||||
description: k.description,
|
||||
value: k.value,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
name: k.name,
|
||||
description: k.description,
|
||||
value: k.value,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Sektor Unggulan Desa seeded successfully");
|
||||
|
||||
// ==================== SUBMENU DEMOGRAFI PEKERJAAN =============
|
||||
console.log("🔄 Seeding Demografi Pekerjaan...");
|
||||
for (const k of demografiPekerjaan) {
|
||||
await prisma.dataDemografiPekerjaan.upsert({
|
||||
where: {
|
||||
id: k.id,
|
||||
},
|
||||
update: {
|
||||
pekerjaan: k.pekerjaan,
|
||||
lakiLaki: k.lakiLaki,
|
||||
perempuan: k.perempuan,
|
||||
},
|
||||
create: {
|
||||
id: k.id,
|
||||
pekerjaan: k.pekerjaan,
|
||||
lakiLaki: k.lakiLaki,
|
||||
perempuan: k.perempuan,
|
||||
},
|
||||
});
|
||||
}
|
||||
console.log("✅ Demografi Pekerjaan seeded successfully");
|
||||
|
||||
// =========== KATEGORI GOTONG ROYONG ===========
|
||||
// Add IDs to the kategoriKegiatan data
|
||||
const kategoriKegiatan = kategoriKegiatanData.map((k, index) => ({
|
||||
|
||||
@@ -45,7 +45,7 @@ export default async function seedAssets() {
|
||||
|
||||
// 1. Download zip
|
||||
const url =
|
||||
"https://cld-dkr-makuro-seafile.wibudev.com/f/1d6104cdf2b849f89533/?dl=1";
|
||||
"https://cld-dkr-makuro-seafile.wibudev.com/f/88293b915cf34b939819/?dl=1";
|
||||
const res = await fetchWithRetry(url, 3, 20000);
|
||||
|
||||
// Validasi content-type
|
||||
|
||||
Reference in New Issue
Block a user