Gudang & Inventory
Material & Perangkat

Kelola stok item, pergerakan barang, dan pemakaian material teknisi.

Gudang dipakai untuk memastikan ONT, router, kabel, patchcord, ODP, splitter, dan material PSB tercatat dengan jelas.

Screenshot mockup gudang inventory

Fungsi Modul Gudang

Master Item

Mencatat nama barang, kategori, satuan, stok minimum, serial number bila diperlukan, dan lokasi rak.

Stok Masuk

Mencatat pembelian, retur teknisi, koreksi stok, atau penerimaan barang dari supplier.

Stok Keluar

Mencatat pemakaian PSB, penggantian perangkat saat tiket, peminjaman teknisi, atau barang rusak.

Kontrol Minimum Stock

Memberi tanda ketika stok turun di bawah batas minimum agar admin cepat restock.

Import Barang Supplier

Membaca katalog supplier dari Excel, CSV, TXT, atau PDF dengan preview sebelum data disimpan.

Cara Tambah Item Gudang

Gunakan langkah ini untuk barang baru yang belum ada di sistem.

Buka menu `Gudang`.
Klik `Tambah Item`.
Isi nama item yang mudah dicari, misalnya `ONT ZTE F670L` atau `Patchcord SC/APC 3m`.
Pilih kategori: ONT, router, kabel, ODP, splitter, tools, sparepart, atau material umum.
Pilih satuan: pcs, meter, roll, box, unit, atau pasangan.
Isi stok awal. Jika belum ada stok, isi `0` agar item tetap tercatat.
Isi minimum stock. Sistem dapat menandai item saat stok sudah perlu dibeli lagi.
Aktifkan serial number jika item perlu dilacak per unit, misalnya ONT atau router.
Klik `Simpan` lalu cek item muncul di daftar stok.
Klik tombol `Refresh` di toolbar Gudang untuk memuat ulang daftar item, kategori, mutasi terbaru, dan jumlah approval. Jika gagal, pesan error akan menjelaskan apakah masalahnya sesi login, permission, endpoint, atau server.

Hapus Item Gudang

Tombol `Hapus` hanya tampil untuk Super Admin agar data inventaris tidak terhapus tanpa kontrol.

Buka `Gudang`, tab `Barang`, lalu klik item yang ingin diproses.
Super Admin dapat klik tombol `Hapus` dari daftar atau detail item.
Jika item belum punya riwayat stok, mutasi, serial number, atau aset, item akan dihapus permanen.
Jika item sudah punya histori, sistem menonaktifkan item agar riwayat gudang tetap aman dan bisa diaudit.
Jika user bukan Super Admin mencoba menghapus lewat API, sistem menolak dengan pesan bahwa hapus item hanya boleh dilakukan Super Admin.

Import Barang Supplier

Gunakan fitur ini untuk memasukkan daftar barang yang dijual supplier tanpa langsung menambah stok.

Buka `Gudang`, pilih tab `Supplier`.
Pada baris supplier, klik `Import Barang`.
Upload file `XLSX`, `CSV`, `TXT`, atau `PDF`. Untuk hasil paling akurat gunakan Excel/CSV dengan kolom `Nama Barang`, `SKU`, `Kategori`, `Satuan`, `Harga Beli`, dan `Harga Jual`.
Klik `Preview`. Sistem menampilkan baris valid, item yang akan dibuat, item existing yang cocok, dan error per baris.
Centang hanya barang yang ingin diimport. PDF bersifat best-effort, jadi wajib cek ulang nama barang dan harga sebelum import.
Klik `Import Terpilih`. Sistem membuat/update master barang dan menautkan harga supplier, tetapi tidak menambah stok gudang.
Jika barang sudah datang fisik, lanjutkan lewat flow `Stok Masuk` agar kuantitas gudang bertambah dan mutasi tercatat.

Stok Masuk dan Keluar

Buka detail item atau menu `Stok Masuk`.
Pilih item, isi jumlah, tanggal, sumber barang, dan nomor referensi pembelian jika ada.
Untuk item serial, masukkan serial number satu per satu.
Simpan dan cek stok bertambah di kartu item.
Buka `Stok Keluar`.
Pilih Gudang Asal, tujuan pemakaian, item, dan jumlah.
Untuk barang wajib serial, pilih tepat satu SN per unit. Daftar hanya memuat SN tersedia pada Gudang Asal.
Jika terkait tiket/PSB, hubungkan ke nomor tiket atau jadwal teknisi.
Simpan. Stok dan status SN diperbarui bersama, lalu riwayat pemakaian tercatat.
Teknisi membuka `/absensi` โ†’ `Teknisi` โ†’ `Barang` โ†’ `Retur` untuk mengembalikan stok baik/utuh yang tidak terpakai.
Pilih Gudang Tujuan, alasan, satu atau beberapa item, quantity, dan SN fisik untuk barang wajib serial. Foto kondisi bersifat opsional.
Retur berstatus pending langsung mereservasi quantity dan SN, tetapi stok belum berpindah dari Gudang Teknisi.
Petugas Gudang membuka `Request Barang`, menyetujui retur, lalu memilih `Terima & Scan` saat barang fisik datang.
Minta kode enam digit dari Riwayat Retur teknisi dan scan seluruh SN. Stok baru berpindah setelah kode serta daftar SN sama persis.

Retur Stok Teknisi dari /absensi

Alur dua langkah menjaga custody fisik barang dan mencegah stok ganda.

Tab `Stok Saya` menampilkan stok fisik, quantity yang sedang direservasi, dan quantity yang masih dapat diretur.
Setelah retur diajukan, item tidak dapat dipakai untuk material tiket/PSB atau diretur pada request lain.
Teknisi dapat membatalkan retur sebelum diterima Gudang; pembatalan melepas reservasi agar stok dapat dipakai lagi.
Approval Gudang tidak memindahkan stok. Perpindahan terjadi hanya pada penerimaan fisik dengan kode serah-terima dan scan SN.
Riwayat menyimpan pemohon, gudang asal/tujuan, item, SN, foto kondisi, approver, penerima, waktu, dan catatan penerimaan.
Gunakan alur ini hanya untuk stok baik/utuh. ONU lama hasil penggantian tetap memakai workflow Replacement pada tiket. Barang rusak, hilang, atau perlu repair dilaporkan melalui workflow Gudang/Admin agar tidak masuk kembali ke stok aktif.

Serial Number dan Rekonsiliasi Lokasi

Jumlah stok dan lokasi fisik setiap SN adalah dua data yang harus sama-sama valid.

Aktifkan `Wajib Serial Number` pada master barang ONU/ONT atau perangkat yang dilacak per unit.
Saat stok baru masuk, masukkan satu SN asli per unit dan pilih lokasi tujuan.
Stok Keluar, Transfer Stok, dan Request Barang hanya menampilkan SN `Tersedia` yang berada pada Gudang Asal.
Jika SN terlihat di `Kelola SN` tetapi picker kosong, periksa label lokasi. `Lokasi belum ditetapkan` berarti SN belum boleh dipakai dari gudang mana pun.
Verifikasi perangkat fisik, lalu masukkan ulang SN tersebut pada `Kelola SN` dan pilih `Lokasi Fisik SN`. Rekonsiliasi ini menetapkan lokasi tanpa menambah stok.
Muat ulang form dan pastikan jumlah SN yang tampil sesuai hasil pemeriksaan fisik.
Contoh POP Negara: stok ZTE F609 tercatat 27 unit, tetapi 27 SN lama masih tanpa lokasi. Sistem sengaja menampilkan daftar kosong agar tidak menebak SN mana yang berada di POP dan mana yang berada pada teknisi.

Pemakaian Material PSB

Saat jadwal PSB dibuat, siapkan daftar material: ONT, router, kabel dropcore, patchcord, clamp, dan lainnya.
Gudang mengeluarkan material ke teknisi atau tim instalasi.
Teknisi mencatat jumlah aktual yang dipakai saat pekerjaan selesai.
Sisa material dikembalikan melalui retur gudang.
Admin dapat melihat histori pemakaian per pelanggan, teknisi, dan tanggal.

Mutasi & Approval Pending

Mutasi pending mengunci stok gudang asal sampai disetujui atau ditolak.

Buka `Gudang` lalu tab `Mutasi & Approval`.
Mutasi berstatus `Pending` selalu ditampilkan di atas daftar, termasuk yang sudah lama, agar tidak terkunci stok tanpa terlihat.
Gunakan kolom cari untuk nomor mutasi (contoh `PKB-TRF-260624-L2EJ`), nama barang, atau catatan.
Filter `Status = Pending` menampilkan hanya yang menunggu approval.
Klik baris untuk detail, lalu `Setujui` atau `Tolak`. Menolak akan melepas reserve stok.
Request Barang baru juga memperhitungkan mutasi pending saat cek stok tersedia. Jika stok terlihat ada di Gudang Utama tetapi request ditolak karena tersedia 0, cek dulu mutasi pending yang mengunci item tersebut.

Stock Opname

Hitung fisik per lokasi dengan snapshot dan approval terpisah.

Buka menu Gudang, pilih tab Stock Opname, lalu klik Mulai Opname.
Pilih satu lokasi. Sistem menyimpan snapshot saldo dan menolak opname aktif kedua pada lokasi yang sama.
Isi jumlah fisik setiap barang. Untuk barang serialized, masukkan satu SN operasional per baris; jumlah SN harus sama dengan jumlah fisik.
Simpan setiap hitungan lalu klik Ajukan Review setelah seluruh barang selesai dihitung.
Approver yang berbeda memeriksa selisih dan klik Setujui & Posting. Jika stok berubah setelah snapshot atau custody SN berbeda, approval ditolak dan data harus direkonsiliasi.
Koreksi barang non-serialized diposting sebagai mutasi adjustment dan masuk audit log. Hasil yang disetujui tidak dapat diedit kembali.
Hindari stok masuk, stok keluar, transfer, atau retur pada lokasi yang sedang diopname. Jika saldo berubah setelah snapshot, batalkan opname dan mulai ulang agar mutasi baru tidak tertimpa.