Product Template Component
Responsibilities
Section titled “Responsibilities”Mengelola definisi umum produk sebagai induk spesifikasi item dan varian.
Interfaces/APIs
Section titled “Interfaces/APIs”Inputs
Section titled “Inputs”- Kode template
- Nama template
- Kategori produk
- Atribut dasar
- Status template
Outputs
Section titled “Outputs”- Referensi template produk untuk pembentukan data item operasional.
Error Handling
Section titled “Error Handling”- Menolak template duplikat
- Menolak atribut wajib yang kosong
- Menolak kategori atau referensi UOM yang tidak valid.
Data Structures:
Section titled “Data Structures:”| Field | Data Type | Constraints | Nullable | Description |
|---|---|---|---|---|
| product_template_id | ULID | Primary Key | Tidak | Identifier unik template produk |
| name | VARCHAR(255) | Unique, Not Null | Tidak | Nama template produk |
| category_code | VARCHAR(50) | Not Null | Tidak | Kategori utama produk |
| base_uom_id | ULID | Foreign Key -> uom.uom_id | Tidak | Satuan dasar yang dipakai template |
| description | TEXT | Ya | Ya | Deskripsi ringkas template |
| is_active | BOOLEAN | Default true | Tidak | Status aktivasi template |
| created_at | TIMESTAMP | Default CURRENT_TIMESTAMP | Tidak | Waktu pencatatan template |
| updated_at | TIMESTAMP | Auto update timestamp | Tidak | Waktu pembaruan template |
Algorithms/Logic
Section titled “Algorithms/Logic”Memvalidasi konsistensi atribut induk agar kompatibel dengan varian produk dan memastikan template hanya dipakai bila referensi kategori serta UOM valid.
State Management
Section titled “State Management”Menyimpan state template aktif untuk menjaga validitas pembuatan item baru dan mencegah pemakaian template yang sudah dinonaktifkan.