Papicode
FREEPHP

Sistem Informasi Manajemen SDM (HRIS) Internal Perusahaan

Deskripsi

Sistem HRIS Internal: dari rekrutmen, absensi, cuti, lembur, payroll otomatis, penilaian kinerja, hingga manajemen aset dan perjalanan dinas semua dalam satu platform terintegrasi. Dibangun khusus untuk kebutuhan internal satu perusahaan (bukan produk SaaS, tanpa multi-tenant, tanpa skema langganan), sistem ini mencakup seluruh siklus hidup karyawan mulai dari lowongan dibuka sampai karyawan resign, lengkap dengan alur persetujuan berjenjang yang bisa dikonfigurasi, RBAC granular per modul, dan audit log yang mencatat setiap perubahan data penting.

Sistem

Admin HR mendaftarkan struktur organisasi (perusahaan, cabang, departemen, divisi, jabatan) lalu menambahkan karyawan lengkap dengan data pribadi, keluarga, pendidikan, kontrak kerja, hingga komponen gaji. Setiap hari karyawan melakukan clock in/out yang otomatis mendeteksi status Hadir/Terlambat berdasarkan jadwal shift yang berlaku, sementara pengajuan cuti, izin, dan lembur berjalan melalui rantai approval yang di-resolve otomatis dari struktur atasan (supervisor/manager/department head) sesuai konfigurasi di Settings tanpa approver yang valid, tahap tersebut otomatis dilewati agar pengajuan tidak macet. Saat periode payroll dibuat, sistem menghitung gaji tiap karyawan otomatis berdasarkan komponen gaji, kehadiran, lembur, BPJS, dan estimasi PPh21, lalu berjalan melalui alur draft → review → approved → paid → locked sebelum slip gaji PDF bisa diunduh karyawan. Tim rekrutmen mengelola lowongan dan kandidat lewat pipeline kanban (screening → interview → assessment → hire), dan begitu kandidat di-hire, sistem otomatis membuat data karyawan baru beserta checklist onboarding-nya. Di sisi lain, karyawan yang resign melalui 4 tahap persetujuan (supervisor → HR → finance → selesai) lengkap dengan exit interview dan clearance aset. Manajer menilai kinerja tim lewat KPI per periode, HR mengelola training dan sertifikasi, sementara admin memantau semua aktivitas lewat Dashboard real-time, Report Center untuk ekspor laporan, dan Audit Log yang tidak bisa dihapus atau dimanipulasi dari UI.

Fitur

  • Audit log seluruh aktivitas, tidak dapat dihapus dari UI
  • Manajemen pengguna, role, dan matriks izin akses (RBAC granular per modul/aksi)
  • Keamanan berlapis: proteksi CSRF, rate limiting login, hashing password, validasi MIME upload, otorisasi penuh di backend
  • Cron job otomatis: reminder kontrak, dokumen kedaluwarsa, ulang tahun karyawan, reset saldo cuti tahunan
  • Manajemen struktur organisasi (perusahaan, cabang, departemen, divisi, jabatan, grade, cost center) + org chart
  • Manajemen karyawan lengkap 9 tab: overview, data pribadi, kepegawaian, keluarga, pendidikan, pengalaman, kontrak, gaji, dokumen, karier
  • Manajemen dokumen & kontrak kerja (PKWT/PKWTT/probation) dengan reminder otomatis H-90/60/30/14/7
  • Absensi clock in/out dengan deteksi telat/pulang cepat otomatis, koreksi absensi dengan approval
  • Manajemen shift, jadwal kerja mingguan, penugasan per karyawan & hari libur
  • Cuti dengan saldo otomatis, alur approval configurable, pembatalan dengan pengembalian saldo
  • Izin non-cuti dan lembur dengan approval berjenjang, lembur terhubung otomatis ke payroll
  • Payroll engine: komponen gaji configurable, generate otomatis dengan BPJS & estimasi PPh21, alur draft-review-approved-paid-locked
  • Slip gaji PDF asli, hanya bisa diakses oleh pemiliknya sendiri
  • Rekrutmen (ATS): lowongan, pipeline kandidat kanban, interview, assessment, hire otomatis jadi karyawan
  • Onboarding otomatis dengan checklist & progress bar
  • Offboarding/resign 4 tahap approval, exit interview, clearance aset
  • Penilaian kinerja (KPI) per periode dengan skor akhir terhitung otomatis
  • Training & pengembangan: katalog, peserta, sertifikasi, skill matrix
  • Riwayat karier (timeline promosi/mutasi) per karyawan
  • Manajemen aset: kategori, inventaris, penugasan, pengembalian, riwayat perbaikan
  • Perjalanan dinas & reimbursement dengan alur approval dan settlement biaya
  • Pengumuman dengan target spesifik (semua/departemen/cabang/role/karyawan tertentu) + tracking dibaca
  • Notifikasi real-time di navbar
  • Report Center (7 kategori laporan) + HR Analytics 8 chart interaktif, ekspor Excel/CSV/PDF

Panduan Instalasi

  1. Ekstrak file zip ke folder web server, lalu install dependency PHP
cd hris
composer install
  1. Salin file environment dan sesuaikan koneksi database
cp .env.example .env

Edit .env, isi DB_HOST, DB_DATABASE, DB_USERNAME, DB_PASSWORD sesuai server MySQL Anda, serta APP_URL sesuai alamat akses aplikasi. 3. Buat database MySQL

mysql -u root -p -e "CREATE DATABASE hris CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
  1. Jalankan migrasi & seeder (membuat semua tabel + data awal: role, izin akses, dan akun admin)
mysql -u root -p hris < database/schema.sql
php database/seeders/seed.php
  1. Jalankan Apache (jika pakai XAMPP)
Buka XAMPP Control Panel > klik Start pada Apache & MySQL

Arahkan document root virtual host ke folder public/. Atau tanpa XAMPP, cukup pakai PHP built-in server:

php -S localhost:8000 -t public public/router.php
  1. Akses aplikasi di browser
http://localhost:8000

Login menggunakan akun default Username : admin Password : Admin@123

Catatan: aplikasi ini memakai MySQL sebagai database, sehingga wajib menjalankan langkah import skema & seeder di atas sebelum bisa digunakan. Kredensial login default hanya untuk keperluan development — sistem akan memaksa penggantian password saat login pertama kali, jadi tidak bisa dilewati begitu saja di lingkungan production.