Locations Component
Responsibilities
Section titled “Responsibilities”Mengelola lokasi penyimpanan granular sebagai titik inventori pada setiap zona.
Interfaces/APIs
Section titled “Interfaces/APIs”Inputs
Section titled “Inputs”- Zone ID
- Kode lokasi
- Tipe lokasi
- Kapasitas
- Atribut restriksi penyimpanan
- Status lokasi
Outputs
Section titled “Outputs”- Referensi lokasi untuk alokasi stok, reservasi, dan proses picking.
Error Handling
Section titled “Error Handling”- Menolak zone tidak valid
- Menolak kode lokasi duplikat
- Menolak konfigurasi tipe lokasi dan kapasitas yang tidak logis.
Data Structures:
Section titled “Data Structures:”| Field | Data Type | Constraints | Nullable | Description |
|---|---|---|---|---|
| location_id | ULID | Primary Key | Tidak | Identifier unik lokasi |
| zone_id | ULID | Foreign Key -> zone.zone_id | Tidak | Relasi lokasi ke zona |
| location_code | VARCHAR(50) | Unique, Not Null | Tidak | Kode lokasi untuk proses scan |
| location_type | ENUM(‘RACK’,‘FLOOR’,‘VIRTUAL’) | Not Null | Tidak | Klasifikasi tipe lokasi |
| location_status | ENUM(‘EMPTY’,‘PARTIAL’,‘FULL’,‘BLOCKED’) | Default ‘EMPTY’ | Tidak | Status okupansi lokasi |
| max_weight | DECIMAL(15,2) | >= 0 | Ya | Batas kapasitas berat lokasi |
| max_volume | DECIMAL(15,2) | >= 0 | Ya | Batas kapasitas volume lokasi |
| is_mixed_sku_allowed | BOOLEAN | Default false | Tidak | Penanda lokasi dapat menampung multi SKU |
| is_active | BOOLEAN | Default true | Tidak | Status aktivasi lokasi |
Algorithms/Logic
Section titled “Algorithms/Logic”Memvalidasi kapasitas dan kecocokan karakteristik lokasi terhadap kebutuhan produk, termasuk aturan campuran SKU dan status okupansi sebelum alokasi stok.
State Management
Section titled “State Management”Menyimpan state okupansi lokasi untuk mendukung keputusan alokasi secara real-time dan menjaga konsistensi pemakaian lokasi.