web_helpdesk

IT Helpdesk

Lihat preview antarmuka · Dokumentasi instalasi

Aplikasi web Laravel untuk mengelola layanan dukungan IT, workflow tiket, inventaris perangkat, penugasan aset, dokumentasi perbaikan, knowledge base, dashboard operasional, serta laporan.

Antarmuka menggunakan design system orisinal yang terdokumentasi pada DESIGN.md: palet netral, aksen sage, tipografi tegas, border tipis, komponen Blade reusable, serta layout responsif desktop dan mobile.

Fitur

Hak Akses

Role Akses utama
Admin Seluruh tiket/aset, pengguna, master data, penugasan, laporan, Excel, dan PDF
Teknisi Tiket yang ditugaskan, diagnosis/solusi, seluruh detail aset, perbaikan, dan artikel sendiri
Pengguna Tiket sendiri, konfirmasi/buka kembali, aset sendiri, artikel published, dan profil

Teknologi

Persyaratan Sistem

Instalasi

composer install

Salin file .env.example menjadi .env menggunakan file manager atau perintah yang sesuai dengan sistem operasi, lalu jalankan:

php artisan key:generate
npm install

Buat database MySQL kosong:

CREATE DATABASE it_helpdesk_asset_management
  CHARACTER SET utf8mb4
  COLLATE utf8mb4_unicode_ci;

Sesuaikan konfigurasi database pada .env dengan environment yang digunakan (jangan menyimpan kredensial produksi di source code):

DB_CONNECTION=mysql
DB_HOST=alamat_host_mysql
DB_PORT=3306
DB_DATABASE=it_helpdesk_asset_management
DB_USERNAME=root
DB_PASSWORD=kata_sandi_mysql

Kemudian siapkan data dan frontend:

php artisan migrate:fresh --seed --no-interaction
npm run build
php artisan serve

Buka alamat yang ditampilkan oleh perintah php artisan serve.

Untuk pengembangan frontend:

npm run dev

Akun Demo

Khusus development dan demonstrasi:

Role Email Password
Admin admin@example.com password
Teknisi teknisi@example.com password
Pengguna user@example.com password

Seeder juga membuat dua teknisi tambahan, tujuh pengguna tambahan, 5 departemen, 30 tiket, 25 aset, 15 riwayat penugasan, 12 perbaikan, dan 10 artikel.

Workflow Tiket

  1. Pengguna membuat tiket; sistem memberi nomor unik dan status baru.
  2. Admin memilih teknisi dan prioritas; status menjadi ditugaskan.
  3. Teknisi memulai pekerjaan, mengisi diagnosis/catatan, lalu solusi.
  4. Tiket hanya dapat dikirim ke menunggu_konfirmasi jika solusi sudah ada.
  5. Pemilik tiket mengonfirmasi selesai atau membuka kembali ke diproses.
  6. Semua aksi penting masuk ke timeline riwayat.

Struktur Modul

Menjalankan Test dan Formatter

Test memakai SQLite in-memory agar terisolasi dari database utama:

php artisan test
php vendor/bin/pint --test

Validasi instalasi runtime tetap harus dijalankan menggunakan MySQL:

php artisan optimize:clear
php artisan migrate:fresh --seed --no-interaction
php artisan migrate:status
php artisan route:list
npm run build

Catatan Keamanan