Industrial Dispatch, Fleet Telematics & Decision Support System (SPK SAW)
Terintegrasi dengan Odoo ERP melalui protokol JSON-RPC untuk rantai pasok dan distribusi barang terpadu.
- Ringkasan Eksekutif & Filosofi Desain
- Kredensial Autentikasi Operasional (Siap Pakai)
- Arsitektur Responsif Dual-Mode
- Fitur-Fitur Utama Sistem
- Metodologi SPK (Simple Additive Weighting - SAW)
- Integrasi Odoo ERP (JSON-RPC)
- Peta Interaktif & Telematika GPS Armada
- Struktur Direktori Proyek
- Panduan Instalasi & Menjalankan Aplikasi
- Pengujian Otomatis (Quality Assurance)
- Tim Pengembang & Pembagian Tugas
RouteWise adalah platform manajemen logistik dan ekspedisi pergudangan modern yang dirancang khusus untuk operasional distribusi barang antar-agen. Sistem ini memadukan:
- ERP Odoo Integration untuk sinkronisasi pesanan penjualan (Sales Order) dan status transfer gudang (Delivery Order/Picking).
- Sistem Pendukung Keputusan (SPK) berbasis metode Simple Additive Weighting (SAW) guna menentukan urutan prioritas toko/agen tujuan pengiriman.
- Peta Interaktif & Telematika Armada dengan kalkulasi rute OSRM (Open Source Routing Machine), simulasi pergerakan armada secara real-time, dan navigasi turn-by-turn.
Antarmuka RouteWise menolak estetika generik AI (gradient ungu mengambang, rounded corners berlebihan, drop shadow buram, dan ilustrasi kosong tanpa konteks). Desain dibangun berlandaskan prinsip dokumen manifes logistik riil:
- Tipografi Terstruktur: Kombinasi
Roboto Monountuk data metrik, koordinat GPS, NIP, nilai numerik tabular, sertaMontserrattebal untuk tajuk dokumen operasional. - Palet Warna Nyata: Kanvas perkamen hangat (
#F4F1EA), permukaan putih tulang (#FFFFFF), teks arang pekat (#1A1715), dan aksen bata industri (#9E3A1A). - Micro-detail Taktil: Border tegas 1px, cap status fisik (Approved / Pending / Standby), garis putus-putus tanda sobekan karcis manifes (dashed rules), dan tabel densitas tinggi.
Sistem telah dilengkapi dengan profil personel pra-konfigurasi untuk masing-masing wewenang operasional:
| Peran Operasional | Email / NIP | Kata Sandi | Nama Personel | Wewenang & Hak Akses |
|---|---|---|---|---|
| Kepala Gudang | david@routewise.id |
password123 |
David Timoteus | Ringkasan stok gudang, verifikasi & persetujuan permintaan pasar, sinkronisasi Odoo ERP. |
| Driver Ekspedisi | Maulana@gmail.com |
password123 |
Ilham Maulana Ahmad | Manajemen manifest muatan, update status pengiriman (Success/On Progress), telematika GPS & navigasi rute. |
| Admin SPK | iqbal@routewise.id |
password123 |
Moh Iqbal Fatoni | Konfigurasi bobot kriteria SAW, analisis matriks normalisasi, audit skor preferensi alternatif toko. |
Catatan Keamanan: Kolom input email dan sandi tidak pernah diisi otomatis (zero hardcoded auto-fill) demi menjaga integritas data autentikasi. Pengguna juga dapat mendaftar akun mandiri melalui menu "Daftar Akun Baru".
RouteWise memiliki mesin adaptif yang mendeteksi resolusi layar secara dinamis:
- Mode Desktop Dispatch Console (Widescreen > 900px):
- Sidebar navigasi tetap di sisi kiri dengan info personel aktif dan status koneksi ERP.
- Layout multi-kolom berdampingan: Peta Radar GPS di sisi kiri (58%) dan Manifes Rekomendasi Rute di sisi kanan (42%).
- Mode Smartphone Viewport Simulator:
- Tersedia tombol "LIHAT TAMPILAN HP" di sidebar desktop untuk menguji langsung tata letak perangkat seluler 380px tanpa perlu mengubah ukuran jendela peramban (browser).
- Dilengkapi notch, speaker bar, dan Bottom Navigation Bar khas aplikasi mobile asli.
βββββββββββββββββββββββββββββββββββββββββββ
β RouteWise Portal Hub β
ββββββββββββββββββββββ¬βββββββββββββββββββββ
β
ββββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββ
β β β
βΌ βΌ βΌ
ββββββββββββββββββββ ββββββββββββββββββββ ββββββββββββββββββββ
β Kepala Gudang β β Driver Ekspedisi β β Admin SPK β
ββββββββββββββββββββ€ ββββββββββββββββββββ€ ββββββββββββββββββββ€
ββ’ Stok Gudang β ββ’ Manifest Kirim β ββ’ Matriks SAW β
ββ’ Validasi Order β ββ’ Radar GPS OSRM β ββ’ Bobot Kriteria β
ββ’ Sinkron Odoo β ββ’ Simulasi Armada β ββ’ Urutan Prioritasβ
ββββββββββββββββββββ ββββββββββββββββββββ ββββββββββββββββββββ
- Portal Autentikasi: Login multi-peran dengan segmen tombol chip peran terintegrasi.
-
Dashboard Kepala Gudang:
- Kartu metrik: Total Permintaan, Pengiriman Aktif, Selesai, dan Sinkronisasi ERP.
- Grafik batang visualisasi produk terlaris (Djava Mild, Djava Ocha, Djava Traditional).
- Ledger ringkas pengiriman hari ini dengan tombol persetujuan cepat.
-
List Permintaan Pasar:
- Pencarian instan dan filter tab status (Semua, Menunggu, Disetujui, Ditolak).
- Dialog penolakan dengan catatan alasan resmi.
- Setiap permintaan yang disetujui otomatis masuk ke jadwal muatan pengiriman.
-
Proses Pengiriman Barang:
- Monitoring manifest pengiriman dengan live status toggle (On Progress
$\leftrightarrow$ Success). - Informasi koordinat drop-off, agen penerima, dan kuantitas pack rokok.
- Monitoring manifest pengiriman dengan live status toggle (On Progress
-
Pengelolaan SPK (Metode SAW):
- Panel konfigurasi bobot dinamis untuk 4 kriteria utama.
- Visualisasi matriks ternormalisasi dan skor akhir preferensi (
$V_i$ ).
-
Rekomendasi Pemilihan Rute:
- Peta interaktif berbasis koordinat nyata Hub Kebonsari Malang.
- Perhitungan jarak otomatis (Haversine & OSRM Routing).
-
Kelola Profil Personel:
- Pembaruan nama, nomor kontak, email, dan kata sandi akun aktif.
Sistem Pendukung Keputusan (SPK) di RouteWise menggunakan algoritma Simple Additive Weighting (SAW) untuk mencari penjumlahan terbobot dari rating kinerja setiap alternatif toko pada seluruh kriteria.
| Kode | Nama Kriteria | Kategori | Bobot ( |
Keterangan |
|---|---|---|---|---|
| Jarak Tempuh Gudang | Cost (Biaya) | Semakin dekat jarak, semakin tinggi prioritas. | ||
| Jumlah Muatan Barang | Benefit (Keuntungan) | Semakin banyak muatan pesanan, semakin diprioritaskan. | ||
| Estimasi Biaya Operasional | Cost (Biaya) | Semakin hemat biaya solar/operasional, semakin disukai. | ||
| Estimasi Waktu Tempuh | Cost (Biaya) | Semakin singkat durasi perjalanan, semakin efisien. |
Untuk kriteria bertipe Benefit:
Untuk kriteria bertipe Cost:
Alternatif dengan nilai
RouteWise dilengkapi dengan layanan OdooService yang berkomunikasi langsung dengan Odoo ERP melalui endpoint JSON-RPC:
- Autentikasi: Endpoint
/jsonrpcmemanggilcommon.authenticatedengan parameter database, username, dan API key/password. - Pengambilan Sales Order: Membaca model
sale.orderdansale.order.lineuntuk mengonversi pesanan agen menjadi daftar permintaan pasar (MarketRequest). - Pengambilan Delivery Orders: Membaca model
stock.pickingdanstock.moveuntuk melacak nomor resi surat jalan ekspedisi (DeliveryOrder). - Resilient Fallback: Jika server Odoo offline atau belum terhubung, aplikasi beralih secara mulus ke memori lokal tanpa memblokir antarmuka pengguna.
Layar Rekomendasi Rute menyediakan konsol telematika armada tingkat lanjut:
- Interactive Vector Canvas:
- Mendukung Pan & Drag bebas dengan klik/seret kursor mouse atau sentuhan jari.
- Kontrol zoom bertingkat (
+,-, danβ Recenter).
- 3 Preset Tema Visual Peta:
- π Kertas Gudang (Ledger): Desain perkamen industri hangat dengan kontur arang pekat.
- π Radar Night Ops: Mode gelap taktikal dengan jalur neon emerald (
#10B981). - π Blueprint CAD: Latar biru arsitektural dengan garis koordinat cyan terang.
- Simulasi Armada Bergerak (Fleet Telematics HUD):
- Tombol
βΆ JALANKAN SIMULASImenganimasikan truk ekspedisi melintasi kurva Bezier dari Hub Malang ke toko tujuan. - Truk otomatis memutar orientasi bodi (heading rotation) sesuai sudut belokan rute.
- Dilengkapi speedometer dinamis (38β48 Km/jam), kalkulator sisa ETA, dan progress bar tempuh (0%β100%).
- Tombol
- Quick-Stop Carousel:
- Strip tombol horizontal di atas peta untuk berpindah antar-toko tujuan secara instan.
- Inspeksi Waypoint & Panduan Langkah:
- Klik pin toko mana saja untuk membuka kartu manifes detail dan estimasi biaya bahan bakar.
- Tombol
π PANDUAN LANGKAHmenyajikan instruksi rute per segmen jalan.
route_wise/
βββ lib/
β βββ Components/
β β βββ bottom_nav_bar.dart # Navigasi responsif (Desktop & Mobile Frame)
β β βββ text_field.dart # Komponen input teks standar
β βββ models/
β β βββ route_models.dart # Model data (User, Request, Delivery, SPK)
β βββ pages/
β β βββ DashboardKepalaGudang.dart # Dasbor ringkasan KPI gudang
β β βββ KelolaProfil.dart # Form pembaruan profil pengguna
β β βββ ListPermintaan.dart # Verifikasi & approval permintaan pasar
β β βββ Login.dart # Halaman login bebas hardcoded value
β β βββ PengelolaanSPK.dart # Konfigurasi bobot & kalkulasi SAW
β β βββ PengirimanBarang.dart # Manifes pelacakan status pengiriman
β β βββ Profil.dart # Tampilan ringkasan profil personel
β β βββ RekomendasiRute.dart # Peta interaktif OSRM & telematika GPS
β β βββ SignUp.dart # Pendaftaran akun personel baru
β β βββ WelcomeScreen.dart # Landing page awal sistem
β βββ services/
β β βββ app_state.dart # State management terpusat (ChangeNotifier)
β β βββ odoo_service.dart # Klien JSON-RPC Odoo ERP
β β βββ spk_calculator.dart # Mesin kalkulator algoritma SAW & Haversine
β βββ theme/
β β βββ app_theme.dart # Sistem token desain Industrial Ledger
β βββ main.dart # Entry point aplikasi
βββ test/
β βββ widget_test.dart # Unit test & Widget test otomatis
βββ web/ # Aset & konfigurasi web runner
βββ android/ # Konfigurasi native platform Android
βββ pubspec.yaml # Manifest paket dependensi Flutter
βββ README.md # Dokumentasi komprehensif sistem
- Flutter SDK: Versi
3.10.0atau yang lebih baru. - Dart SDK: Versi
^3.1.0. - Web Browser: Google Chrome / Microsoft Edge / Mozilla Firefox.
git clone https://github.com/DavidTimoteus/route_wise.git
cd route_wiseflutter pub getUntuk menjalankan mode pengembangan dengan Hot Reload:
flutter run -d chromeAtau kompilasi bundel produksi web:
flutter build webHasil kompilasi akan berada di folder build/web/ dan dapat disajikan menggunakan web server lokal (misalnya Python):
python -m http.server 8088 --directory build/webAkses melalui peramban di: http://localhost:8088.
Jalankan aplikasi dengan menyertakan argumen --dart-define:
flutter run -d chrome --dart-define=ODOO_URL=http://localhost:8069 --dart-define=ODOO_DB=routewise_erpRouteWise dilengkapi rangkaian uji otomatis (Unit Test & Widget Test) untuk menjamin keandalan alur bisnis dan matematika SPK:
flutter testCakupan pengujian mencakup:
WelcomeScreen renders login and signup actionsβ Memverifikasi ketersediaan tombol navigasi utama.Tapping MASUK KE SISTEM navigates to Login screenβ Memverifikasi perpindahan rute dan form autentikasi.SpkCalculator ranks alternatives accurately using SAW methodβ Memverifikasi keakuratan normalisasi kriteria Cost/Benefit dan perangkingan toko.
Proyek ini dikembangkan oleh tim mahasiswa sebagai tugas implementasi sistem informasi logistik terpadu:
| No. | Nama Pengembang | Profil GitHub | Fokus Pembagian Tugas |
|---|---|---|---|
| 1 | David Timoteus Arya Bakti Pamungkas | @DavidTimoteus | System Architecture, Welcome Screen, Login & Sign-Up, Dashboard Kepala Gudang, Desain Responsif Desktop/Mobile, dan Integrasi Odoo ERP. |
| 2 | Ilham Maulana Ahmad | @Maulanailham289 | Kelola Profil Personel, Sidebar Menu Profil, Navigasi Bottom Nav, dan Dokumentasi Sistem. |
| 3 | Moh Iqbal Fatoni | @iqbalfatoni10 | Modul Rekomendasi Rute, Algoritma SPK SAW, List Permintaan Pasar, dan Monitoring Pengiriman Barang. |
Proyek ini didistribusikan di bawah lisensi terbuka untuk keperluan akademik dan pengembangan sistem distribusi logistik. Hak cipta Β© 2026 Tim Pengembang RouteWise.