(int)$pdo->query("SELECT COUNT(*) FROM employees")->fetchColumn(), 'departments' => (int)$pdo->query("SELECT COUNT(*) FROM departments")->fetchColumn(), 'positions' => (int)$pdo->query("SELECT COUNT(*) FROM positions")->fetchColumn(), ]; $deptSummary = $pdo->query(" SELECT d.name, d.code, COUNT(e.id) AS total FROM departments d LEFT JOIN employees e ON e.dept_id = d.id GROUP BY d.id ORDER BY total DESC, d.name ASC LIMIT 6 ")->fetchAll(); $posSummary = $pdo->query(" SELECT p.name, p.level, COUNT(e.id) AS total FROM positions p LEFT JOIN employees e ON e.position_id = p.id GROUP BY p.id ORDER BY total DESC, p.name ASC LIMIT 6 ")->fetchAll(); $recentEmployees = $pdo->query(" SELECT e.id, e.full_name, e.employee_code, e.status, d.name AS dept_name, p.name AS position_name FROM employees e LEFT JOIN departments d ON d.id = e.dept_id LEFT JOIN positions p ON p.id = e.position_id ORDER BY e.created_at DESC LIMIT 5 ")->fetchAll(); render_header('Dashboard HRIS', 'dashboard'); ?>

Dashboard HRIS

Ringkasan data pegawai, departemen, dan jabatan terbaru untuk tim HR dan manajer.

Total Pegawai
Termasuk status aktif & probation
Departemen
Struktur organisasi aktif
Jabatan
Role yang tersedia
Distribusi Departemen Kelola Departemen
Belum ada departemen. Tambahkan data departemen pertama Anda.
Departemen Kode Total Pegawai
Distribusi Jabatan Kelola Jabatan
Belum ada jabatan. Tambahkan jabatan untuk tim Anda.
Jabatan Level Total Pegawai
Pegawai Terbaru Lihat Semua
Belum ada pegawai. Mulai tambah data pegawai baru.
ยท