public function statCompetence($inputs = null, $filiere = null) { $competence = new Competence(); $query = $competence->select('competences.intitule', DB::raw('count(competences.intitule) as nombre'))->join('cvs', 'cvs.id', '=', 'competences.cv_id')->join('etudiants', 'etudiants.id', '=', 'cvs.etudiant_id'); if ($filiere) { $query->where('etudiants.filiere_id', $filiere); } if (isset($inputs['idNiveau'])) { $query->where('competences.niveau', $inputs['idNiveau']); } $query->orderby('nombre', 'desc')->limit(5); $query->groupBy('competences.intitule'); $data = $query->get(); $sortie = array(); foreach ($data as $value) { if ($value['niveau'] == 1) { $value['niveau'] = 'Débutant'; } if ($value['niveau'] == 2) { $value['niveau'] = 'Intermediaire'; } if ($value['niveau'] == 3) { $value['niveau'] = 'Avancé'; } if ($value['niveau'] == 4) { $value['niveau'] = 'Expert'; } $sortie[] = ['niveau' => $value['niveau'], 'nombre' => $value['nombre']]; } //var_dump($data) ; return $data; }