Files
lms-v2/app/Livewire/Matrix/ComplianceMonitor.php
2026-05-30 22:15:16 +07:00

29 lines
927 B
PHP

<?php
namespace App\Livewire\Matrix;
use Livewire\Component;
use App\Models\User;
use App\Models\ExamResult;
class ComplianceMonitor extends Component
{
public function render()
{
// Contoh logika sederhana: Menghitung persentase karyawan yang sudah lulus ujian
$totalKaryawan = User::where('role', 'karyawan')->count();
// Hitung karyawan unik yang sudah memiliki minimal 1 hasil lulus
$karyawanLulus = ExamResult::where('is_passed', true)
->distinct('user_id')
->count('user_id');
$complianceRate = $totalKaryawan > 0 ? round(($karyawanLulus / $totalKaryawan) * 100) : 0;
return view('livewire.matrix.compliance-monitor', [
'complianceRate' => $complianceRate,
'totalKaryawan' => $totalKaryawan,
'karyawanLulus' => $karyawanLulus
]);
}
}