/** * Mengecek apakah ada guru yang belum mendapat asosiasi pengajaran * @param integer $semester ID dari semester yang ingin dicek. Secara default menggunakan ID semester yang aktif * @return integer Jumlah guru yang belum mendapat asosiasi */ public static function check($semester = null) { $guru = Guru::where('staf', 0)->orWhere('staf', 2)->get()->count(); if ($guru < 1) { return -1; } $asosiasi = self::join('guru', 'guru.id', '=', 'mengajar.id_guru')->where('mengajar.id_semester', $semester ? $semester : Semester::get_active_semester()->id)->where(function ($q) { $q->where('staf', 0)->orWhere('staf', 2); })->groupBy('guru.id')->get()->count(); return $guru - $asosiasi; }