From 9c08980bf1fe7c632ed5a9830cb9e0a7a9a3c038 Mon Sep 17 00:00:00 2001 From: amaliadwiy Date: Fri, 6 Feb 2026 14:39:58 +0800 Subject: [PATCH] upd: tambah satuan Deskripsi: - satuan luas tempat usaha - satuan pendapatan perbulan - pada tambah, edit, detail surat No Issues --- src/components/surat/SKTempatUsaha.tsx | 2 +- src/lib/categoryPelayananSurat.ts | 296 +++++++++--------- src/pages/darmasaba/surat.tsx | 6 +- src/pages/darmasaba/update_data_surat.tsx | 6 +- .../pelayanan-surat/detail_pelayanan_page.tsx | 10 +- src/server/routes/pelayanan_surat_route.ts | 6 +- 6 files changed, 171 insertions(+), 155 deletions(-) diff --git a/src/components/surat/SKTempatUsaha.tsx b/src/components/surat/SKTempatUsaha.tsx index e0bb245..00fc7a2 100644 --- a/src/components/surat/SKTempatUsaha.tsx +++ b/src/components/surat/SKTempatUsaha.tsx @@ -90,7 +90,7 @@ export default function SKTempatUsaha({ data }: { data: any }) { - + diff --git a/src/lib/categoryPelayananSurat.ts b/src/lib/categoryPelayananSurat.ts index f014c6b..2f5d08d 100644 --- a/src/lib/categoryPelayananSurat.ts +++ b/src/lib/categoryPelayananSurat.ts @@ -9,87 +9,87 @@ export const categoryPelayananSurat = [ key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas di Wilayah Masing-masing", - required: true + required: true, satuan: null }, { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau Kartu Keluarga", - required: true + required: true, satuan: null }, { key: "dokumen_beda", name: "Dokumen Pendukung", desc: "Fotokopi dokumen yang terdapat perbedaan biodata (ijazah, sertifikat, dll)", - required: true + required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true }, - { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir pemohon", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir pemohon", type: "date", required: true }, + { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true, satuan: null }, + { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir pemohon", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir pemohon", type: "date", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin pemohon", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat lengkap tempat tinggal", type: "text", required: true }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true }, + { key: "alamat", name: "Alamat", desc: "Alamat lengkap tempat tinggal", type: "text", required: true, satuan: null }, + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true, satuan: null }, { key: "dokumen", name: "Nama Dokumen", desc: "Jenis dokumen yang mengalami perbedaan biodata", type: "text", - required: true + required: true, satuan: null }, { key: "data_dokumen", name: "Data Dokumen", desc: "Data dokumen yg berbeda", type: "text", - required: true + required: true, satuan: null }, - { key: "dokumen_a", name: "Data pada Dokumen A", desc: "Data biodata pada dokumen pertama", type: "text", required: true }, - { key: "dokumen_b", name: "Data pada Dokumen B", desc: "Data biodata pada dokumen kedua", type: "text", required: true } + { key: "dokumen_a", name: "Data pada Dokumen A", desc: "Data biodata pada dokumen pertama", type: "text", required: true, satuan: null }, + { key: "dokumen_b", name: "Data pada Dokumen B", desc: "Data biodata pada dokumen kedua", type: "text", required: true, satuan: null } ] }, { id: "skbelumkawin", name: "Surat Keterangan Belum Kawin", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau Kartu Keluarga", required: true }, - { key: "akta_cerai", name: "Akta Cerai", desc: "Fotokopi akta cerai (jika berstatus janda/duda)", required: false } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau Kartu Keluarga", required: true, satuan: null }, + { key: "akta_cerai", name: "Akta Cerai", desc: "Fotokopi akta cerai (jika berstatus janda/duda)", required: false, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true }, - { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir pemohon", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir pemohon", type: "date", required: true }, + { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true, satuan: null }, + { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir pemohon", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir pemohon", type: "date", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin pemohon", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true }, + { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true, satuan: null }, { key: "agama", name: "Agama", desc: "Agama pemohon", type: "enum", options: enumAgama, - required: true + required: true, satuan: null }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true } + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true, satuan: null } ] }, @@ -97,79 +97,79 @@ export const categoryPelayananSurat = [ id: "skdomisiliorganisasi", name: "Surat Keterangan Domisili Organisasi", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "skt_organisasi", name: "SKT Organisasi", desc: "Fotokopi SKT Organisasi", required: true }, - { key: "susunan_pengurus", name: "Susunan Pengurus", desc: "Susunan pengurus organisasi", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "skt_organisasi", name: "SKT Organisasi", desc: "Fotokopi SKT Organisasi", required: true, satuan: null }, + { key: "susunan_pengurus", name: "Susunan Pengurus", desc: "Susunan pengurus organisasi", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nama_organisasi", name: "Nama Organisasi", desc: "Nama resmi organisasi", type: "text", required: true }, - { key: "jenis_organisasi", name: "Jenis Organisasi", desc: "Jenis organisasi", type: "text", required: true }, - { key: "alamat_organisasi", name: "Alamat Organisasi", desc: "Alamat sekretariat", type: "text", required: true }, - { key: "no_telepon", name: "Nomor Telepon", desc: "Nomor telepon organisasi", type: "text", required: true }, - { key: "nama_pimpinan", name: "Nama Pimpinan", desc: "Nama pimpinan", type: "text", required: true }, - { key: "keperluan", name: "Keperluan", desc: "Keperluan pembuatan surat", type: "text", required: true } + { key: "nama_organisasi", name: "Nama Organisasi", desc: "Nama resmi organisasi", type: "text", required: true, satuan: null }, + { key: "jenis_organisasi", name: "Jenis Organisasi", desc: "Jenis organisasi", type: "text", required: true, satuan: null }, + { key: "alamat_organisasi", name: "Alamat Organisasi", desc: "Alamat sekretariat", type: "text", required: true, satuan: null }, + { key: "no_telepon", name: "Nomor Telepon", desc: "Nomor telepon organisasi", type: "text", required: true, satuan: null }, + { key: "nama_pimpinan", name: "Nama Pimpinan", desc: "Nama pimpinan", type: "text", required: true, satuan: null }, + { key: "keperluan", name: "Keperluan", desc: "Keperluan pembuatan surat", type: "text", required: true, satuan: null } ] }, { id: "skkelahiran", name: "Surat Keterangan Kelahiran", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "surat_lahir", name: "Surat Keterangan Lahir", desc: "Surat keterangan lahir dari bidan/dokter (jika ada)", required: false } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "surat_lahir", name: "Surat Keterangan Lahir", desc: "Surat keterangan lahir dari bidan/dokter (jika ada)", required: false, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nama_anak", name: "Nama Anak", desc: "Nama bayi/anak", type: "text", required: true }, - { key: "tanggal_lahir_anak", name: "Tanggal Lahir Anak", desc: "Tanggal lahir anak", type: "date", required: true }, - { key: "pukul_lahir", name: "Pukul Lahir", desc: "Waktu kelahiran", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat kelahiran", type: "text", required: true }, + { key: "nama_anak", name: "Nama Anak", desc: "Nama bayi/anak", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir_anak", name: "Tanggal Lahir Anak", desc: "Tanggal lahir anak", type: "date", required: true, satuan: null }, + { key: "pukul_lahir", name: "Pukul Lahir", desc: "Waktu kelahiran", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat kelahiran", type: "text", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin Anak", desc: "Jenis kelamin anak", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "anak_ke", name: "Anak Ke-", desc: "Urutan kelahiran", type: "number", required: true }, - { key: "nik_ibu", name: "NIK Ibu", desc: "NIK ibu kandung", type: "number", required: true }, - { key: "nama_ibu", name: "Nama Ibu", desc: "Nama ibu kandung", type: "text", required: true }, - { key: "tempat_lahir_ibu", name: "Tempat Lahir Ibu", desc: "Tempat lahir ibu", type: "text", required: true }, - { key: "tanggal_lahir_ibu", name: "Tanggal Lahir Ibu", desc: "Tanggal lahir ibu", type: "date", required: true }, - { key: "pekerjaan_ibu", name: "Pekerjaan Ibu", desc: "Pekerjaan ibu", type: "text", required: true }, - { key: "alamat_ibu", name: "Alamat Ibu", desc: "Alamat ibu", type: "text", required: true }, - { key: "nama_ayah", name: "Nama Ayah", desc: "Nama ayah kandung", type: "text", required: true }, - { key: "nik_ayah", name: "NIK Ayah", desc: "NIK ayah kandung", type: "number", required: true }, - { key: "tempat_lahir_ayah", name: "Tempat Lahir Ayah", desc: "Tempat lahir ayah", type: "text", required: true }, - { key: "tanggal_lahir_ayah", name: "Tanggal Lahir Ayah", desc: "Tanggal lahir ayah", type: "date", required: true }, - { key: "pekerjaan_ayah", name: "Pekerjaan Ayah", desc: "Pekerjaan ayah", type: "text", required: true }, - { key: "alamat_ayah", name: "Alamat Ayah", desc: "Alamat ayah", type: "text", required: true }, - { key: "nama_pelapor", name: "Nama Pelapor", desc: "Nama pelapor", type: "text", required: true }, - { key: "hubungan_pelapor", name: "Hubungan Pelapor", desc: "Hubungan dengan anak", type: "text", required: true }, - { key: "alamat_pelapor", name: "Alamat Pelapor", desc: "Alamat pelapor", type: "text", required: true } + { key: "anak_ke", name: "Anak Ke-", desc: "Urutan kelahiran", type: "number", required: true, satuan: null }, + { key: "nik_ibu", name: "NIK Ibu", desc: "NIK ibu kandung", type: "number", required: true, satuan: null }, + { key: "nama_ibu", name: "Nama Ibu", desc: "Nama ibu kandung", type: "text", required: true, satuan: null }, + { key: "tempat_lahir_ibu", name: "Tempat Lahir Ibu", desc: "Tempat lahir ibu", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir_ibu", name: "Tanggal Lahir Ibu", desc: "Tanggal lahir ibu", type: "date", required: true, satuan: null }, + { key: "pekerjaan_ibu", name: "Pekerjaan Ibu", desc: "Pekerjaan ibu", type: "text", required: true, satuan: null }, + { key: "alamat_ibu", name: "Alamat Ibu", desc: "Alamat ibu", type: "text", required: true, satuan: null }, + { key: "nama_ayah", name: "Nama Ayah", desc: "Nama ayah kandung", type: "text", required: true, satuan: null }, + { key: "nik_ayah", name: "NIK Ayah", desc: "NIK ayah kandung", type: "number", required: true, satuan: null }, + { key: "tempat_lahir_ayah", name: "Tempat Lahir Ayah", desc: "Tempat lahir ayah", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir_ayah", name: "Tanggal Lahir Ayah", desc: "Tanggal lahir ayah", type: "date", required: true, satuan: null }, + { key: "pekerjaan_ayah", name: "Pekerjaan Ayah", desc: "Pekerjaan ayah", type: "text", required: true, satuan: null }, + { key: "alamat_ayah", name: "Alamat Ayah", desc: "Alamat ayah", type: "text", required: true, satuan: null }, + { key: "nama_pelapor", name: "Nama Pelapor", desc: "Nama pelapor", type: "text", required: true, satuan: null }, + { key: "hubungan_pelapor", name: "Hubungan Pelapor", desc: "Hubungan dengan anak", type: "text", required: true, satuan: null }, + { key: "alamat_pelapor", name: "Alamat Pelapor", desc: "Alamat pelapor", type: "text", required: true, satuan: null } ] }, { id: "skkelakuanbaik", name: "Surat Keterangan Kelakuan Baik (Pengantar SKCK)", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau KK", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau KK", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true }, - { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, + { key: "nik", name: "NIK", desc: "Nomor Induk Kependudukan", type: "number", required: true, satuan: null }, + { key: "nama", name: "Nama Lengkap", desc: "Nama sesuai KTP", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, { key: "agama", @@ -177,152 +177,152 @@ export const categoryPelayananSurat = [ desc: "Agama", type: "enum", options: enumAgama, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan", type: "text", required: true }, - { key: "polsek", name: "Polsek Tujuan", desc: "Polsek tujuan", type: "text", required: true } + { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true, satuan: null }, + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan", type: "text", required: true, satuan: null }, + { key: "polsek", name: "Polsek Tujuan", desc: "Polsek tujuan", type: "text", required: true, satuan: null } ] }, { id: "skkematian", name: "Surat Keterangan Kematian", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau KK", required: true }, - { key: "surat_kematian", name: "Surat Keterangan Kematian", desc: "Surat keterangan kematian dari rumah sakit/dokter (jika ada)", required: false } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP atau KK", required: true, satuan: null }, + { key: "surat_kematian", name: "Surat Keterangan Kematian", desc: "Surat keterangan kematian dari rumah sakit/dokter (jika ada)", required: false, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik_pelapor", name: "NIK Pelapor", desc: "NIK pelapor", type: "number", required: true }, - { key: "nama_pelapor", name: "Nama Pelapor", desc: "Nama pelapor", type: "text", required: true }, - { key: "pekerjaan_pelapor", name: "Pekerjaan Pelapor", desc: "Pekerjaan pelapor", type: "text", required: true }, - { key: "alamat_pelapor", name: "Alamat Pelapor", desc: "Alamat pelapor", type: "text", required: true }, - { key: "hubungan_pelapor", name: "Hubungan Pelapor", desc: "Hubungan dengan almarhum", type: "text", required: true }, - { key: "nama_almarhum", name: "Nama Almarhum", desc: "Nama almarhum", type: "text", required: true }, - { key: "nik_almarhum", name: "NIK Almarhum", desc: "NIK almarhum", type: "number", required: true }, - { key: "tempat_lahir_almarhum", name: "Tempat Lahir", desc: "Tempat lahir almarhum", type: "text", required: true }, - { key: "tanggal_lahir_almarhum", name: "Tanggal Lahir", desc: "Tanggal lahir almarhum", type: "date", required: true }, - { key: "alamat_almarhum", name: "Alamat", desc: "Alamat terakhir", type: "text", required: true }, + { key: "nik_pelapor", name: "NIK Pelapor", desc: "NIK pelapor", type: "number", required: true, satuan: null }, + { key: "nama_pelapor", name: "Nama Pelapor", desc: "Nama pelapor", type: "text", required: true, satuan: null }, + { key: "pekerjaan_pelapor", name: "Pekerjaan Pelapor", desc: "Pekerjaan pelapor", type: "text", required: true, satuan: null }, + { key: "alamat_pelapor", name: "Alamat Pelapor", desc: "Alamat pelapor", type: "text", required: true, satuan: null }, + { key: "hubungan_pelapor", name: "Hubungan Pelapor", desc: "Hubungan dengan almarhum", type: "text", required: true, satuan: null }, + { key: "nama_almarhum", name: "Nama Almarhum", desc: "Nama almarhum", type: "text", required: true, satuan: null }, + { key: "nik_almarhum", name: "NIK Almarhum", desc: "NIK almarhum", type: "number", required: true, satuan: null }, + { key: "tempat_lahir_almarhum", name: "Tempat Lahir", desc: "Tempat lahir almarhum", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir_almarhum", name: "Tanggal Lahir", desc: "Tanggal lahir almarhum", type: "date", required: true, satuan: null }, + { key: "alamat_almarhum", name: "Alamat", desc: "Alamat terakhir", type: "text", required: true, satuan: null }, { key: "agama_almarhum", name: "Agama Almarhum", desc: "Agama almarhum", type: "enum", options: enumAgama, - required: true + required: true, satuan: null }, - { key: "tanggal_kematian", name: "Tanggal Kematian", desc: "Tanggal meninggal dunia", type: "date", required: true }, - { key: "waktu_kematian", name: "Waktu Kematian", desc: "Waktu meninggal dunia", type: "text", required: true }, - { key: "tempat_kematian", name: "Tempat Kematian", desc: "Tempat meninggal dunia", type: "text", required: true }, - { key: "penyebab_kematian", name: "Penyebab Kematian", desc: "Penyebab meninggal dunia", type: "text", required: true } + { key: "tanggal_kematian", name: "Tanggal Kematian", desc: "Tanggal meninggal dunia", type: "date", required: true, satuan: null }, + { key: "waktu_kematian", name: "Waktu Kematian", desc: "Waktu meninggal dunia", type: "text", required: true, satuan: null }, + { key: "tempat_kematian", name: "Tempat Kematian", desc: "Tempat meninggal dunia", type: "text", required: true, satuan: null }, + { key: "penyebab_kematian", name: "Penyebab Kematian", desc: "Penyebab meninggal dunia", type: "text", required: true, satuan: null } ] }, { id: "skpenghasilan", name: "Surat Keterangan Penghasilan", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_ortu_kk", name: "KTP Orang Tua / KK", desc: "Fotokopi KTP orang tua/KK", required: true }, - { key: "surat_pernyataan", name: "Surat Pernyataan Penghasilan", desc: "Surat pernyataan penghasilan bermaterai", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_ortu_kk", name: "KTP Orang Tua / KK", desc: "Fotokopi KTP orang tua/KK", required: true, satuan: null }, + { key: "surat_pernyataan", name: "Surat Pernyataan Penghasilan", desc: "Surat pernyataan penghasilan bermaterai", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nama", name: "Nama Lengkap", desc: "Nama pemohon", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, + { key: "nama", name: "Nama Lengkap", desc: "Nama pemohon", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true }, - { key: "penghasilan", name: "Penghasilan", desc: "Jumlah penghasilan per bulan", type: "number", required: true }, - { key: "alasan", name: "Alasan Permohonan", desc: "Alasan pengajuan surat penghasilan", type: "text", required: true } + { key: "alamat", name: "Alamat", desc: "Alamat tempat tinggal", type: "text", required: true, satuan: null }, + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan pemohon", type: "text", required: true, satuan: null }, + { key: "penghasilan", name: "Penghasilan", desc: "Jumlah penghasilan per bulan", type: "number", required: true, satuan: "/Bulan" }, + { key: "alasan", name: "Alasan Permohonan", desc: "Alasan pengajuan surat penghasilan", type: "text", required: true, satuan: null } ] }, { id: "sktempatusaha", name: "Surat Keterangan Tempat Usaha", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP/KK", required: true }, - { key: "foto_lokasi", name: "Foto Lokasi Usaha", desc: "Foto lokasi usaha", required: true }, - { key: "dokumen_lahan", name: "Dokumen Lahan", desc: "SPPT/Sertifikat/surat sewa tempat usaha", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP/KK", required: true, satuan: null }, + { key: "foto_lokasi", name: "Foto Lokasi Usaha", desc: "Foto lokasi usaha", required: true, satuan: null }, + { key: "dokumen_lahan", name: "Dokumen Lahan", desc: "SPPT/Sertifikat/surat sewa tempat usaha", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "NIK pemilik", type: "number", required: true }, - { key: "nama_pemilik", name: "Nama Pemilik", desc: "Nama pemilik usaha", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, - { key: "alamat_pemilik", name: "Alamat Pemilik", desc: "Alamat pemilik", type: "text", required: true }, - { key: "nama_usaha", name: "Nama Usaha", desc: "Nama usaha", type: "text", required: true }, - { key: "bidang_usaha", name: "Bidang Usaha", desc: "Bidang usaha", type: "text", required: true }, - { key: "alamat_usaha", name: "Alamat Usaha", desc: "Alamat usaha", type: "text", required: true }, + { key: "nik", name: "NIK", desc: "NIK pemilik", type: "number", required: true, satuan: null }, + { key: "nama_pemilik", name: "Nama Pemilik", desc: "Nama pemilik usaha", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, + { key: "alamat_pemilik", name: "Alamat Pemilik", desc: "Alamat pemilik", type: "text", required: true, satuan: null }, + { key: "nama_usaha", name: "Nama Usaha", desc: "Nama usaha", type: "text", required: true, satuan: null }, + { key: "bidang_usaha", name: "Bidang Usaha", desc: "Bidang usaha", type: "text", required: true, satuan: null }, + { key: "alamat_usaha", name: "Alamat Usaha", desc: "Alamat usaha", type: "text", required: true, satuan: null }, { key: "status_tempat", name: "Status Tempat Usaha", desc: "Status kepemilikan tempat usaha", type: "enum", options: enumStatusTempatUsaha, - required: true + required: true, satuan: null }, - { key: "luas_usaha", name: "Luas Tempat Usaha", desc: "Luas tempat usaha (m²)", type: "number", required: true }, - { key: "jumlah_karyawan", name: "Jumlah Karyawan", desc: "Jumlah karyawan", type: "number", required: true }, - { key: "tujuan", name: "Tujuan Pembuatan Surat", desc: "Tujuan pembuatan surat keterangan", type: "text", required: true } + { key: "luas_usaha", name: "Luas Tempat Usaha", desc: "Luas tempat usaha (m²)", type: "number", required: true, satuan: "m²" }, + { key: "jumlah_karyawan", name: "Jumlah Karyawan", desc: "Jumlah karyawan", type: "number", required: true, satuan: null }, + { key: "tujuan", name: "Tujuan Pembuatan Surat", desc: "Tujuan pembuatan surat keterangan", type: "text", required: true, satuan: null } ] }, { id: "sktidakmampu", name: "Surat Keterangan Tidak Mampu", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kia_kk", name: "KTP / KIA / KK", desc: "Fotokopi KTP/KIA/KK", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kia_kk", name: "KTP / KIA / KK", desc: "Fotokopi KTP/KIA/KK", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "NIK pemohon", type: "number", required: true }, - { key: "nama Lengkap", name: "Nama", desc: "Nama pemohon", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, - { key: "alamat", name: "Alamat", desc: "Alamat pemohon", type: "text", required: true }, - { key: "alasan", name: "Alasan Permohonan", desc: "Alasan permohonan", type: "text", required: true } + { key: "nik", name: "NIK", desc: "NIK pemohon", type: "number", required: true, satuan: null }, + { key: "nama Lengkap", name: "Nama", desc: "Nama pemohon", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, + { key: "alamat", name: "Alamat", desc: "Alamat pemohon", type: "text", required: true, satuan: null }, + { key: "alasan", name: "Alasan Permohonan", desc: "Alasan permohonan", type: "text", required: true, satuan: null } ] }, { id: "skusaha", name: "Surat Keterangan Usaha", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP/KK", required: true }, - { key: "foto_lokasi", name: "Foto Lokasi Usaha", desc: "Foto lokasi usaha", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kk", name: "KTP / KK", desc: "Fotokopi KTP/KK", required: true, satuan: null }, + { key: "foto_lokasi", name: "Foto Lokasi Usaha", desc: "Foto lokasi usaha", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nama", name: "Nama Lengkap", desc: "Nama pemilik usaha", type: "text", required: true }, + { key: "nama", name: "Nama Lengkap", desc: "Nama pemilik usaha", type: "text", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin pemilik usaha", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, - { key: "negara", name: "Kewarganegaraan", desc: "Kewarganegaraan", type: "text", required: true }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, + { key: "negara", name: "Kewarganegaraan", desc: "Kewarganegaraan", type: "text", required: true, satuan: null }, { key: "agama", name: "Agama", desc: "Agama", type: "enum", options: enumAgama, - required: true + required: true, satuan: null }, { key: "status_perkawinan", @@ -330,54 +330,54 @@ export const categoryPelayananSurat = [ desc: "Status perkawinan", type: "enum", options: enumStatusPerkawinan, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat", type: "text", required: true }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan", type: "text", required: true }, - { key: "jenis_usaha", name: "Jenis Usaha", desc: "Jenis usaha", type: "text", required: true }, - { key: "alamat_usaha", name: "Alamat Usaha", desc: "Alamat usaha", type: "text", required: true } + { key: "alamat", name: "Alamat", desc: "Alamat", type: "text", required: true, satuan: null }, + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan", type: "text", required: true, satuan: null }, + { key: "jenis_usaha", name: "Jenis Usaha", desc: "Jenis usaha", type: "text", required: true, satuan: null }, + { key: "alamat_usaha", name: "Alamat Usaha", desc: "Alamat usaha", type: "text", required: true, satuan: null } ] }, { id: "skyatimpiatu", name: "Surat Keterangan Yatim / Piatu / Yatim Piatu", syaratDokumen: [ - { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true }, - { key: "ktp_kia_kk", name: "KTP / KIA / KK", desc: "Fotokopi KTP/KIA/KK", required: true } + { key: "pengantar_kelian", name: "Pengantar Kelian", desc: "Surat Pengantar Kelian Banjar Dinas", required: true, satuan: null }, + { key: "ktp_kia_kk", name: "KTP / KIA / KK", desc: "Fotokopi KTP/KIA/KK", required: true, satuan: null } ], dataText: [], dataPelengkap: [ - { key: "nik", name: "NIK", desc: "NIK anak", type: "number", required: true }, - { key: "nama", name: "Nama", desc: "Nama anak", type: "text", required: true }, - { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true }, - { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true }, + { key: "nik", name: "NIK", desc: "NIK anak", type: "number", required: true, satuan: null }, + { key: "nama", name: "Nama", desc: "Nama anak", type: "text", required: true, satuan: null }, + { key: "tempat_lahir", name: "Tempat Lahir", desc: "Tempat lahir", type: "text", required: true, satuan: null }, + { key: "tanggal_lahir", name: "Tanggal Lahir", desc: "Tanggal lahir", type: "date", required: true, satuan: null }, { key: "jenis_kelamin", name: "Jenis Kelamin", desc: "Jenis kelamin anak", type: "enum", options: enumJenisKelamin, - required: true + required: true, satuan: null }, - { key: "alamat", name: "Alamat", desc: "Alamat", type: "text", required: true }, - { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan (jika ada)", type: "text", required: false }, - { key: "nama_ayah", name: "Nama Ayah", desc: "Nama ayah", type: "text", required: true }, + { key: "alamat", name: "Alamat", desc: "Alamat", type: "text", required: true, satuan: null }, + { key: "pekerjaan", name: "Pekerjaan", desc: "Pekerjaan (jika ada)", type: "text", required: false, satuan: null }, + { key: "nama_ayah", name: "Nama Ayah", desc: "Nama ayah", type: "text", required: true, satuan: null }, { key: "status_ayah", name: "Status Ayah", desc: "Status ayah", type: "enum", options: enumStatusHidup, - required: true + required: true, satuan: null }, - { key: "nama_ibu", name: "Nama Ibu", desc: "Nama ibu", type: "text", required: true }, + { key: "nama_ibu", name: "Nama Ibu", desc: "Nama ibu", type: "text", required: true, satuan: null }, { key: "status_ibu", name: "Status Ibu", desc: "Status ibu", type: "enum", options: enumStatusHidup, - required: true + required: true, satuan: null } ] } diff --git a/src/pages/darmasaba/surat.tsx b/src/pages/darmasaba/surat.tsx index feadcbc..1aa9d1e 100644 --- a/src/pages/darmasaba/surat.tsx +++ b/src/pages/darmasaba/surat.tsx @@ -31,7 +31,7 @@ import { IconInfoCircle, IconNotes, IconPhone, - IconUpload, + IconUpload } from "@tabler/icons-react"; import dayjs from "dayjs"; import "dayjs/locale/id"; @@ -527,6 +527,10 @@ export default function FormSurat() { (n: any) => n.key == item.key, )?.value } + rightSection={ + item.satuan != null && + {item.satuan} + } /> )} diff --git a/src/pages/darmasaba/update_data_surat.tsx b/src/pages/darmasaba/update_data_surat.tsx index 41a5372..473e31d 100644 --- a/src/pages/darmasaba/update_data_surat.tsx +++ b/src/pages/darmasaba/update_data_surat.tsx @@ -781,6 +781,10 @@ function DataUpdate({ dataPelengkap.find((n: any) => n.key == item.key)?.value } disabled={status != "ditolak" && status != "antrian"} + rightSection={ + item.satuan != null && + {item.satuan} + } /> )} @@ -789,7 +793,7 @@ function DataUpdate({ } > diff --git a/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx b/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx index 64d8ac7..e379a2f 100644 --- a/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx +++ b/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx @@ -123,7 +123,7 @@ function DetailDataPengajuan({ const [permissions, setPermissions] = useState([]); const [viewImg, setViewImg] = useState({ file: "", folder: "" }); const [uploading, setUploading] = useState({ ok: false, file: "" }); - const [editValue, setEditValue] = useState({ id: "", jenis: "", val: "", option: null as any, type: "", key: "" }) + const [editValue, setEditValue] = useState({ id: "", jenis: "", val: "", satuan: null as string | null, option: null as any, type: "", key: "" }) const [openEdit, setOpenEdit] = useState(false) const [loadingUpdate, setLoadingUpdate] = useState(false) const [loadingFS, setLoadingFS] = useState({ value: false, text: "" }) @@ -368,6 +368,10 @@ function DetailDataPengajuan({ type={editValue.type} onChange={(e) => { setEditValue({ ...editValue, val: e.target.value }) }} value={editValue.val} + rightSection={ + editValue.satuan != null && + {editValue.satuan} + } /> )} @@ -575,13 +579,13 @@ function DetailDataPengajuan({ direction="row" > - {_.upperFirst(item.value)} + {_.upperFirst(item.value)} {item.satuan} { - setEditValue({ id: item.id, val: item.value, type: item.type, option: item.options, jenis: item.jenis, key: item.key }) + setEditValue({ id: item.id, val: item.value, type: item.type, satuan: item.satuan, option: item.options, jenis: item.jenis, key: item.key }) setOpenEdit(true) }}> diff --git a/src/server/routes/pelayanan_surat_route.ts b/src/server/routes/pelayanan_surat_route.ts index 1090d0a..1311d9f 100644 --- a/src/server/routes/pelayanan_surat_route.ts +++ b/src/server/routes/pelayanan_surat_route.ts @@ -315,6 +315,7 @@ const PelayananRoute = new Elysia({ }[]; name: string; desc: string; key: string; + satuan?: string; }[]; const refMap = new Map( @@ -336,6 +337,7 @@ const PelayananRoute = new Elysia({ type: ref?.type ?? "", options: ref?.options ?? [], order: ref?.order ?? Infinity, + satuan: ref?.satuan ?? null }; }) .sort((a, b) => a.order - b.order) @@ -712,6 +714,7 @@ const PelayananRoute = new Elysia({ desc: string; key: string; required: boolean; + satuan?: string; }[]; const refMap = new Map( @@ -734,7 +737,8 @@ const PelayananRoute = new Elysia({ type: ref?.type ?? "", options: ref?.options ?? [], order: ref?.order ?? Infinity, - required: ref?.required ?? true + required: ref?.required ?? true, + satuan: ref?.satuan ?? null }; }) .sort((a, b) => a.order - b.order)