Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-LAP-025 |
| Deskripsi | Laporan riwayat pengembalian dana dan potong hutang dari retur pembelian, lengkap dengan filter mode dan ekspor |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User membuka riwayat pengembalian dana dari daftar Laporan Pembelian.
- User memfilter periode, cabang, mode retur (potong hutang, pengembalian dana, atau semua), nomor invoice pembelian, dan nomor invoice retur.
- User melihat tanggal retur, invoice pembelian, kuantitas faktur, invoice retur, kuantitas retur, dan total nominal.
- User membuka dokumen pembelian atau retur asal.
- User mengekspor laporan ke Excel sesuai hak akses.
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Halaman /brand/:id/riwayat-pengembalian-dana menampilkan riwayat retur pembelian sesuai filter |
| FR-02 | User wajib memilih mode retur: potong hutang, pengembalian dana, atau semua |
| FR-03 | Sistem menampilkan kartu total nominal retur |
| FR-04 | User dapat membuka invoice pembelian dan invoice retur dari baris laporan |
| FR-05 | User dengan izin Excel dapat mengekspor riwayat ke file Excel |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat riwayat pengembalian dana |
| UC-02 | Mengekspor riwayat pengembalian dana ke Excel |
4. Use Case Scenario
UC-01 : Melihat riwayat pengembalian dana
| Aktor | User pembelian / akuntansi |
| Deskripsi | User melihat riwayat retur pembelian yang menghasilkan potong hutang atau pengembalian dana |
| Prekondisi | User memiliki izin #lap-pengembalian-dana |
| Alur utama | 1. User membuka Laporan Pembelian lalu kartu riwayat pengembalian dana. 2. User mengisi periode, cabang, dan mode retur. 3. User dapat memfilter nomor invoice pembelian atau invoice retur. 4. User menekan tombol tampilkan. 5. Sistem menampilkan tanggal retur, nomor invoice pembelian, qty faktur, nomor invoice retur, qty retur, dan total nominal. 6. Sistem menampilkan kartu total nominal. |
| Alur negatif | - Jika periode kosong, muncul alert "Periode Tidak Boleh Kosong". - Jika mode retur kosong, muncul alert "Mode Retur harus diisi!". - Jika data kosong, muncul "Data yg anda filter tidak ditemukan silahkan ganti filter". |
| Bisnis rule | - Mode potong hutang memfilter metode return hutang. - Mode pengembalian dana memfilter metode return uang. - Mode semua tidak menambah batasan metode return. - Tombol kembali mengarah ke hub laporan pembelian. |
| Postkondisi | Riwayat retur dan total nominal tampil |
| Trigger | User menekan tombol tampilkan |
| Kode FR | FR-01 FR-02 FR-03 FR-04 |
UC-02 : Mengekspor riwayat pengembalian dana ke Excel
| Aktor | User dengan izin Excel |
| Deskripsi | User mengunduh riwayat pengembalian dana sebagai file Excel |
| Prekondisi | User memiliki izin #lap-pengembalian-dana aksi excel |
| Alur utama | 1. User menekan tombol export Excel. 2. Sistem menyusun kolom tanggal retur, invoice pembelian, qty faktur, invoice retur, qty retur, dan total nominal. 3. Browser mengunduh "Riwayat Pengembalian Dana.xlsx". |
| Alur negatif | - Jika periode kosong, muncul alert "Periode Tidak Boleh Kosong". - Jika data belum ada, muncul "Data tidak ditemukan". |
| Bisnis rule | - Ekspor dibuat di browser tanpa API export terpisah. |
| Postkondisi | File Excel terunduh |
| Trigger | User menekan tombol export Excel |
| Kode FR | FR-05 |
5. Data Flow Diagram
DFD-01 — Alur data riwayat pengembalian dana
6. Sequence Diagram
SD-01 — UC-01 : Melihat riwayat pengembalian dana
SD-02 — UC-02 : Mengekspor riwayat pengembalian dana ke Excel
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
POST /laporan-pembelian/invoice-return-pembelian-report | existing | - |
GET /gudang | existing | - |