Dokumentasi Resmi & Panduan Pengguna v2.0

Panduan Penggunaan WMS Matahari

Pusat dokumentasi lengkap operasional pergudangan untuk Toko Pusat (M1), Cabang M2 (Sepinggan), dan Cabang M3 (Ringroad).

Daftar Isi Panduan
Status Sistem
Total Produk: 1,124
Total Kategori: 50
Total Supplier: 144
Total Penjualan Kasir: 0 nota
Total Stok Fisik: 8,865 pcs

1. Gambaran Umum WMS Matahari

Semua Role

Sistem Management Gudang (Warehouse Management System / WMS) Sentra Oleh-oleh Matahari dirancang khusus untuk mengelola seluruh arus barang fisik antar-lokasi secara akurat, terstruktur, dan transparan.

Struktur Cabang Gudang:
Pusat M1
Toko Pusat / Gudang Utama

Pusat penerimaan stok dari supplier luar, pengelolaan katalog utama, serta distributor ke cabang lain.

Cabang M2
Cabang Sepinggan (M2)

Cabang outlet penjualan Sepinggan yang menerima stok transfer dari M1 dan dapat mengajukan retur.

Cabang M3
Cabang Ringroad (M3)

Cabang outlet penjualan Ringroad yang menerima stok transfer dari M1 dan dapat mengajukan retur.

Metode Pemotongan Stok FIFO (First Expired First Out):

Seluruh transaksi pengeluaran retail kasir dan transfer barang keluar secara otomatis memotong batch inventori dengan tanggal kadaluwarsa terdekat terlebih dahulu untuk meminimalkan risiko barang tenggat.

2. Hak Akses Pengguna Berdasarkan Role (RBAC)

Keamanan & Otorisasi

WMS Matahari menggunakan sistem otorisasi Role-Based Access Control (RBAC) ketat untuk menjaga integritas data katalog dan stok gudang.

Hak Akses Role Staff:
  • Melihat Katalog Produk & Stok: Dapat melihat katalog produk, stok cabang, dan modal detail 4-tab.
  • Transaksi Cepat Barang Masuk & Keluar: Dapat memproses modal cepat *Masuk* dan *Keluar* dari list produk.
  • Pengajuan Retur Cabang: Membuka dan mengirim nota pengajuan retur barang ke M1.
  • RESTRIKSI STAFF (TIDAK DIPERBOLEHKAN): Staff TIDAK BISA membuat produk baru, edit produk, hapus produk, impor master produk, maupun mengaktifkan/menonaktifkan (toggle status active/non-active) produk.
Hak Akses Role Kasir POS:
  • Redirect Otomatis saat Login: Ketika akun kasir (kasir.m1@matahari.com, kasir.m2@matahari.com, kasir.m3@matahari.com) berhasil masuk, sistem langsung mengarahkan pengguna ke layar kasir POS (/pos).
  • Menu Navigasi Khusus Kasir: Sidebar desktop dan navigasi mobile difokuskan secara eksklusif hanya pada menu transaksi ritel: Kasir POS, Riwayat Nota Transaksi, dan Shift & Buku Kas.
  • Operasional Kasir Mandiri: Buka/tutup shift kasir, pemindaian barcode barang dengan alokasi stok FEFO, perhitungan kembalian, cetak struk thermal, dan simpan pending nota (Hold).
Hak Akses Role Admin:
  • Pengelolaan Katalog Produk Penuh: Tambah produk baru, edit data produk, hapus produk, dan impor Excel catalog.
  • Toggle Status Aktif / Non-Aktif Produk: Mengubah status produk aktif atau non-aktif (produk non-aktif berubah menjadi tampilan Grayscale).
  • Pengelolaan Supplier & Kategori: Tambah/edit supplier dan kategori (termasuk via *Modal Quick Add*).
  • Persetujuan Retur Cabang: Meninjau dan melakukan approval/rejection retur dari cabang M2/M3.
Hak Akses Role Super Admin:
  • Akses Penuh Seluruh Sistem: Pengelolaan akun pengguna (User Management), Role & Permissions (RBAC), Impersonate User.
  • Audit Trail Log Aktivitas: Melihat dan mengunduh laporan seluruh riwayat tindakan pengguna sistem (`/activity-logs`).
  • Pengaturan Sistem & Laporan Opname: Pengaturan nama toko, konfigurasi sistem, dan Stock Opname pergudangan.

3. Modul Katalog Produk & SKU Generator

Admin & Staff View

Modul Katalog Produk ([`http://127.0.0.1:8000/products`](http://127.0.0.1:8000/products)) digunakan untuk mengelola data master barang, harga jual, lokasi supplier, serta stok variasi.

Langkah Tambah & Edit Produk (Khusus Admin):
  1. Membuka halaman + Tambah Produk (`/products/create`).
  2. Generate SKU Otomatis: Klik tombol Generate SKU untuk membuat Kode SKU unik (contoh: `AMP-KK-001`).
  3. Select2 Search Kategori & Supplier: Gunakan fitur pencarian Select2 pada dropdown Kategori Produk dan Supplier.
  4. Tombol Quick Add (+) Kategori / Supplier: Klik ikon `+` di sebelah dropdown untuk menambahkan Kategori atau Supplier baru secara instan via Modal tanpa reload halaman.
  5. Lokasi Supplier & Description: Isi alamat/lokasi supplier (boleh dikosongkan) dan deskripsi detail produk.
Fitur Status Active & Non-Active Produk (Grayscale):

Admin dapat mengubah status produk menjadi Non-Aktif via tombol sakelar toggle status di tabel produk. Produk non-aktif akan secara otomatis ditampilkan dengan efek warna Grayscale 100% dan ditandai badge Non-Aktif. Staff tidak diperbolehkan mengubah status ini.

Format Tampilan Variasi & Harga di Tabel Produk:

Di bawah nama variasi produk, sistem menampilkan rincian harga beli batch beserta total stok fisik dalam format `Harga(Stok)` (contoh: 7000(150) | 8000(50)).

4. Transaksi Barang Masuk (Inbound)

Admin & Staff

Modul Barang Masuk ([`http://127.0.0.1:8000/incoming-goods/create`](http://127.0.0.1:8000/incoming-goods/create)) digunakan untuk mencatat pengadaan penerimaan barang baru dari supplier ke dalam inventori gudang.

Input Manual Multi-Item:
  • Pilih Produk & Supplier via Select2 Search.
  • Isi Tanggal Kadaluwarsa (Expired Date).
  • Isi Kuantitas (Jumlah Pcs) & Harga Beli Satuan (Rp).
  • Sistem mengkalkulasi otomatis subtotal item dan total estimasi nota.
Impor Berkas Excel Penerimaan:
  • Unduh template Excel resmi dari tombol Unduh Template.
  • Isi SKU Produk, Tanggal Masuk, Expired Date, Kuantitas, dan Harga Beli.
  • Unggah berkas via menu Impor Excel Barang Masuk.

5. Transaksi Barang Keluar (Outbound)

Admin & Staff

Modul Barang Keluar ([`http://127.0.0.1:8000/outgoing-goods/create`](http://127.0.0.1:8000/outgoing-goods/create)) mendukung 5 jenis pengeluaran barang fleksibel sesuai kebutuhan operasional toko:

Pemindahan stok fisik antar-gudang cabang. Stok cabang pengirim berkurang dan stok cabang penerima otomatis bertambah. Dropdown tujuan secara otomatis memuat daftar cabang resmi.

Pengeluaran akibat barang terjual langsung kepada konsumen, toko mitra, grosir, atau event bazzar. Stok cabang berkurang tanpa menambah cabang lain.

Mengunggah berkas Excel ekspor penjualan harian mesin kasir retail. Stok cabang dipotong secara otomatis menggunakan metode **FIFO (First Expired First Out)** berdasarkan tanggal kadaluwarsa terdekat.

Pengeluaran barang yang sudah kadaluwarsa (expired), rusak kemasan, atau cacat produksi untuk dihapus dari inventori cabang.

Pengeluaran untuk keperluan sampel promosi, operasional internal, donasi CSR, atau alasan custom lainnya yang dapat diketik secara manual oleh pengguna.

6. Stok Cabang & Modal Detail 4-Tab

Semua Role

Untuk melihat rincian riwayat dan lokasi barang secara transparan, pengguna dapat mengklik tombol Detail pada tabel katalog produk.

Tab 1: Variasi Harga Beli

Menampilkan daftar semua harga beli batch dari produk yang bersangkutan.

Tab 2: Stok Cabang Batch

Rincian stok per lokasi cabang (M1/M2/M3) berserta tanggal kadaluwarsa & harga beli batch.

Tab 3: Riwayat Mutasi

Tabel histori lengkap transaksi Barang Masuk & Keluar dilengkapi harga satuan.

Tab 4: Info & Deskripsi

Informasi umum produk, lokasi supplier utama, dan catatan deskripsi.

7. Modul Retur Cabang & Approval M1

Staff Pengajuan & Admin Approval

Retur Cabang ([`http://127.0.0.1:8000/branch-returns`](http://127.0.0.1:8000/branch-returns)) memungkinkan cabang (M2/M3) mengembalikan barang ke Gudang Utama (M1).

Kategori Status Retur yang Didukung:
  • Barang Rusak: Barang mengalami kerusakan kemasan / tidak layak konsumsi.
  • Barang Sisa Jual: Pengembalian sisa stok alokasi cabang yang belum terjual.
  • Keperluan Penjualan Online: Pengalihan stok dari cabang ke pusat untuk pemenuhan pesanan marketplace online.
Alur Approval Gudang Pusat M1:

Ketika nota retur diajukan oleh cabang, status awal adalah Pending Approval. Admin Gudang M1 meninjau nota di menu Approval Retur (`/return-tx`). Begitu disetujui, stok cabang pengirim berkurang dan stok Gudang M1 otomatis bertambah.

8. Laporan, Stock Opname, & Audit Trail Log

Super Admin & Admin

Sistem menyediakansuite pelaporan pergudangan komprehensif ([`http://127.0.0.1:8000/reports/inventory`](http://127.0.0.1:8000/reports/inventory)) dan audit log riwayat aktivitas ([`http://127.0.0.1:8000/activity-logs`](http://127.0.0.1:8000/activity-logs)).

Stock Opname Fisik:

Melakukan pencatatan selisih stok fisik vs stok sistem secara berkala dengan audit log otomatis.

Audit Trail Log Aktivitas:

Merekam setiap aksi buat, edit, hapus, impor, ekspor, dan login pengguna untuk akuntabilitas penuh.

9. Kasir (Point of Sale / POS) & Penjualan Ritel

Kasir, Staff, & Admin

Modul Kasir POS (http://127.0.0.1:8000/pos) dirancang untuk transaksi penjualan ritel langsung ke pelanggan dengan integrasi pemotongan stok otomatis di cabang aktif bersangkutan (M1, M2, M3).

Fitur Unggulan Sistem Kasir POS:
Scanner Barcode & Audio Feedback:

Input barcode otomatis fokus dan siap dipindai dengan scanner optik USB/Bluetooth. Sistem menyertakan efek audio beep scanner dan chime checkout bawaan browser (Web Audio API) tanpa file audio eksternal.

Alokasi Stok FEFO Otomatis:

Pemotongan stok di cabang kasir menggunakan algoritma First Expired First Out (FEFO) dengan memprioritaskan batch inventori bertanggal kedaluwarsa paling awal (ORDER BY expired_date ASC).

Tahan & Buka Nota (Hold Bill):

Jika pelanggan ingin mengambil barang tambahan, kasir dapat menahan transaksi sementara (Hold Order) dan melayani antrean berikutnya, lalu memanggil kembali nota tertahan (Resume Order) dengan satu klik.

Shift Kasir & Deteksi Selisih Kas:

Kasir wajib membuka shift dengan modal uang kas awal. Saat penutupan shift, sistem membandingkan uang kas fisik dengan kalkulasi sistem untuk mendeteksi kelebihan atau kekurangan uang secara transparan.

Tombol Pintasan Keyboard (Keyboard Shortcuts):
Tombol Fungsi Keterangan
F2 Fokus Pencarian Produk Langsung mengarahkan kursor ke input pencarian / pemindaian barcode.
F4 Buka Modal Diskon Mengatur potongan harga diskon transaksi (Persen % atau Rupiah Tetap).
F8 Tahan Keranjang (Hold) Menyimpan keranjang belanja aktif sementara ke daftar nota tertahan.
F9 Buka Pembayaran (Checkout) Membuka pop-up metode pembayaran dan tombol uang pas / pecahan cepat.
ESC Tutup Modal / Batal Menutup modal pembayaran, diskon, atau daftar nota tertahan.
Pencetakan Struk Thermal & Pengaturan:

Struk belanja kasir dapat dicetak ke printer thermal 58mm atau 80mm secara otomatis. Konfigurasi ukuran kertas default, nama cabang, dan pesan footer nota dapat diubah melalui menu Pengaturan Sistem → Tab Kasir & Struk POS (/settings).

Pembatalan Nota (Void Transaksi) & Pemulihan Stok:

Pembatalan nota (Void) hanya dapat dilakukan oleh staf berwenang melalui menu Riwayat Nota (/pos/history) dengan mencatat alasan pembatalan. Saat nota dibatalkan, seluruh kuantitas stok produk pada nota tersebut dipulihkan otomatis ke batch inventori asalnya.

Menu Navigasi Cepat Modul POS: