diff --git a/prisma/data/desa/layanan/pelayananSuratKeterangan.json b/prisma/data/desa/layanan/pelayananSuratKeterangan.json
new file mode 100644
index 00000000..9f13159c
--- /dev/null
+++ b/prisma/data/desa/layanan/pelayananSuratKeterangan.json
@@ -0,0 +1,57 @@
+[
+ {
+ "id" : "cmdxyb9zi0010vniiaeyi55ui",
+ "name" : "Surat Keterangan Beda Biodata Diri",
+ "deskripsi" : "
Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP atau Kartu Keluarga
Fotocopy dokumen bersangkutan yang terdapat perbedaan biodata diri misal : Sertifikat Tanah/Ijazah/Polis Asuransi dan lainnya.
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxycqz40014vniidftrixvf",
+ "name" : "Surat Keterangan Yatim Piatu",
+ "deskripsi" : "Persyaratan Dokumen :
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdwx3wph0003vnr74us2t7h7",
+ "name" : "Surat Keterangan Domisili Organisasi",
+ "deskripsi" : "Persyaratan Dokumen:
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy Surat Keterangan Terdaftar (SKT) organisasi atau Pengukuhan Kelompok
Jika Pengajuan baru pembuatan SKT maka melengkapi Susunan Pengurus lengkap dengan Kop Organisasi
Tanggal berdiri/Tahun berdiri/Sejak kapan berdirinya organisasi
Alur Pelayanan:
"
+ },
+ {
+ "id" : "cmdxxv3i80004vniidg1mrucc",
+ "name" : "Surat Keterangan Penghasilan",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP orang tua atau Fotocopy Kartu keluarga
Membuat Surat Pernyataan Penghasilan bermaterai (disertai jumlah penghasilan)
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxxwp070008vnii9jbdcto7",
+ "name" : "Surat Keterangan Tidak Mampu",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP/KIA atau Kartu Keluarga
Fotocopy Kartu Indonesia Pintar/Kartu Perlindungan Sosial/Terdaftar dalam DTKS
Jika tidak memiliki Kartu tersebut diatas diwajibkan membuat Surat Pernyataan Tidak Mampu
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxxyfkl000cvnii1bxinnfi",
+ "name" : "Surat Keterangan Kelahiran",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy Surat lahir dari dokter/bidan (jika ada)
Fotocopy Kartu Keluarga
Fotocopy KTP 2 orang saksi
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxy23pl000gvniihsg38aq4",
+ "name" : "Surat Keterangan Usaha",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP atau Kartu Keluarga
Foto Lokasi dan Kegiatan Usaha di cetak dalam selembar kertas (diparaf dan stempel oleh Kelian Banjar Dinas)
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxy4mgt000kvniib1nemjem",
+ "name" : "Surat Keterangan Kematian",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP atau Kartu Keluarga
Surat Kematian dari rumah sakit atau dokter (jika ada)
tanggal kematian
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxy61a1000ovniif4ytb9hs",
+ "name" : "Surat Keterangan Tempat Usaha",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP atau Kartu Keluarga
Foto Lokasi dan Kegiatan Usaha di cetak dalam selembar kertas (diparaf dan stempel oleh Kelian Banjar Dinas)
Surat Perjanjian Sewa/Kontrak atau Kwintansi Pembayaran Sewa 3 bulan terakhir bagi yang mengontrak tempat usaha, apabila tempat usaha milik sendiri lampiri dengan dokumen kepemilikan tempat usaha (dapat berupa fotocopy sppt atau Fotocopy Sertipikat Hak Milik)
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxy754q000svniiiz8oqyo0",
+ "name" : "Surat Keterangan Belum Kawin",
+ "deskripsi" : "Persyaratan Dokumen :
Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
Fotocopy KTP atau Kartu Keluarga
Khusus bagi yang berstatus duda atau janda melampirkan fotocopy akta cerai atau dokumen pendukung lainnya
Alur Pelayanan :
"
+ },
+ {
+ "id" : "cmdxy8pi2000wvnii48fc1sxd",
+ "name" : "Surat Keterangan Kelakuan Baik",
+ "deskripsi" : "Persyaratan Dokumen :
Alur Pelayanan :
"
+ }
+]
\ No newline at end of file
diff --git a/prisma/data/desa/layanan/pelayananSuratKeternagan.json b/prisma/data/desa/layanan/pelayananSuratKeternagan.json
deleted file mode 100644
index e69de29b..00000000
diff --git a/prisma/data/desa/layanan/pelayananTelunjukSaktiDesa.json b/prisma/data/desa/layanan/pelayananTelunjukSaktiDesa.json
index e69de29b..aac11c24 100644
--- a/prisma/data/desa/layanan/pelayananTelunjukSaktiDesa.json
+++ b/prisma/data/desa/layanan/pelayananTelunjukSaktiDesa.json
@@ -0,0 +1,20 @@
+[
+ {
+ "id": "cmdy0dwx10000vnnb6nmt06rv",
+ "name": "Telunjuk Sakti Desa Akta Kelahiran (Petunjuk Pengajuan pada link berikut : Download",
+ "deskripsi": "Akta Kelahiran",
+ "link": "https://darmasaba.desa.id/storage/files/PERSYARATAN%20DAN%20ALUR%20PENGAJUAN%20AKTA%20KELAHIRAN_(dengan%20contoh%20Formulir).pdf"
+ },
+ {
+ "id": "cmdy0ttpz0001vnnbrvr9jb3z",
+ "name": "Telunjuk Sakti Desa Akta Perkawinan (Petunjuk Pengajuan pada link berikut : Download",
+ "deskripsi": "Akta Perkawinan",
+ "link": "https://darmasaba.desa.id/storage/files/PERSYARATAN%20DAN%20ALUR%20PENGAJUAN%20AKTA%20PERKAWINAN_(dengan%20contoh%20Formulir).pdf"
+ },
+ {
+ "id": "cmdy0vjic0002vnnbcp0e9lgq",
+ "name": "Telunjuk Sakti Desa Akta Kematian (Petunjuk Pengajuan pada link berikut : Download",
+ "deskripsi": "Akta Kematian",
+ "link": "https://darmasaba.desa.id/storage/files/PERSYARATAN%20DAN%20ALUR%20PENGAJUAN%20AKTA%20KEMATIAN_(dengan%20contoh%20Formulir).pdf"
+ }
+]
\ No newline at end of file
diff --git a/prisma/seed.ts b/prisma/seed.ts
index bfcacb19..7cc5edeb 100644
--- a/prisma/seed.ts
+++ b/prisma/seed.ts
@@ -4,6 +4,7 @@ import programInovasi from "./data/landing-page/profile/programInovasi.json";
import mediaSosial from "./data/landing-page/profile/mediaSosial.json";
import sdgsDesa from "./data/landing-page/sdgs-desa/sdgs-desa.json";
import apbdes from "./data/landing-page/apbdes/apbdes.json";
+import pelayananSuratKeterangan from "./data/desa/layanan/pelayananSuratKeterangan.json";
import categoryPengumuman from "./data/category-pengumuman.json";
import kategoriBerita from "./data/kategori-berita.json";
import caraMemperolehInformasi from "./data/list-caraMemperolehInformasi.json";
@@ -98,6 +99,23 @@ import pegawaiPPID from "./data/ppid/struktur-ppid/pegawai-PPID.json";
},
});
}
+ console.log("media sosial success ...");
+
+ // =========== LAYANAN DESA ===========
+ for (const p of pelayananSuratKeterangan) {
+ await prisma.pelayananSuratKeterangan.upsert({
+ where: { id: p.id },
+ update: {
+ name: p.name,
+ deskripsi: p.deskripsi,
+ },
+ create: {
+ id: p.id,
+ name: p.name,
+ deskripsi: p.deskripsi,
+ },
+ });
+ }
console.log("media sosial success ...");
// =========== LAYANAN ===========
diff --git a/src/app/admin/(dashboard)/desa/layanan/pelayanan_surat_keterangan/page.tsx b/src/app/admin/(dashboard)/desa/layanan/pelayanan_surat_keterangan/page.tsx
index 431ab1bd..dba0a5c1 100644
--- a/src/app/admin/(dashboard)/desa/layanan/pelayanan_surat_keterangan/page.tsx
+++ b/src/app/admin/(dashboard)/desa/layanan/pelayanan_surat_keterangan/page.tsx
@@ -111,7 +111,7 @@ function ListSuratKeterangan({ search }: { search: string }) {
-
+
diff --git a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/edit/page.tsx b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/edit/page.tsx
index a8502e56..8e84e4a3 100644
--- a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/edit/page.tsx
+++ b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/edit/page.tsx
@@ -1,6 +1,5 @@
'use client'
/* eslint-disable react-hooks/exhaustive-deps */
-import EditEditor from '@/app/admin/(dashboard)/_com/editEditor';
import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
import colors from '@/con/colors';
import { Box, Button, Paper, Stack, Text, TextInput, Title } from '@mantine/core';
@@ -76,6 +75,14 @@ function EditPelayananTelunjukSakti() {
label={Nama Surat Keterangan }
placeholder="masukkan nama surat keterangan"
/>
+ {
+ setFormData({ ...formData, deskripsi: val.target.value });
+ }}
+ label={Tautan Link }
+ placeholder="masukkan tautan link"
+ />
{
@@ -84,15 +91,6 @@ function EditPelayananTelunjukSakti() {
label={Link }
placeholder="masukkan link"
/>
-
- Konten
- {
- setFormData({ ...formData, deskripsi: htmlContent });
- }}
- />
-
Simpan
diff --git a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/page.tsx b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/page.tsx
index c13d2fc5..7cee7349 100644
--- a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/page.tsx
+++ b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/[id]/page.tsx
@@ -58,11 +58,24 @@ function DetailPelayananTelunjukSakti() {
Link
- {telunjukSaktiState.findUnique.data?.link}
+
+ {telunjukSaktiState.findUnique.data?.link}
+
Deskripsi
-
+ {telunjukSaktiState.findUnique.data?.deskripsi}
Nama Pelayanan Telunjuk Sakti Desa}
placeholder="masukkan nama pelayanan telunjuk sakti desa"
/>
+ {
+ stateTelunjukDesa.create.form.deskripsi = val.target.value;
+ }}
+ label={Tautan Link }
+ placeholder="masukkan tautan link"
+ />
{
@@ -51,15 +58,6 @@ function CreatePelayananTelunjukDesa() {
label={Link }
placeholder="masukkan link"
/>
-
- Konten
- {
- stateTelunjukDesa.create.form.deskripsi = htmlContent;
- }}
- />
-
Simpan
diff --git a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/page.tsx b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/page.tsx
index 48944d9a..c995523a 100644
--- a/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/page.tsx
+++ b/src/app/admin/(dashboard)/desa/layanan/pelayanan_telunjuk_sakti_desa/page.tsx
@@ -1,29 +1,29 @@
'use client'
-import JudulListTab from '@/app/admin/(dashboard)/_com/judulListTab';
import colors from '@/con/colors';
import { Box, Button, Paper, Skeleton, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core';
-import { IconDeviceImac, IconSearch } from '@tabler/icons-react';
-import { useProxy } from 'valtio/utils';
-import stateLayananDesa from '../../../_state/desa/layananDesa';
import { useShallowEffect } from '@mantine/hooks';
+import { IconDeviceImac, IconSearch } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
import { useState } from 'react';
+import { useProxy } from 'valtio/utils';
import HeaderSearch from '../../../_com/header';
+import JudulList from '../../../_com/judulList';
+import stateLayananDesa from '../../../_state/desa/layananDesa';
function PelayananTelunjukSakti() {
- const [search, setSearch] = useState("");
- return (
-
- }
- value={search}
- onChange={(e) => setSearch(e.currentTarget.value)}
- />
-
-
- );
+ const [search, setSearch] = useState("");
+ return (
+
+ }
+ value={search}
+ onChange={(e) => setSearch(e.currentTarget.value)}
+ />
+
+
+ );
}
function ListPelayananTelunjukSakti({ search }: { search: string }) {
@@ -53,33 +53,41 @@ function ListPelayananTelunjukSakti({ search }: { search: string }) {
return (
- }
/>
Nama
- Deskripsi
+ Link
Detail
{filteredData.map((item) => (
- {item.name}
-
-
-
- router.push(`/admin/desa/layanan/pelayanan_telunjuk_sakti_desa/${item.id}`)}>
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ router.push(`/admin/desa/layanan/pelayanan_telunjuk_sakti_desa/${item.id}`)}>
+
+
+
+
+
))}
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-beda-biodata-diri/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-beda-biodata-diri/page.tsx
deleted file mode 100644
index 5a38f7f7..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-beda-biodata-diri/page.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Beda Biodata Diri
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Ktp atau Kartu Keluarga
- Fotocopy dokumen bersangkutan yang terdapat perbedaan biodata diri misal : Sertifikat Tanah/Ijazah/Polis Asuransi dan lainnya.
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-belum-kawin/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-belum-kawin/page.tsx
deleted file mode 100644
index 060cb498..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-belum-kawin/page.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Belum Kawin
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Ktp atau Kartu Keluarga
- Khusus bagi yang berstatus duda atau janda melampirkan fotocopy akta cerai atau dokumen pendukung lainnya
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-domisili/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-domisili/page.tsx
deleted file mode 100644
index 7d7a5795..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-domisili/page.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import colors from '@/con/colors';
-import { Box, Button, Center, Container, Image, List, ListItem, Stack, Text } from '@mantine/core';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
-
-
- Surat Keterangan Domisili Organisasi
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Surat Keterangan Terdaftar (SKT) organisasi atau Pengukuhan Kelompok
- Jika Pengajuan baru pembuatan SKT maka melengkapi Susunan Pengurus lengkap dengan Kop Organisasi
- Tanggal berdiri/Tahun berdiri/Sejak kapan berdirinya organisasi
-
-
-
- Alur Pelayanan:
-
-
-
-
-
- Ajukan Permohonan
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelahiran/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelahiran/page.tsx
deleted file mode 100644
index 49c63df0..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelahiran/page.tsx
+++ /dev/null
@@ -1,43 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Group, Center } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Kelahiran
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Surat lahir dari dokter/bidan (jika ada)
- Fotocopy Kartu Keluarga
- Fotocopy KTP 2 orang saksi
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelakuan-baik/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelakuan-baik/page.tsx
deleted file mode 100644
index 5c142d71..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kelakuan-baik/page.tsx
+++ /dev/null
@@ -1,41 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Kelakuan Baik (Pengantar SKCK)
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Ktp atau Kartu Keluarga
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kematian/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kematian/page.tsx
deleted file mode 100644
index 3b90cf31..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-kematian/page.tsx
+++ /dev/null
@@ -1,43 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Kematian
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy KTP atau Kartu keluarga
- Surat Kematian dari rumah sakit atau dokter (jika ada)
- Tanggal dan Waktu Kematian
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-penghasilan/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-penghasilan/page.tsx
deleted file mode 100644
index 6efc4939..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-penghasilan/page.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Penghasilan
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy KTP orang tua atau Fotocopy Kartu keluarga
- Membuat Surat Pernyataan Penghasilan bermaterai (disertai jumlah penghasilan)
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tempat-usaha/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tempat-usaha/page.tsx
deleted file mode 100644
index 531ccee7..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tempat-usaha/page.tsx
+++ /dev/null
@@ -1,43 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Tempat Usaha
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy KTP atau Kartu keluarga
- Foto Lokasi dan Kegiatan Usaha di cetak dalam selembar kertas (diparaf dan stempel oleh Kelian Banjar Dinas)
- Surat Perjanjian Sewa/Kontrak atau Kwintansi Pembayaran Sewa 3 bulan terakhir bagi yang mengontrak tempat usaha, apabila tempat usaha milik sendiri lampiri dengan dokumen kepemilikan tempat usaha (dapat berupa fotocopy sppt atau Fotocopy Sertipikat Hak Milik)
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tidak-mampu/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tidak-mampu/page.tsx
deleted file mode 100644
index 0e8a7f64..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-tidak-mampu/page.tsx
+++ /dev/null
@@ -1,44 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Tidak Mampu
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy KTP/KIA atau Kartu Keluarga
- Fotocopy Kartu Indonesia Pintar/Kartu Perlindungan Sosial/Terdaftar dalam DTKS
- Jika tidak memiliki Kartu tersebut diatas diwajibkan membuat Surat Pernyataan Tidak Mampu
-
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-usaha/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-usaha/page.tsx
deleted file mode 100644
index 5d41ae7d..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-usaha/page.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Usaha
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy KTP atau Kartu keluarga
- Foto Lokasi dan Kegiatan Usaha di cetak dalam selembar kertas (diparaf dan stempel oleh Kelian Banjar Dinas)
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-yatim-piatu/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-yatim-piatu/page.tsx
deleted file mode 100644
index 242d9b42..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/(detail)/surat-keterangan-yatim-piatu/page.tsx
+++ /dev/null
@@ -1,41 +0,0 @@
-import colors from '@/con/colors';
-import { Stack, Container, List, ListItem, Box, Text, Image, Button, Center, Group } from '@mantine/core';
-import React from 'react';
-import BackButton from '../../_com/BackButto';
-
-function Page() {
- return (
-
-
-
-
- Surat Keterangan Yatim Piatu
-
-
-
-
-
- Persyaratan Dokumen:
-
-
- Pengantar Kelian Banjar Dinas di Wilayah Masing - masing
- Fotocopy Ktp, KIA atau Kartu Keluarga
-
-
-
- Alur Pelayanan:
-
-
-
-
-
-
- Ajukan Permohonan
-
-
-
-
- );
-}
-
-export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/[id]/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/[id]/page.tsx
new file mode 100644
index 00000000..2c543394
--- /dev/null
+++ b/src/app/darmasaba/(pages)/desa/layanan/[id]/page.tsx
@@ -0,0 +1,106 @@
+/* eslint-disable react-hooks/exhaustive-deps */
+'use client'
+import { useParams } from 'next/navigation';
+import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
+import colors from '@/con/colors';
+import { Box, Button, Center, Container, Group, Image, Skeleton, Stack, Text } from '@mantine/core';
+import { useEffect, useState } from 'react';
+import { useProxy } from 'valtio/utils';
+import BackButton from '../_com/BackButto';
+
+interface LayananData {
+ id: string;
+ name: string;
+ deskripsi: string;
+ imageId: string;
+ image2Id: string;
+ image?: {
+ id: string;
+ link: string;
+ };
+ image2?: {
+ id: string;
+ link: string;
+ };
+}
+
+function Page() {
+ const params = useParams<{ id: string }>();
+ const id = Array.isArray(params.id) ? params.id[0] : params.id;
+ const state = useProxy(stateLayananDesa);
+ const [loading, setLoading] = useState(true);
+ const [data, setData] = useState(null);
+
+ useEffect(() => {
+ const loadData = async () => {
+ if (!id) return;
+
+ try {
+ setLoading(true);
+ await state.suratKeterangan.findUnique.load(id);
+ const result = state.suratKeterangan.findUnique.data as unknown as LayananData;
+ setData(result);
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false);
+ }
+ };
+
+ loadData();
+ }, [id]);
+
+ if (loading) {
+ return (
+
+
+
+ );
+ }
+
+ if (!data) {
+ return (
+
+ Data tidak ditemukan
+
+ );
+ }
+
+ return (
+
+
+
+
+
+
+ {data.name}
+
+
+
+
+
+ {data.image2?.link && (
+
+
+
+ )}
+
+
+ Ajukan Permohonan
+
+
+
+
+
+ );
+}
+
+export default Page;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/[sub]/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/[sub]/page.tsx
deleted file mode 100644
index 535f2fba..00000000
--- a/src/app/darmasaba/(pages)/desa/layanan/[sub]/page.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import { Stack } from "@mantine/core";
-
-export default async function Page({ params }: { params: Promise<{ sub: string }> }) {
- const { sub } = await params
- return (
-
- {sub}
-
- )
-}
\ No newline at end of file
diff --git a/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPendudukNonPermanent.tsx b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPendudukNonPermanent.tsx
new file mode 100644
index 00000000..9488c6ef
--- /dev/null
+++ b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPendudukNonPermanent.tsx
@@ -0,0 +1,65 @@
+/* eslint-disable react-hooks/exhaustive-deps */
+import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
+import colors from '@/con/colors';
+import { ActionIcon, Box, Divider, Flex, Skeleton, Text } from '@mantine/core';
+import { IconBrandFacebook, IconBrandInstagram, IconBrandTwitter, IconBrandWhatsapp } from '@tabler/icons-react';
+import React, { useEffect, useState } from 'react';
+import { useProxy } from 'valtio/utils';
+
+function PelayananPendudukNonPermanent() {
+ const state = useProxy(stateLayananDesa)
+ const [loading, setLoading] = useState(false)
+
+ useEffect(() => {
+ const loadData = async () => {
+ try {
+ setLoading(true)
+ await state.pelayananPendudukNonPermanen.findById.load('1')
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false)
+ }
+ }
+ loadData()
+ }, [])
+
+ const data = state.pelayananPendudukNonPermanen.findById.data
+ return (
+
+ {loading ? (
+
+ ) : (
+
+
+ {data?.name}
+
+
+
+
+ 25 May 2021 . Darmasaba
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ )}
+
+ );
+}
+
+export default PelayananPendudukNonPermanent;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPerizinanBerusaha.tsx b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPerizinanBerusaha.tsx
new file mode 100644
index 00000000..cde0c677
--- /dev/null
+++ b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananPerizinanBerusaha.tsx
@@ -0,0 +1,106 @@
+/* eslint-disable react-hooks/exhaustive-deps */
+'use client'
+import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
+import { Box, Button, Center, Group, Skeleton, Stepper, StepperCompleted, StepperStep, Text } from '@mantine/core';
+import { useEffect, useState } from 'react';
+import { useProxy } from 'valtio/utils';
+
+function PelayananPerizinanBerusaha() {
+ const state = useProxy(stateLayananDesa)
+ const [loading, setLoading] = useState(false)
+ const [active, setActive] = useState(1);
+ const nextStep = () => setActive((current) => (current < 6 ? current + 1 : current));
+ const prevStep = () => setActive((current) => (current > 0 ? current - 1 : current));
+
+ useEffect(() => {
+ const loadData = async () => {
+ try {
+ setLoading(true);
+ await state.pelayananPerizinanBerusaha.findById.load('1')
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false);
+ }
+ }
+ loadData()
+ }, [])
+
+ const data = state.pelayananPerizinanBerusaha.findById.data;
+
+ if (!data) {
+ return (
+
+ Data tidak tersedia
+
+ );
+ }
+
+ return (
+
+ {loading ? (
+
+
+
+ ) : (
+
+
+ Pelayanan Perizinan Berusaha Berbasis Risiko Melalui Sistem ONLINE SINGLE SUBMISSION (OSS)
+
+
+ Proses pendaftaran NIB melalui OSS mencakup beberapa langkah umum, seperti:
+
+
+
+ Pendaftaran akun pada portal OSS
+
+
+ Mengisi informasi perusahaan, termasuk data pemegang saham, alamat perusahaan, dan lainnya
+
+
+ Memilih KBLI dengan jenis usaha yang akan didaftarkan
+
+
+ Mengunggah dokumen-dokumen yang diperlukan, seperti akta pendirian perusahaan, surat izin usaha, dan dokumen lainnya sesuai dengan ketentuan yang berlaku
+
+
+ Proses verifikasi dan persetujuan oleh instansi terkait
+
+
+ Jika proses sebelumnya berhasil, perusahaan akan menerima NIB sebagai identitas resmi usaha anda
+
+
+ Selesai, anda telah mengikuti proses pendaftaran NIB melalui OSS
+
+
+
+
+ Back
+ Next step
+
+
+ Penting untuk diingat bahwa prosedur dan persyaratan dapat berubah
+ seiring waktu. Untuk informasi yang lebih akurat dan terkini, saya sarankan untuk mengunjungi situs
+ resmi OSS (https://oss.go.id/) atau menghubungi instansi terkait di pemerintah Indonesia yang bertanggung jawab atas urusan perizinan usaha.
+
+
+
+ )}
+
+ );
+}
+
+export default PelayananPerizinanBerusaha;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananSuratKeterangan.tsx b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananSuratKeterangan.tsx
new file mode 100644
index 00000000..886cc07d
--- /dev/null
+++ b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananSuratKeterangan.tsx
@@ -0,0 +1,97 @@
+/* eslint-disable react-hooks/exhaustive-deps */
+import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
+import colors from '@/con/colors';
+import { BackgroundImage, Box, Button, Center, Group, SimpleGrid, Skeleton, Stack, Text } from '@mantine/core';
+import { useRouter } from 'next/navigation';
+import React, { useEffect, useMemo, useState } from 'react';
+
+import { useProxy } from 'valtio/utils';
+
+function PelayananSuratKeterangan({ search }: { search: string }) {
+ const [loading, setLoading] = useState(false);
+ const router = useRouter()
+ const state = useProxy(stateLayananDesa)
+ const filteredData = useMemo(() => {
+ if (!state.suratKeterangan.findMany.data) return [];
+ return state.suratKeterangan.findMany.data.filter(item => {
+ const keyword = search.toLowerCase();
+ return (
+ item.name?.toLowerCase().includes(keyword)
+ );
+ })
+ }, [state.suratKeterangan.findMany.data, search]);
+
+ useEffect(() => {
+ const loadData = async () => {
+ try {
+ setLoading(true);
+ await state.suratKeterangan.findMany.load()
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false);
+ }
+ }
+ loadData()
+ }, [])
+ return (
+
+ Pelayanan Surat Keterangan
+
+ {loading ? (
+
+
+
+ ) : (
+ filteredData.map((v, k) => {
+ return (
+
+
+
+
+ {v.name}
+
+
+ router.push(`/darmasaba/desa/layanan/${v.id}`)}>
+ Detail
+
+
+
+
+ )
+ })
+ )}
+
+
+
+ );
+}
+
+export default PelayananSuratKeterangan;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananTelunjukSaktiDesa.tsx b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananTelunjukSaktiDesa.tsx
new file mode 100644
index 00000000..23ac113f
--- /dev/null
+++ b/src/app/darmasaba/(pages)/desa/layanan/_com/pelayananTelunjukSaktiDesa.tsx
@@ -0,0 +1,67 @@
+/* eslint-disable react-hooks/exhaustive-deps */
+import stateLayananDesa from '@/app/admin/(dashboard)/_state/desa/layananDesa';
+import { Box, Flex, Skeleton, Text, Title } from '@mantine/core';
+import { useEffect, useState } from 'react';
+import { useProxy } from 'valtio/utils';
+
+interface ServiceItem {
+ name: string;
+ deskripsi: string;
+ link: string;
+}
+
+function PelayananTelunjukSaktiDesa() {
+ const state = useProxy(stateLayananDesa)
+ const [loading, setLoading] = useState(false)
+
+ useEffect(() => {
+ const loadData = async () => {
+ try {
+ setLoading(true)
+ await state.pelayananTelunjukSaktiDesa.findMany.load()
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false)
+ }
+ }
+ loadData()
+ }, [])
+
+ const data = state.pelayananTelunjukSaktiDesa.findMany.data as Array<{
+ name: string;
+ id: string;
+ deskripsi: string;
+ link: string;
+ items: ServiceItem[];
+ createdAt: Date;
+ updatedAt: Date;
+ deletedAt: Date | null;
+ }>
+ return (
+
+ Terwujudnya Layanan umum bertajuk Sistim administrasi Kependudukan Terintegrasi di Desa berbasi Elektronik, Smart dan Aman. Layanan Telunjuk Sakti Desa meliputi :
+ {loading ? (
+
+ ) : (
+ data.map((v, k) => {
+ return (
+
+
+
+ {v.name}
+
+
+ {v.deskripsi}
+
+
+
+
+ )
+ })
+ )}
+
+ );
+}
+
+export default PelayananTelunjukSaktiDesa;
diff --git a/src/app/darmasaba/(pages)/desa/layanan/page.tsx b/src/app/darmasaba/(pages)/desa/layanan/page.tsx
index 4ccfd02c..8b2113e5 100644
--- a/src/app/darmasaba/(pages)/desa/layanan/page.tsx
+++ b/src/app/darmasaba/(pages)/desa/layanan/page.tsx
@@ -1,85 +1,19 @@
'use client'
import colors from "@/con/colors";
-import { ActionIcon, BackgroundImage, Box, Button, Container, Divider, Flex, Group, List, ListItem, SimpleGrid, Stack, Stepper, StepperCompleted, StepperStep, Text, TextInput } from "@mantine/core";
-import { IconBrandFacebook, IconBrandInstagram, IconBrandTwitter, IconBrandWhatsapp, IconSearch } from "@tabler/icons-react";
-import { useRouter } from "next/navigation";
+import { Box, Container, Stack, Text, TextInput } from "@mantine/core";
+import { IconSearch } from "@tabler/icons-react";
import { useState } from "react";
import BackButton from "./_com/BackButto";
+import PelayananPerizinanBerusaha from "./_com/pelayananPerizinanBerusaha";
+import PelayananSuratKeterangan from "./_com/pelayananSuratKeterangan";
+import PelayananTelunjukSaktiDesa from "./_com/pelayananTelunjukSaktiDesa";
+import PelayananPendudukNonPermanent from "./_com/pelayananPendudukNonPermanent";
-const data = [
- {
- id: 1,
- images: "/api/img/test.png",
- name: "Surat Keterangan Domisili Organisasi",
- link: "/darmasaba/desa/layanan/surat-keterangan-domisili"
- },
- {
- id: 2,
- images: "/api/img/test-3.jpeg",
- name: "Surat Keterangan Penghasilan",
- link: "/darmasaba/desa/layanan/surat-keterangan-penghasilan"
- },
- {
- id: 3,
- images: "/api/img/domisili.jpeg",
- name: "Surat Keterangan Tidak Mampu",
- link: "/darmasaba/desa/layanan/surat-keterangan-tidak-mampu"
- },
- {
- id: 4,
- images: "/api/img/kelahiran.jpeg",
- name: "Surat Keterangan Kelahiran",
- link: "/darmasaba/desa/layanan/surat-keterangan-kelahiran"
- },
- {
- id: 5,
- images: "/api/img/keterangan-usaha.jpeg",
- name: "Surat Keterangan Usaha",
- link: "/darmasaba/desa/layanan/surat-keterangan-usaha"
- },
- {
- id: 6,
- images: "/api/img/kematian.jpeg",
- name: "Surat Keterangan Kematian",
- link: "/darmasaba/desa/layanan/surat-keterangan-kematian"
- },
- {
- id: 7,
- images: "/api/img/tempatusaha.jpeg",
- name: "Surat Keterangan Tempat Usaha",
- link: "/darmasaba/desa/layanan/surat-keterangan-tempat-usaha"
- },
- {
- id: 8,
- images: "/api/img/belumkawin.jpeg",
- name: "Surat Keterangan Belum Kawin",
- link: "/darmasaba/desa/layanan/surat-keterangan-belum-kawin"
- },
- {
- id: 9,
- images: "/api/img/berkelakuan-baik.jpeg",
- name: "Surat Keterangan Kelakuan Baik",
- link: "/darmasaba/desa/layanan/surat-keterangan-kelakuan-baik"
- },
- {
- id: 10,
- images: "/api/img/biodata.jpeg",
- name: "Surat Keterangan Beda Biodata Diri",
- link: "/darmasaba/desa/layanan/surat-keterangan-beda-biodata-diri"
- },
- {
- id: 11,
- images: "/api/img/yatim.jpeg",
- name: "Surat Keterangan Yatim Piatu",
- link: "/darmasaba/desa/layanan/surat-keterangan-yatim-piatu"
- }
-]
export default function Page() {
- const router = useRouter()
- const [active, setActive] = useState(1);
- const nextStep = () => setActive((current) => (current < 6 ? current + 1 : current));
- const prevStep = () => setActive((current) => (current > 0 ? current - 1 : current));
+ const [search, setSearch] = useState("")
+
+
return (
@@ -100,149 +34,20 @@ export default function Page() {
w={{ base: "70%", md: "50%" }}
placeholder="Cari Layanan"
leftSection={ }
-
+ value={search}
+ onChange={(e) => setSearch(e.currentTarget.value)}
/>
{/* Bagian Pelayanan Surat Keterangan */}
-
- Pelayanan Surat Keterangan
-
-
- {data.map((v, k) => {
- return (
-
-
-
-
- {v.name}
-
-
- router.push(v.link)}>
- Detail
-
-
-
-
- )
- })}
-
+
{/* Bagian Pelayanan Perizinan Berusaha */}
-
- Pelayanan Perizinan Berusaha Berbasis Risiko Melalui Sistem ONLINE SINGLE SUBMISSION (OSS)
-
- Penyelenggaraan Perizinan Berusaha Berbasis Risiko melalui Sistem Online Single Submission (OSS)
- merupakan pelaksanaan Undang-Undang Nomor 11 Tahun 2020 Tentang Cipta Kerja. OSS Berbasis Risiko wajib digunakan oleh Pelaku Usaha,
- Kementerian/Lembaga, Pemerintah Daerah, Administrator Kawasan Ekonomi Khusus (KEK), dan Badan Pengusahaan Kawasan Perdagangan Bebas
- Pelabuhan Bebas (KPBPB).Berdasarkan Peraturan Pemerintah Nomor 5 Tahun 2021 terdapat 1.702 kegiatan usaha yang terdiri atas 1.349
- Klasifikasi Baku Lapangan Usaha Indonesia (KBLI) yang sudah diimplementasikan dalam Sistem OSS Berbasis Risiko.
- Proses pendaftaran NIB melalui OSS mencakup beberapa langkah umum, seperti:
-
-
-
- Pendaftaran akun pada portal OSS
-
-
- Mengisi informasi perusahaan, termasuk data pemegang saham, alamat perusahaan, dan lainnya
-
-
- Memilih KBLI dengan jenis usaha yang akan didaftarkan
-
-
- Mengunggah dokumen-dokumen yang diperlukan, seperti akta pendirian perusahaan, surat izin usaha, dan dokumen lainnya sesuai dengan ketentuan yang berlaku
-
-
- Proses verifikasi dan persetujuan oleh instansi terkait
-
-
- Jika proses sebelumnya berhasil, perusahaan akan menerima NIB sebagai identitas resmi usaha anda
-
-
- Selesai, anda telah mengikuti proses pendaftaran NIB melalui OSS
-
-
-
-
- Back
- Next step
-
- Penting untuk diingat bahwa prosedur dan persyaratan dapat berubah
- seiring waktu. Untuk informasi yang lebih akurat dan terkini, saya sarankan untuk mengunjungi situs
- resmi OSS (https://oss.go.id/) atau menghubungi instansi terkait di pemerintah Indonesia yang bertanggung jawab atas urusan perizinan usaha.
-
+
{/* Bagian Pelayanan Telunjuk Sakti Desa */}
-
- Pelayanan Telunjuk Sakti Desa
-
- Terwujudnya Layanan umum bertajuk Sistim administrasi Kependudukan Terintegrasi di Desa berbasi Elektronik, Smart dan Aman. layanan telunjuk sakti Desa meliputi :
-
- Telunjuk Sakti Desa Akta Kelahiran (Petunjuk Pengajuan pada link berikut : Download Akta Kelahiran )
- Telunjuk Sakti Desa Akta Perkawinan (Petunjuk Pengajuan pada link berikut : Download Akta Perkawinan )
- Telunjuk Sakti Desa Akta Kematian (Petunjuk Pengajuan pada link berikut : Download Akata Kematian )
-
- {/* Bagian Pelayanan Telunjuk Sakti Desa */}
-
- Pelayanan Penduduk Non-Permanent
-
- Surat Keterangan Penduduk Non-Permanent adalah dokumen yang dikeluarkan oleh pihak berwenang untuk memberikan keterangan bahwa seseorang atau kelompok orang memiliki status penduduk non-permanent di suatu wilayah. Dokumen ini biasanya digunakan untuk keperluan administratif atau legal, seperti mendapatkan akses ke layanan kesehatan, pendidikan, atau pelayanan publik lainnya.
-
-
- 25 May 2021 . Darmasaba
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ {/* Bagian Pelayanan Penduduk Non Permanent */}
+
)
diff --git a/src/app/darmasaba/_com/main-page/layanan/index.tsx b/src/app/darmasaba/_com/main-page/layanan/index.tsx
index f6be4268..1f877c70 100644
--- a/src/app/darmasaba/_com/main-page/layanan/index.tsx
+++ b/src/app/darmasaba/_com/main-page/layanan/index.tsx
@@ -1,202 +1,155 @@
+/* eslint-disable react-hooks/exhaustive-deps */
/* eslint-disable @typescript-eslint/no-unused-vars */
"use client";
+import stateLayananDesa from "@/app/admin/(dashboard)/_state/desa/layananDesa";
import colors from "@/con/colors";
import ApiFetch from "@/lib/api-fetch";
import { Carousel } from "@mantine/carousel";
import {
- Box,
- Button,
- Container,
- Divider,
- Group,
- Paper,
- Stack,
- Text,
- useMantineTheme
+ Box,
+ Button,
+ Container,
+ Divider,
+ Group,
+ Paper,
+ Stack,
+ Text,
+ useMantineTheme
} from "@mantine/core";
import { useMediaQuery } from "@mantine/hooks";
import Autoplay from "embla-carousel-autoplay";
import _ from "lodash";
import { useTransitionRouter } from "next-view-transitions";
import Link from "next/link";
-import { useRef } from "react";
+import { useEffect, useRef, useState } from "react";
import useSWR from "swr";
+import { useProxy } from "valtio/utils";
-const data = [
- {
- id: 1,
- images: "/api/img/test.png",
- name: "Surat Keterangan Domisili Organisasi",
- link: "/darmasaba/desa/layanan/surat-keterangan-domisili"
-},
-{
- id: 2,
- images: "/api/img/test-3.jpeg",
- name: "Surat Keterangan Penghasilan",
- link: "/darmasaba/desa/layanan/surat-keterangan-penghasilan"
-},
-{
- id: 3,
- images: "/api/img/domisili.jpeg",
- name: "Surat Keterangan Tidak Mampu",
- link: "/darmasaba/desa/layanan/surat-keterangan-tidak-mampu"
-},
-{
- id: 4,
- images: "/api/img/kelahiran.jpeg",
- name: "Surat Keterangan Kelahiran",
- link: "/darmasaba/desa/layanan/surat-keterangan-kelahiran"
-},
-{
- id: 5,
- images: "/api/img/keterangan-usaha.jpeg",
- name: "Surat Keterangan Usaha",
- link: "/darmasaba/desa/layanan/surat-keterangan-usaha"
-},
-{
- id: 6,
- images: "/api/img/kematian.jpeg",
- name: "Surat Keterangan Kematian",
- link: "/darmasaba/desa/layanan/surat-keterangan-kematian"
-},
-{
- id: 7,
- images: "/api/img/tempatusaha.jpeg",
- name: "Surat Keterangan Tempat Usaha",
- link: "/darmasaba/desa/layanan/surat-keterangan-tempat-usaha"
-},
-{
- id: 8,
- images: "/api/img/belumkawin.jpeg",
- name: "Surat Keterangan Belum Kawin",
- link: "/darmasaba/desa/layanan/surat-keterangan-belum-kawin"
-},
-{
- id: 9,
- images: "/api/img/berkelakuan-baik.jpeg",
- name: "Surat Keterangan Kelakuan Baik",
- link: "/darmasaba/desa/layanan/surat-keterangan-kelakuan-baik"
-},
-{
- id: 10,
- images: "/api/img/biodata.jpeg",
- name: "Surat Keterangan Beda Biodata Diri",
- link: "/darmasaba/desa/layanan/surat-keterangan-beda-biodata-diri"
-},
-{
- id: 11,
- images: "/api/img/yatim.jpeg",
- name: "Surat Keterangan Yatim Piatu",
- link: "/darmasaba/desa/layanan/surat-keterangan-yatim-piatu"
-}
-
-]
const textHeading = {
- title: "Layanan",
- des: "Layanan adalah fitur yang membantu warga desa mengakses berbagai kebutuhan administrasi, informasi, dan bantuan secara cepat, mudah, dan transparan. Dengan fitur ini, semua layanan desa ada dalam genggaman Anda!",
+ title: "Layanan",
+ des: "Layanan adalah fitur yang membantu warga desa mengakses berbagai kebutuhan administrasi, informasi, dan bantuan secara cepat, mudah, dan transparan. Dengan fitur ini, semua layanan desa ada dalam genggaman Anda!",
};
function Layanan() {
- const { data, isLoading } = useSWR(
- "/",
- (url) => ApiFetch.api.layanan.get().then(({ data }) => data?.data),
- {
- fallbackData: [],
- }
- );
+ const { data, isLoading } = useSWR(
+ "/",
+ (url) => ApiFetch.api.layanan.get().then(({ data }) => data?.data),
+ {
+ fallbackData: [],
+ }
+ );
- const router = useTransitionRouter()
+ const router = useTransitionRouter()
- return (
-
-
-
-
- {textHeading.title}
-
-
- {textHeading.des}
-
-
-
- Detail
-
-
-
-
-
-
-
- );
+ return (
+
+
+
+
+ {textHeading.title}
+
+
+ {textHeading.des}
+
+
+
+ Detail
+
+
+
+
+
+
+
+ );
}
const height = 720;
function Slider() {
- const theme = useMantineTheme();
- const mobile = useMediaQuery(`(max-width: ${theme.breakpoints.sm})`);
- const autoplay = useRef(Autoplay({ delay: 2000 }));
- const router = useTransitionRouter()
+ const state = useProxy(stateLayananDesa)
+ const [loading, setLoading] = useState(false);
+ const theme = useMantineTheme();
+ const mobile = useMediaQuery(`(max-width: ${theme.breakpoints.sm})`);
+ const autoplay = useRef(Autoplay({ delay: 2000 }));
+ const router = useTransitionRouter()
- const slides = data.map((item) => (
-
-
-
-
-
- {
+ const loadData = async () => {
+ try {
+ setLoading(true);
+ await state.suratKeterangan.findMany.load()
+ } catch (error) {
+ console.error('Error loading data:', error);
+ } finally {
+ setLoading(false);
+ }
+ }
+ loadData()
+ }, [])
- fw={"bold"}
- c={"white"}
- size={"3.5rem"}
- style={{
- textAlign: "center",
- }}
- >
- {_.startCase(item.name)}
-
-
-
-
- Detail
-
-
-
-
-
- ));
+ const data = (state.suratKeterangan.findMany.data || []).slice(0, 8);
- return (
-
- {slides}
-
- );
+ const slides = data.map((item) => (
+
+
+
+
+
+
+ {_.startCase(item.name)}
+
+
+
+
+ Detail
+
+
+
+
+
+ ));
+
+ return (
+
+ {slides}
+
+ );
}
export default Layanan;
+