DASI Mobile Android

Login DASI Mobile
Menu Utama DASI Mobile
Laporan Transaksi Harian
Laporan Transaksi Produk
Laporan Aktivitas Sales
Ringkasan Kinerja

Project Information

  • Category: Mobile Application (Flutter)
  • Client: Internal Project
  • Project Date: 2025
  • My Role: Mobile App Developer
  • Project Status: Completed
  • Technology Stack:
    Flutter Dart RESTful API MySQL Local Database (Sqflite)

Project Overview

DASI Mobile merupakan aplikasi Android yang digunakan oleh tim sales untuk melakukan aktivitas operasional di lapangan. Aplikasi ini terhubung langsung dengan DASI Web Dashboard menggunakan satu database sehingga seluruh transaksi dan aktivitas sales dapat dimonitor secara real-time. Selain proses input penjualan, aplikasi juga menyediakan dokumentasi foto, laporan aktivitas, serta berbagai fitur pendukung mobilitas sales.

Key Features

Sales Transaction

Memudahkan tim sales melakukan input transaksi secara cepat dan efisien langsung dari perangkat mobile di lapangan.

Photo Documentation

Mendukung pengambilan dan penyimpanan dokumentasi foto sebagai bukti aktivitas kunjungan maupun transaksi fisik di lapangan.

Real-time Reporting

Sales dapat memantau pencapaian penjualan harian dan aktivitas kunjungan mereka secara langsung melalui aplikasi.

Integrated with DASI Web

Seluruh data tersinkronisasi secara otomatis dengan DASI Web Dashboard sehingga meminimalisir input ganda.

Challenges & Solutions

Upload Gambar di Area Sinyal Lemah

Tantangan: Dokumentasi foto lapangan yang berukuran besar sering kali gagal diunggah atau membuat aplikasi terasa lag ketika tim sales berada di daerah dengan koneksi internet lambat.

Solusi: Menerapkan kompresi gambar otomatis (maksimum lebar 1080px dan kualitas 75%) menggunakan plugin `flutter_image_compress` sebelum file dikirim. Menambahkan mekanisme upload latar belakang (background sync) menggunakan `WorkManager` sehingga sales tetap dapat menginput transaksi berikutnya tanpa menunggu upload selesai.

Sinkronisasi Offline-to-Online

Tantangan: Sales tetap harus bisa memasukkan data transaksi kunjungan meskipun tidak mendapatkan sinyal internet sama sekali.

Solusi: Membangun penyimpanan lokal menggunakan database `Sqflite` (SQLite untuk Flutter). Saat koneksi terputus, data disimpan secara lokal dan akan disinkronisasikan ke server secara otomatis ketika aplikasi mendeteksi koneksi internet kembali aktif.