Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-STK-007 |
| Deskripsi | Mutasi work center: memindahkan barang antar area / work center di dalam satu cabang atau antar cabang, lalu memproses transfer satu per satu atau massal |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User melihat daftar mutasi work center (tanggal, nomor invoice, cabang asal, cabang tujuan, work center asal, work center tujuan, status approval)
- User mencari nomor invoice dan memfilter periode tanggal, cabang asal, cabang tujuan, dan kurir
- User membuat mutasi work center: nomor invoice otomatis atau manual, tanggal, pilihan beda cabang atau satu cabang, cabang (atau cabang asal dan tujuan), work center asal dan tujuan, keterangan, serta baris barang dengan kuantitas dan satuan
- Sistem menampilkan stok barang sebagai acuan kuantitas mutasi
- User memproses transfer satu invoice atau beberapa invoice sekaligus (transfer massal)
- User melihat detail dan mencetak mutasi work center
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Sistem menampilkan daftar mutasi work center dengan pagination, pencarian, filter, dan pengaturan kolom |
| FR-02 | User dapat membuat mutasi work center di dalam satu cabang atau antar cabang |
| FR-03 | Sistem hanya menampilkan work center milik cabang yang dipilih |
| FR-04 | Sistem memvalidasi tanggal, cabang, work center asal dan tujuan wajib dan tidak boleh sama, barang tidak duplikat, dan qty tidak melebihi stok kecuali punya hak stok minus |
| FR-05 | Sistem menyimpan setiap baris barang sebagai data transfer dengan status approval disetujui |
| FR-06 | User dapat memproses transfer untuk invoice berstatus approved atau not required, satuan maupun massal |
| FR-07 | User dapat melihat detail dan mencetak mutasi work center |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat dan memfilter daftar mutasi work center |
| UC-02 | Membuat mutasi work center |
| UC-03 | Memproses transfer mutasi work center |
| UC-04 | Memproses transfer mutasi work center secara massal |
| UC-05 | Melihat detail dan mencetak mutasi work center |
4. Use Case Scenario
UC-01 : Melihat dan memfilter daftar mutasi work center
| Aktor | User brand dengan hak akses mutasi gudang |
| Deskripsi | User melihat daftar mutasi work center dan menyaringnya |
| Prekondisi | User sudah login dan membuka route mutasi work center |
| Alur utama | 1. User membuka halaman Mutasi WC. 2. Sistem menampilkan daftar (tanggal, nomor invoice, cabang asal, cabang tujuan, WC asal, WC tujuan, approval status). 3. User mengisi nomor invoice atau filter periode, cabang asal, cabang tujuan, kurir. 4. Sistem memuat ulang daftar. |
| Alur negatif | - Jika tidak ada data, tabel menampilkan "Mutasi WC Kosong". - Jika work center pada data tidak lengkap, kolom menampilkan "Silahkan UpdateWorkCenter". |
| Bisnis rule | - Halaman tidak ada di menu default, diakses lewat route /brand/:id/mutasi-wc.- Tombol tambah mengikuti hak akses basic #mutasi-gudang, aksi baris mengikuti #transfer-workcenter. |
| Postkondisi | Daftar mutasi WC tampil |
| Trigger | User membuka halaman Mutasi WC |
| Kode FR | FR-01 |
UC-02 : Membuat mutasi work center
| Aktor | User brand dengan hak akses basic mutasi gudang |
| Deskripsi | User mencatat perpindahan barang antar area / work center |
| Prekondisi | Cabang memiliki work center aktif |
| Alur utama | 1. User klik Tambah. 2. User mengisi nomor invoice (otomatis / manual) dan tanggal. 3. User memilih apakah beda cabang. Jika Ya, pilih cabang asal dan tujuan. Jika Bukan, pilih satu cabang. 4. User memilih work center asal dan tujuan dari cabang terkait, dan mengisi keterangan. 5. User menambah baris barang, satuan, dan qty. 6. User klik Simpan. 7. Sistem menyimpan dan kembali ke daftar. |
| Alur negatif | - Jika informasi belum lengkap, muncul alert "Tolong lengkapi form dengan benar!". - Jika rincian barang salah, muncul alert "Oops ada yg salah di rincian barang". - Jika WC asal sama dengan tujuan, muncul pesan "Work Center Asal tidak boleh sama dengan Work Center Tujuan". - Jika cabang asal sama dengan tujuan (mode beda cabang), muncul pesan "Cabang Asal tidak boleh sama dengan Cabang Tujuan". - Jika server gagal, muncul notifikasi error. |
| Bisnis rule | - Dalam mode satu cabang, cabang asal dan tujuan sama dengan cabang terpilih. - Dropdown work center nonaktif sampai cabang dipilih. - Qty melebihi stok hanya dengan hak akses #mutasi-stok-minus.- Setiap baris disimpan dengan status approval approved. |
| Postkondisi | Notifikasi "Transfer cabang Berhasil dibuat" |
| Trigger | User klik Simpan |
| Kode FR | FR-02 FR-03 FR-04 FR-05 |
UC-03 : Memproses transfer mutasi work center
| Aktor | User brand |
| Deskripsi | User menjalankan proses pemindahan stok untuk satu mutasi WC |
| Prekondisi | Status approval invoice approved atau not_required |
| Alur utama | 1. User klik "Proccess Transfer" pada baris. 2. Sistem memproses transfer. 3. Sistem menampilkan notifikasi berhasil. |
| Alur negatif | - Jika server gagal, muncul notifikasi error. |
| Bisnis rule | - Aksi hanya tampil untuk status approval approved / not required. |
| Postkondisi | Notifikasi "Berhasil Proses Transfer Massal" |
| Trigger | User klik Proccess Transfer |
| Kode FR | FR-06 |
UC-04 : Memproses transfer mutasi work center secara massal
| Aktor | User brand |
| Deskripsi | User memproses beberapa mutasi WC sekaligus |
| Prekondisi | Ada beberapa invoice dengan status approval approved / not required |
| Alur utama | 1. User mengaktifkan mode transfer massal. 2. User mencentang invoice yang memenuhi syarat. 3. User klik proses. 4. Sistem memproses semua invoice terpilih. |
| Alur negatif | - Jika tidak ada invoice dicentang, tidak ada proses. - Jika server gagal, muncul notifikasi error. |
| Bisnis rule | - Checkbox hanya muncul untuk status approval approved / not required. |
| Postkondisi | Notifikasi "Berhasil Proses Transfer Massal" |
| Trigger | User klik proses transfer massal |
| Kode FR | FR-06 |
UC-05 : Melihat detail dan mencetak mutasi work center
| Aktor | User brand dengan hak akses view / reprint transfer workcenter |
| Deskripsi | User melihat isi mutasi WC dan mencetaknya |
| Prekondisi | Data ada |
| Alur utama | 1. User klik Lihat. 2. Sistem menampilkan informasi dan baris barang. 3. User klik Print, memilih kertas, lalu mencetak. |
| Alur negatif | - Jika gagal memuat atau menyiapkan cetak, muncul notifikasi error. |
| Bisnis rule | - Print mengikuti hak akses reprint dan riwayat cetak. |
| Postkondisi | Detail tampil atau dokumen tercetak |
| Trigger | User klik Lihat / Print |
| Kode FR | FR-07 |
5. Data Flow Diagram
DFD-01 — Alur data mutasi work center
6. Sequence Diagram
SD-01 — UC-01 : Melihat dan memfilter daftar mutasi work center
SD-02 — UC-02 : Membuat mutasi work center
SD-03 — UC-03 : Memproses transfer mutasi work center
SD-04 — UC-04 : Memproses transfer mutasi work center secara massal
SD-05 — UC-05 : Melihat detail dan mencetak mutasi work center
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
GET /gudang/transfer | existing | - |
GET /gudang/transfer/:id | existing | - |
POST /gudang/transfer/bulk | existing | - |
POST /gudang/transfer/process | existing | - |
GET /workcenter | existing | - |
POST /report-stok/get-saldo-bulk | existing | - |