Product Product Component
Responsibilities
Section titled “Responsibilities”Mengelola item produk spesifik yang digunakan di stok, order, dan pergerakan barang.
Interfaces/APIs
Section titled “Interfaces/APIs”Inputs
Section titled “Inputs”- Product Template ID
- SKU
- Barcode
- UOM
- Atribut logistik
- Parameter operasional
Outputs
Section titled “Outputs”- Master item tervalidasi untuk transaksi order line, stock move, dan reservasi.
Error Handling
Section titled “Error Handling”- Menolak SKU duplikat
- Menolak referensi template tidak valid
- Menolak referensi UOM tidak valid
- Menolak atribut logistik yang tidak konsisten.
Data Structures:
Section titled “Data Structures:”| Field | Data Type | Constraints | Nullable | Description |
|---|---|---|---|---|
| product_product_id | ULID | Primary Key | Tidak | Identifier unik item produk |
| product_template_id | ULID | Foreign Key -> product_template.product_template_id | Tidak | Relasi item ke template produk |
| sku | VARCHAR(50) | Unique, Not Null | Tidak | Kode SKU unik operasional |
| barcode | VARCHAR(100) | Not Null | Tidak | Kode barcode untuk scan proses gudang |
| base_uom_id | ULID | Foreign Key -> uom.uom_id | Tidak | Satuan dasar item |
| weight | DECIMAL(15,2) | >= 0 | Ya | Berat item untuk kalkulasi logistik |
| volume | DECIMAL(15,2) | >= 0 | Ya | Volume item untuk perhitungan kapasitas |
| is_active | BOOLEAN | Default true | Tidak | Status aktivasi item |
Algorithms/Logic
Section titled “Algorithms/Logic”Menurunkan atribut item dari template, memvalidasi kesesuaian UOM, dan memastikan SKU bersifat unik sebelum item dipakai dalam proses operasional.
State Management
Section titled “State Management”Menyimpan state item aktif agar hanya item valid yang dapat dipakai pada transaksi baru dan alokasi stok.