Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-STK-005
DeskripsiPemakaian barang: mencatat pengurangan stok bukan karena penjualan (mis. pemakaian internal) per cabang, dibebankan ke akun beban, dengan cetak invoice dan buka kembali ke draft untuk koreksi
Nomor Revisi1
Tanggal2026-10-04
KeteranganDokumentasi baseline dari dokumentasi fitur demo dan kode FE

1. Ringkasan​

a. In scope​

  • User melihat daftar invoice pemakaian (nomor invoice, tanggal, cabang, status Done / Draft)
  • User mencari nomor invoice serta memfilter periode tanggal invoice dan barang
  • User membuat invoice pemakaian: nomor invoice otomatis atau manual, tanggal, lokasi (opsional), cabang, keterangan, cluster, akun beban, serta baris barang dengan qty, satuan, dan keterangan baris
  • Pemakaian langsung tersimpan final dan mengurangi stok cabang
  • User berwenang membuka kembali invoice ke draft, lalu mengubah atau menghapusnya
  • User melihat detail pemakaian beserta jurnal stok dan mencetak invoice

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01Sistem menampilkan daftar invoice pemakaian dengan pagination, pencarian nomor invoice, dan filter periode serta barang
FR-02Sistem membatasi daftar ke invoice milik user sendiri jika user tidak punya hak akses lihat semua user
FR-03User dapat membuat invoice pemakaian dengan cabang, akun beban, dan minimal satu baris barang
FR-04Sistem memvalidasi tanggal, cabang, akun beban wajib, barang tidak duplikat, satuan wajib, dan qty minimal 0,1
FR-05Sistem menyediakan pilihan akun beban dari kelompok akun perkiraan beban / biaya
FR-06Pemakaian disimpan sebagai transaksi final yang mengurangi stok (qty kurang)
FR-07User berwenang dapat mengubah invoice final kembali ke draft
FR-08User dapat mengubah dan menghapus invoice yang berstatus draft
FR-09User dapat melihat detail dan mencetak invoice pemakaian

3. Use Case List​

KodeDeskripsi
UC-01Melihat dan memfilter daftar pemakaian barang
UC-02Membuat invoice pemakaian barang
UC-03Membuka kembali (unlock) invoice pemakaian ke draft
UC-04Mengubah invoice pemakaian draft
UC-05Menghapus invoice pemakaian draft
UC-06Melihat detail dan mencetak invoice pemakaian

4. Use Case Scenario​

UC-01 : Melihat dan memfilter daftar pemakaian barang​

AktorUser brand dengan hak akses pemakaian barang
DeskripsiUser melihat daftar pemakaian dan menyaringnya
PrekondisiUser sudah login di brand aktif
Alur utama1. User membuka menu Inventory, Pemakaian.
2. Sistem menampilkan daftar (nomor invoice, tanggal, cabang, status).
3. User mengetik nomor invoice, atau membuka Filter dan memilih periode tanggal invoice dan barang.
4. Sistem memuat ulang daftar.
Alur negatif- Jika gagal memuat, daftar dikosongkan.
Bisnis rule- Daftar hanya memuat transaksi bermodul Pemakaian.
- User tanpa hak akses lihat semua user hanya melihat invoice miliknya.
- Status final tampil Done, selain itu Draft.
PostkondisiDaftar pemakaian sesuai filter tampil
TriggerUser membuka halaman Pemakaian
Kode FRFR-01
FR-02

UC-02 : Membuat invoice pemakaian barang​

AktorUser brand dengan hak akses basic pemakaian barang
DeskripsiUser mencatat barang yang dipakai sehingga stok berkurang dan dibebankan ke akun beban
PrekondisiMaster cabang, barang, dan akun perkiraan tersedia
Alur utama1. User klik Buat Invoice.
2. User memilih nomor invoice otomatis atau manual, mengisi tanggal, lokasi, cabang, keterangan, cluster, dan akun beban.
3. User menambah baris barang, qty, satuan, dan keterangan.
4. User klik Simpan.
5. Sistem menyimpan invoice dan kembali ke daftar.
Alur negatif- Jika ada field wajib kosong, muncul notifikasi "Oops ada data yang kosong!".
- Jika menambah baris saat baris sebelumnya belum lengkap, muncul peringatan "Nama Barang, Qty dan Satuan Tidak Boleh Kosong!".
- Jika server gagal, muncul notifikasi error dengan pesan server.
Bisnis rule- Akun beban wajib, dipilih dari akun dengan awalan nomor 13, 4, 5, 6, 7, 8, 9.
- Barang yang sama tidak boleh dipilih dua kali.
- Qty minimal 0,1 dan dikirim sebagai qty kurang dalam satuan terkecil.
- Invoice langsung final (tidak ada simpan draft di form tambah).
- Cluster hanya tampil jika fitur #cluster aktif, lokasi jika fitur #lokasi aktif.
PostkondisiNotifikasi "Berhasil buat Pemakaian Barang", stok cabang berkurang
TriggerUser klik Simpan
Kode FRFR-03
FR-04
FR-05
FR-06

UC-03 : Membuka kembali (unlock) invoice pemakaian ke draft​

AktorUser brand dengan hak akses draft pemakaian barang
DeskripsiUser mengembalikan invoice final ke draft agar dapat dikoreksi
PrekondisiInvoice final
Alur utama1. User klik "Ubah ke Simpan Draft" dari daftar atau halaman lihat.
2. Sistem membuka kunci invoice.
3. Status berubah menjadi Draft.
Alur negatif- Jika server menolak, muncul notifikasi error.
Bisnis rule- Butuh hak akses #can-draft dan hak draft pada #pemakaian-barang.
PostkondisiNotifikasi "Berhasil Ubah ke Simpan Draft Invoice (nomor)"
TriggerUser klik Ubah ke Simpan Draft
Kode FRFR-07

UC-04 : Mengubah invoice pemakaian draft​

AktorUser brand dengan hak akses basic pemakaian barang
DeskripsiUser memperbaiki invoice pemakaian yang sudah dibuka ke draft
PrekondisiInvoice berstatus draft
Alur utama1. User klik Edit.
2. Sistem memuat detail invoice dan baris barang.
3. User mengubah informasi atau baris barang.
4. User klik Simpan.
5. Sistem memperbarui invoice dan menyimpannya kembali sebagai final.
Alur negatif- Jika invoice tidak ditemukan, user dikembalikan ke daftar.
- Validasi sama dengan UC-02.
Bisnis rule- Edit hanya untuk invoice draft.
- Baris yang dihapus dikirim dengan penanda deleted.
PostkondisiInvoice terupdate dan final kembali
TriggerUser klik Edit
Kode FRFR-04
FR-08

UC-05 : Menghapus invoice pemakaian draft​

AktorUser brand dengan hak akses basic pemakaian barang
DeskripsiUser menghapus invoice pemakaian yang masih draft
PrekondisiInvoice berstatus draft
Alur utama1. User klik Hapus.
2. Sistem menghapus invoice.
3. Daftar dimuat ulang.
Alur negatif- Jika server gagal, muncul notifikasi error.
Bisnis rule- Hapus hanya untuk invoice draft dan dijalankan tanpa dialog konfirmasi.
PostkondisiNotifikasi "Berhasil Hapus Invoice (nomor)"
TriggerUser klik Hapus
Kode FRFR-08

UC-06 : Melihat detail dan mencetak invoice pemakaian​

AktorUser brand dengan hak akses view / reprint pemakaian barang
DeskripsiUser melihat isi pemakaian dan mencetak invoicenya
PrekondisiInvoice ada
Alur utama1. User klik Lihat.
2. Sistem menampilkan informasi invoice, baris barang, dan jurnal stok.
3. Untuk invoice final, user klik Cetak Invoice.
4. Sistem menandai invoice sudah dicetak lalu mencetak dengan kop surat.
Alur negatif- Jika invoice tidak ditemukan, user dikembalikan ke daftar.
- Jika gagal menyiapkan cetak, muncul notifikasi error.
Bisnis rule- Cetak hanya untuk invoice final dan mengikuti hak akses reprint.
PostkondisiDetail tampil atau invoice tercetak
TriggerUser klik Lihat / Cetak Invoice
Kode FRFR-09

5. Data Flow Diagram​

DFD-01 — Alur data pemakaian barang​

6. Sequence Diagram​

SD-01 — UC-01 : Melihat dan memfilter daftar pemakaian barang​

SD-02 — UC-02 : Membuat invoice pemakaian barang​

SD-03 — UC-03 : Membuka kembali (unlock) invoice pemakaian ke draft​

SD-04 — UC-04 : Mengubah invoice pemakaian draft​

SD-05 — UC-05 : Menghapus invoice pemakaian draft​

SD-06 — UC-06 : Melihat detail dan mencetak invoice pemakaian​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
GET /invoice-penyesuaian-stokexisting-
GET /invoice-penyesuaian-stok/:idexisting-
POST /invoice-penyesuaian-stokexisting-
PUT /invoice-penyesuaian-stok/:idexisting-
PUT /invoice-penyesuaian-stok/invoice-only/:idexisting-
PUT /invoice-penyesuaian-stok/unlock/:idexisting-
DELETE /invoice-penyesuaian-stok/:idexisting-
GET /rekeningexisting-