Aplikasi ini dirancang untuk memudahkan perusahaan tambang nikel dalam memantau dan mengelola kendaraan yang digunakan untuk operasional perusahaan. Aplikasi ini memungkinkan pegawai untuk memesan kendaraan, yang kemudian disetujui oleh atasan secara berjenjang. Selain itu, aplikasi ini juga menyediakan dashboard untuk memonitor pemakaian kendaraan dan laporan pemesanan dalam format Excel.
- Laravel 11
- Inertia.js
- React
- Tailwind CSS
- Zustand
- Manajemen Kendaraan: Admin dapat menambah, mengedit, dan menghapus data kendaraan yang tersedia, baik milik perusahaan maupun kendaraan sewaan.
- Manajemen Driver: Admin dapat menambah, mengedit, dan menghapus data supir yang tersedia.
- Pemesanan Kendaraan: Admin dapat menginputkan pemesanan kendaraan dan menentukan driver serta pihak yang menyetujui pemesanan, dengan syarat banyak pihak yang menyetujui pemesanan minimal 2 pihak dan Admin hanya bisa memilih kendaraan dan driver yang ber status "available"
- Service Kendaraan: Admin dapat mendata kendaraan yang akan diservis, kendaraan yang di servis status akan berubah menjadi maintenance sehigga tidak bisa di gunakan untuk pemesanan.
- Riwayat Pemakaian Kendaraan: Menampilkan riwayat pemakaian kendaraan dari setiap pemesanan yang selesai
- Persetujuan Berjenjang: Pemesanan kendaraan harus disetujui oleh minimal dua level atasan dengan role approver sebelum dapat digunakan.
- Dashboard Monitoring: Menampilkan grafik pemakaian kendaraan, termasuk durasi pemesanan/pemakaian dan konsumsi bahan bakar, serta menampilkan statistik dari Kendaraan, Driver dan Pemesanan.
- Laporan Pemesanan: Admin dapat mengunduh laporan pemesanan kendaraan secara periodik dalam format Excel.
- PHP Version: 8.2.12
- Laravel Framework Version: 11.36.1
- Database Version: MySQL 15.1
Langkah-langkah berikut akan memandu Anda melalui proses instalasi untuk menjalankan aplikasi di lingkungan pengembangan secara lokal di komputer Anda:
- Clone versi terbaru dari repository.
- Jalankan perintah composer install untuk menginstal dependensi PHP yang diperlukan.
- Salin file .env.example menjadi .env, lalu edit kredensial database sesuai dengan server database Anda.
- Jalankan php artisan key:generate untuk membuat aplikasi key baru.
- Jalankan php artisan migrate untuk membuat tabel pada database. Anda juga dapat menambahkan flag --seed untuk mengisi database dengan data dummy.
- Jalankan php artisan serve untuk memulai server pengembangan.
- Buka terminal lain dan jalankan npm install && npm run build untuk menginstal modul node yang diperlukan.Jalankan npm run dev untuk mengompilasi aset untuk pengembangan.
- Buka browser Anda dan akses http://localhost:8000 untuk melihat aplikasi.
Berikut adalah daftar akun pengguna yang tersedia untuk pengujian aplikasi:
| Nama | Password | Role | Jabatan | |
|---|---|---|---|---|
| Ananta Risky Susanto | admin_main@gmail.com | password | Administrator | Pengelola Kendaraan |
| Malsha Aqila | approver_main1@gmail.com | password | Approver | Manajer Utama |
| Kamilia Luthfitah | approver_main2@gmail.com | password | Approver | Kepala Operasi Utama |
| Lara Mariesta | approver_branch1@gmail.com | password | Approver | Manajer Cabang |
| Daffa Prayoga | approver_branch2@gmail.com | password | Approver | Kepala Operasi Cabang |
| Fadillah Putri | approver_branch3@gmail.com | password | Approver | Supervisor Cabang |
-
Administrator:
Mengelola pemesanan kendaraan, mengatur driver, dan menentukan pihak yang menyetujui pemesanan. -
Approver:
Memberikan persetujuan pemakaian kendaraan secara berjenjang.
Gunakan informasi login di atas untuk mengakses aplikasi sesuai dengan role dan tugas masing-masing pengguna.
Anda dapat login sebagai admin atau approver sesuai daftar akun diatas. Setelah login, beberapa halaman menu akan tersedia berdasarkan peran Anda.
Menampilkan grafik penggunaan kendaraan, Statistik dari Kendaraan, Driver dan juga Pemesanan.
- Peran Admin & Approver: Dapat melihat seluruh dashboard, termasuk data kendaraan, driver, dan pemesanan.
Menampilkan daftar kendaraan, yang memungkinkan pemantauan konsumsi bahan bakar, jadwal servis, dan riwayat penggunaan kendaraan.
- Peran Admin: Dapat menambah, mengedit, dan menghapus data kendaraan (baik kendaraan milik perusahaan maupun kendaraan sewaan). Ketika pertama kali data kendaraan dibuat status secara default akan bernilai "Available" dan status ini akan berubah seiring waktu secara otomatis, apakah kendaraan tersebut sedang dalam pebaikan (maintenance) atau dalam pemesanan (unavalilable), admin tidak bisa menghapus kendaraan dengan status "maintenance" atau "unavailable"
Menampilkan daftar driver yang tersedia beserta status mereka (available/assigned).
- Peran Admin: Dapat menambah, mengedit, dan menghapus data driver. Ketika pertama kali data driver dibuat status secara default akan bernilai "Available" dan status ini akan berubah seiring waktu secara otomatis, apakah driver sedang ditugaskan pada pemesanan tertentu (assigned)
Memungkinkan admin untuk menginputkan pemesanan kendaraan, termasuk pemilihan kendaraan, driver, dan pihak yang menyetujui pemesanan.
- Peran Admin: Dapat membuat pemesanan baru dengan memilih kendaraan, driver, dan pihak yang menyetujui pemesanan. Pemesanan harus disetujui oleh minimal dua pihak approver sebelum bisa diproses. Hanya kendaraan dan driver dengan status "available" yang dapat dipilih untuk pemesanan.
- Peran Approver: Dapat menyetujui atau menolak permintaan pemesanan kendaraan.
disini ketika pemesanan dibuat status dari pemesanan akan secara default bernilai "pending", status ini akan berubah seiring waktu ketika salah satu dari pihak approver menolak pemesanan ini, maka status pemesanan akan berubah menjadi "rejected", Lalu ketika semua pihak menyetujui pemesanan ini maka status akan berubah menjadi "approved, dan progres dari status ini akan menjadi "ongoing"
Menampilkan data servis dari setiap kendaraan, menunjukan status dari setiap servis antara "ongoing" atau "done", jika ongoing status kendaraan akan berubah menjadi "maintenane" sehingga kendaraan tidak dapat digunakan untuk pemesanan.
- Peran Admin: Dapat menambahkan servis untuk kendaraan. Status kendaraan akan berubah menjadi "pemeliharaan" dan kendaraan tersebut tidak dapat digunakan untuk pemesanan sampai selesai servis. Lalu admin dapat merubah status servis menjadi "done" dengan klik tombol selesai. lalu jika di klik status kendaraan menjadi "available" dan siap dipilih untuk sebuah pemesanan.
Menampilkan riwayat pemakaian kendaraan, termasuk pemesanan yang sudah selesai dan detail penggunaannya.
- Peran Admin: Dapat melihat riwayat pemakaian semua kendaraan, serta dapat melakukan penyelesaian dari suatu peminjaman. setelah melakukan penyelesaian pada suatu peminjaman, progress dari peminjaman tersebut akan berubahn menjadi "done" lalu status dari kendaraan dan driver terkait akan berubah juga menjadi "available". Lalu data riwayat akan tertampil pada halaman ini
Menampilkan pemantauan secara real-time terkait penggunaan kendaraan, termasuk data durasi pemesanan, konsumsi bahan bakar, dan statistik lainnya yang berkaitan dengan kendaraan, driver, dan pemesanan.
- Peran Admin && Approver: Dapat melihat data pemantauan secara lengkap untuk kendaraan dan pemesanan.
Memungkinkan admin untuk mengunduh laporan pemesanan dalam format Excel secara periodik.
- Peran Admin: Dapat mengekspor laporan pemesanan secara detail untuk analisis dan pencatatan.
Fitur Log Aktivitas memungkinkan admin dan pengguna dengan peran yang tepat untuk melacak dan mencatat semua tindakan yang dilakukan dalam aplikasi. Setiap aktivitas yang dilakukan oleh pengguna, seperti perubahan data kendaraan, pemesanan, persetujuan, dan status servis, akan dicatat dalam log aktivitas untuk keperluan audit, pemantauan, dan keamanan.
- Peran Admin && Approver: Admin dapat melihat seluruh log aktivitas yang terjadi dalam sistem. Log aktivitas akan mencatat informasi seperti siapa yang melakukan tindakan, waktu tindakan dilakukan, serta perubahan apa yang terjadi pada data.

