diff --git a/README.md b/README.md new file mode 100644 index 0000000..5349d73 --- /dev/null +++ b/README.md @@ -0,0 +1,115 @@ +# Kos Barokah Odoo ERP (v19 Community) + +Sistem Enterprise Resource Planning (ERP) berbasis **Odoo 19 Community Edition** dan **PostgreSQL 16** menggunakan Docker Compose, yang dikustomisasi khusus untuk operasional bisnis Kos Barokah. + +--- + +## 1. Arsitektur & Akses Docker + +* **Lokasi Proyek:** `/home/ardhi/Application/odoo-erp` +* **Web UI Port:** `18070` (`http://:18070`) +* **Database Name:** `erpdev` +* **Default Admin Login:** `admin` / `admin` (ubah setelah login pertama) + +### Services & Containers +| Service | Container Name | Image | Port | Volume | +|---|---|---|---|---| +| **Database** | `odoo-erp-db` | `postgres:16` | 5432 (Internal) | `erp_pgdata` | +| **Odoo ERP** | `odoo-erp` | `odoo:19.0` | `18070:8069` | `erp_webdata`, `./config`, `./addons` | + +--- + +## 2. Business Workflow (Alur Bisnis) + +### A. Item Code & Import Excel +* **Modul:** `product` + `base_import` +* **Cara Pakai:** + 1. Masuk ke **Inventory / Purchase / Sales** → **Products** → **Products**. + 2. Klik tombol **Favorites** → **Import records**. + 3. Unggah file Excel (`.xlsx`) dengan kolom yang sesuai (misal: *Name* untuk Item Code, *Sale Price*, *Cost*, dll). + 4. Lakukan *Test* lalu *Import*. + +### B. Sales Inquiry (CRM Pipeline) +* **Modul:** `crm` +* **Alur:** + 1. Catat prospek/pertanyaan pelanggan masuk ke **CRM** → **Pipeline**. + 2. Buat opportunity baru dengan tahap *Inquiry*. + 3. Setelah deal spesifikasi, konversi inquiry langsung menjadi **Quotation**. + +### C. Sales Quotation & Sales Order (Custom Sequence) +* **Modul:** `sale_management` + Custom Addon (`kosbar_erp_ext`) +* **Alur & Penomoran:** + 1. **Quotation**: Dibuat dengan format nomor **`SQ/2026/00001`**. + 2. **Sales Order**: Saat Quotation di-*Confirm*, nomor otomatis berubah menjadi **`SO/2026/00001`**. + +### D. Purchase Order (PO ke Warehouse) +* **Modul:** `purchase` +* **Alur:** + 1. Buat **Request for Quotation (RfQ)** ke supplier. + 2. Konfirmasi menjadi **Purchase Order (PO)**. + 3. Saat barang datang, lakukan penerimaan barang (*Receipts*) di gudang untuk menambah stok. + +### E. Delivery Order (DO dari Warehouse) +* **Modul:** `stock` + Custom Addon +* **Alur:** + 1. Dari Sales Order yang telah dikonfirmasi, sistem otomatis membuat dokumen pengiriman (*Delivery Order*). + 2. Nomor DO menggunakan format khusus: **`DO/2026/00001`**. + 3. Validasi pengiriman (*Validate*) untuk memotong stok gudang. + +--- + +## 3. Custom Settings & Akses Kontrol (`kosbar_erp_ext`) + +Addon kustom dalam folder `./addons/kosbar_erp_ext/` menyediakan: + +### Grup Akses Tambahan +* **Sales Manager**: Memiliki hak kelola penuh atas alur penjualan dan persetujuan khusus. +* **CFO / Finance Director**: Hak akses monitoring laporan keuangan dan data transaksi. + +### Format Sequence Kustom +* **Quotation**: `SQ/%(year)s/#####` +* **Sales Order**: `SO/%(year)s/#####` +* **Delivery Order**: `DO/%(year)s/#####` + +--- + +## 4. Struktur Database Utama (PostgreSQL) + +Tabel inti Odoo 19 yang digunakan dalam alur di atas: + +``` +[res.partner] (Pelanggan / Supplier) + │ + ├─► [crm.lead] (Sales Inquiry / Pipeline) + │ │ + │ ▼ + ├─► [sale.order] (Quotation SQ/xxx ──► Sales Order SO/xxx) + │ │ + │ ├─► [sale.order.line] (Item & Harga) + │ │ + │ ▼ + └─► [stock.picking] (Delivery Order DO/xxx - Outgoing) + │ +[product.product] ◄─┤ +[product.template] (Item Code & Stok) + │ + ▲ +[purchase.order] (PO ke Supplier - Incoming Receipts) +``` + +--- + +## 5. Perintah Manajemen Docker + +* **Menjalankan stack:** + ```bash + docker compose up -d + ``` +* **Melihat log Odoo:** + ```bash + docker logs -f odoo-erp + ``` +* **Restart service Odoo:** + ```bash + docker compose restart odoo + ```