# PRODUCT REQUIREMENTS DOCUMENT (PRD)

# HALAMAN MASTER SURAT

## SIAD DESA SIOFA BANUA

---

# TUJUAN HALAMAN

Halaman Master Surat berfungsi sebagai pusat pengelolaan template surat resmi yang digunakan oleh sistem untuk menghasilkan surat secara otomatis.

Master Surat bukan merupakan halaman pengajuan surat, bukan halaman verifikasi surat, bukan halaman persetujuan surat, dan bukan halaman arsip surat.

Master Surat hanya bertugas menyediakan template surat yang akan digunakan oleh Generator Surat ketika admin menyetujui pengajuan surat warga.

---

# RUANG LINGKUP

Pada versi penelitian ini hanya tersedia tiga jenis surat.

1. Surat Keterangan Domisili
2. Surat Keterangan Usaha
3. Surat Keterangan Tidak Mampu

Jenis surat bersifat tetap dan tidak dapat ditambah maupun dihapus melalui halaman Master Surat.

Administrator hanya diperbolehkan mengubah isi template surat.

---

# HAK AKSES

Administrator

* Melihat daftar template
* Melihat detail template
* Mengubah template
* Mengaktifkan atau menonaktifkan template

Warga

* Tidak memiliki akses ke halaman Master Surat

---

# HALAMAN INDEX

Judul:

Master Surat

Deskripsi:

Kelola template surat resmi yang digunakan sistem untuk menghasilkan surat secara otomatis.

---

# KARTU STATISTIK

Tampilkan:

* Total Template
* Template Aktif
* Template Nonaktif
* Terakhir Diperbarui

---

# FILTER

Pencarian:

* Nama Surat
* Kode Surat

Filter:

* Status

---

# DATATABLE

Kolom:

* No
* Kode Surat
* Nama Surat
* Status
* Terakhir Diubah
* Aksi

---

# AKSI

Tampilkan:

* Lihat Detail
* Edit Template

Tidak ada:

* Tambah
* Hapus

---

# HALAMAN DETAIL

Tampilkan informasi:

## Informasi Template

* Kode Surat
* Nama Surat
* Judul Surat
* Status
* Tanggal Dibuat
* Terakhir Diubah

## Isi Template

Menampilkan isi template surat secara lengkap.

## Placeholder

Menampilkan seluruh placeholder yang digunakan oleh template.

---

# HALAMAN EDIT

Administrator hanya dapat mengubah:

* Judul Surat
* Isi Template
* Status

Administrator tidak dapat mengubah:

* Kode Surat
* Nama Surat
* Jenis Surat

---

# PLACEHOLDER

Template surat wajib mendukung placeholder berikut.

{{ nomor_surat }}

{{ tanggal_surat }}

{{ nama_lengkap }}

{{ nik }}

{{ nomor_kk }}

{{ tempat_lahir }}

{{ tanggal_lahir }}

{{ jenis_kelamin }}

{{ alamat }}

{{ pekerjaan }}

{{ agama }}

{{ status_perkawinan }}

{{ kewarganegaraan }}

{{ keperluan }}

{{ nama_kepala_desa }}

{{ jabatan_kepala_desa }}

Generator Surat akan mengganti seluruh placeholder tersebut secara otomatis ketika surat diterbitkan.

---

# BUSINESS RULES

BR-001

Template hanya dapat diubah oleh Administrator.

BR-002

Perubahan template tidak mengubah surat yang telah berada pada Arsip Surat.

BR-003

Perubahan template hanya berlaku pada surat yang diterbitkan setelah perubahan disimpan.

BR-004

Master Surat tidak menghasilkan PDF.

BR-005

Master Surat tidak mengubah status Pengajuan Surat.

BR-006

Master Surat tidak menyimpan arsip surat.

---

# WORKFLOW

Administrator membuka Master Surat.

↓

Administrator memilih salah satu template.

↓

Administrator mengubah template.

↓

Template disimpan.

↓

Generator Surat menggunakan template terbaru ketika admin menyetujui pengajuan surat.

↓

PDF Generator dibuat.

↓

PDF disimpan pada Arsip Surat.

---

# VALIDASI

Sistem wajib melakukan validasi berikut.

* Judul Surat wajib diisi.
* Isi Template wajib diisi.
* Status wajib dipilih.
* Placeholder tidak boleh dihapus seluruhnya.

---

# DATABASE REQUIREMENT

Master Surat menggunakan satu tabel utama yang menyimpan:

* Kode Surat
* Nama Surat
* Judul Surat
* Isi Template
* Status
* Waktu Dibuat
* Waktu Diubah

---

# AUDIT LOG

Sistem wajib menyimpan:

* Administrator yang mengubah template.
* Waktu perubahan.
* Tanggal perubahan.

---

# HASIL YANG DIHARAPKAN

* Seluruh template surat tersimpan pada satu tempat.
* Generator Surat tidak lagi menggunakan template yang ditulis di dalam source code.
* Administrator dapat mengubah format surat tanpa mengubah kode program.
* Surat yang telah berada pada Arsip Surat tetap menggunakan versi template saat surat diterbitkan.
* Master Surat menjadi satu-satunya sumber template bagi Generator Surat.
