[x] Déployer et remodeler: enseignement de groupe & mcc_module
+ définir les requêtes à modifier + définir les actions qui auront de conséquences + modifier les requêtes + modifier l'interface + modifier le déploiement
This commit is contained in:
parent
7b98cb3299
commit
e89e992894
|
@ -844,7 +844,7 @@ class DataBase{
|
||||||
public function getControlesEnseignant($enseignant, $semestre_pair, $annee){
|
public function getControlesEnseignant($enseignant, $semestre_pair, $annee){
|
||||||
// on vérifie que le semestre existe et que l'enseignant y enseigne
|
// on vérifie que le semestre existe et que l'enseignant y enseigne
|
||||||
if( !($enseignantUID=userRepo::UID($enseignant, null, $semestre_pair, $annee)) ) return 'unknown_teacher';
|
if( !($enseignantUID=userRepo::UID($enseignant, null, $semestre_pair, $annee)) ) return 'unknown_teacher';
|
||||||
debug();
|
|
||||||
// on récupère les semestres de cette année
|
// on récupère les semestres de cette année
|
||||||
$semestreList = semestreRepo::forTeacher($enseignantUID, $semestre_pair, $annee);
|
$semestreList = semestreRepo::forTeacher($enseignantUID, $semestre_pair, $annee);
|
||||||
|
|
||||||
|
@ -917,7 +917,7 @@ class DataBase{
|
||||||
public function getNotesForControleEnseignant($enseignant, $annee, $controle, $groupe=null){ // [OPTIONNEL] $groupe
|
public function getNotesForControleEnseignant($enseignant, $annee, $controle, $groupe=null){ // [OPTIONNEL] $groupe
|
||||||
|
|
||||||
// on récupère les informations du contrôle
|
// on récupère les informations du contrôle
|
||||||
if( ! ($controlObj=controleRepo::info($controle, $enseignant)) ) return 'unknown_controle';
|
if( !($controlObj=controleRepo::info($controle, $enseignant, $groupe)) ) return 'unknown_controle';
|
||||||
|
|
||||||
// on ajoute la moyenne au contrôle
|
// on ajoute la moyenne au contrôle
|
||||||
$controlObj['moyenne'] = noteRepo::moyenneForControle($controlObj['id']);
|
$controlObj['moyenne'] = noteRepo::moyenneForControle($controlObj['id']);
|
||||||
|
@ -938,14 +938,12 @@ class DataBase{
|
||||||
/* [2] si on veut par groupe
|
/* [2] si on veut par groupe
|
||||||
=======================================*/
|
=======================================*/
|
||||||
}else{
|
}else{
|
||||||
$controlObj['grouplist'] = groupRepo::forControle($controle);
|
$controlObj['grouplist'] = groupRepo::forControle($controle, $enseignant);
|
||||||
|
|
||||||
foreach($controlObj['grouplist'] as $iter=>$grpe)
|
foreach($controlObj['grouplist'] as $iter=>$grpe)
|
||||||
if( $controleNotes = noteRepo::forGroupe($controle, $grpe['id_groupe']) ) // si le groupe a des notes, on les ajoutes
|
if( $controleNotes = noteRepo::forGroupe($controle, $grpe['id_groupe']) ) // si le groupe a des notes, on les ajoutes
|
||||||
$controlObj['grouplist'][$iter] = array_merge($controlObj['grouplist'][$iter], $controleNotes);
|
$controlObj['grouplist'][$iter] = array_merge($controlObj['grouplist'][$iter], $controleNotes);
|
||||||
|
|
||||||
// var_dump( $controlObj );
|
|
||||||
debug();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $controlObj;
|
return $controlObj;
|
||||||
|
@ -960,6 +958,9 @@ class DataBase{
|
||||||
/*******************************************/
|
/*******************************************/
|
||||||
public function getNotesForControle($annee, $controle, $groupe=null){ // [OPTIONNEL] $groupe
|
public function getNotesForControle($annee, $controle, $groupe=null){ // [OPTIONNEL] $groupe
|
||||||
|
|
||||||
|
// on vérifie que le semestre existe et que l'enseignant y enseigne
|
||||||
|
if( !($enseignantUID=userRepo::UID($enseignant)) ) return 'unknown_teacher';
|
||||||
|
|
||||||
// on récupère les informations du contrôle
|
// on récupère les informations du contrôle
|
||||||
if( ! ($controlObj=controleRepo::info($controle)) ) return 'unknown_controle';
|
if( ! ($controlObj=controleRepo::info($controle)) ) return 'unknown_controle';
|
||||||
|
|
||||||
|
@ -983,6 +984,7 @@ class DataBase{
|
||||||
=======================================*/
|
=======================================*/
|
||||||
}else{
|
}else{
|
||||||
$controlObj['grouplist'] = groupRepo::forControle($controle);
|
$controlObj['grouplist'] = groupRepo::forControle($controle);
|
||||||
|
var_dump( $controlObj['grouplist'] );
|
||||||
|
|
||||||
foreach($controlObj['grouplist'] as $iter=>$grpe)
|
foreach($controlObj['grouplist'] as $iter=>$grpe)
|
||||||
if( $controleNotes = noteRepo::forGroupe($controle, $grpe['id_groupe']) ) // si le groupe a des notes, on les ajoutes
|
if( $controleNotes = noteRepo::forGroupe($controle, $grpe['id_groupe']) ) // si le groupe a des notes, on les ajoutes
|
||||||
|
|
|
@ -20,7 +20,7 @@ class controleRepo extends DBAccess{
|
||||||
* @return controle<Array> tableau associatif contenant tout les champs de la BDD pour ce controle
|
* @return controle<Array> tableau associatif contenant tout les champs de la BDD pour ce controle
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static function info($controleUID, $enseignant=null){
|
public static function info($controleUID, $enseignant=null, $groupe=null){
|
||||||
if( $enseignant == null ){
|
if( $enseignant == null ){
|
||||||
|
|
||||||
/* [1] On cherche juste le contrôle avec l'id spécifié
|
/* [1] On cherche juste le contrôle avec l'id spécifié
|
||||||
|
@ -41,6 +41,7 @@ class controleRepo extends DBAccess{
|
||||||
));
|
));
|
||||||
|
|
||||||
}else{ // cas où on cherche un contrôle qu'un enseignant corrige
|
}else{ // cas où on cherche un contrôle qu'un enseignant corrige
|
||||||
|
$groupeUID = (is_numeric($groupe)) ? $groupe : '%';
|
||||||
|
|
||||||
/* [2] On cherche le contrôle avec l'id spécifié qu'enseignant l'@enseignant
|
/* [2] On cherche le contrôle avec l'id spécifié qu'enseignant l'@enseignant
|
||||||
==============================================================================*/
|
==============================================================================*/
|
||||||
|
@ -53,6 +54,7 @@ class controleRepo extends DBAccess{
|
||||||
AND ens.id_mcc_module = mcc_m.id_mcc_module
|
AND ens.id_mcc_module = mcc_m.id_mcc_module
|
||||||
AND ens.correcteur = 1
|
AND ens.correcteur = 1
|
||||||
AND ens.id_enseignant = :enseignant
|
AND ens.id_enseignant = :enseignant
|
||||||
|
AND ens.id_groupe LIKE '$groupeUID'
|
||||||
|
|
||||||
AND ctrl.id_controle = :controleUID
|
AND ctrl.id_controle = :controleUID
|
||||||
|
|
||||||
|
|
|
@ -269,19 +269,28 @@ class groupRepo extends DBAccess{
|
||||||
*
|
*
|
||||||
* @controle<int> l'UID du contrôle en question
|
* @controle<int> l'UID du contrôle en question
|
||||||
*
|
*
|
||||||
|
* @enseignant<int> ***OPTIONNEL*** l'UID de l'enseignant en question
|
||||||
|
*
|
||||||
*
|
*
|
||||||
* @return groupes<Array> retourne un tableau contenant les groupes inscrits à ce contrôle
|
* @return groupes<Array> retourne un tableau contenant les groupes inscrits à ce contrôle
|
||||||
* @return FALSE<Boolean> retourne FALSE si aucun groupe n'y est inscrit
|
* @return FALSE<Boolean> retourne FALSE si aucun groupe n'y est inscrit
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static function forControle($controle){
|
public static function forControle($controle, $enseignant=null){
|
||||||
$getGroupeList = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe, g.nom
|
$enseignantUID = (is_string($enseignant)) ? $enseignant : '%';
|
||||||
FROM groupe as g, appartenance as app, mcc_ue, mcc_module as mcc_m, controle as ctrl
|
|
||||||
WHERE app.id_groupe = g.id_groupe
|
|
||||||
AND ctrl.id_mcc_module = mcc_m.id_mcc_module
|
|
||||||
AND mcc_m.id_mcc_ue = mcc_ue.id_mcc_ue
|
|
||||||
AND app.id_semestre = mcc_ue.id_semestre
|
|
||||||
|
|
||||||
|
$getGroupeList = DataBase::getPDO()->prepare("SELECT DISTINCT g.id_groupe, g.nom
|
||||||
|
FROM groupe as g, mcc_module as mcc_m, controle as ctrl, enseignement as ens
|
||||||
|
-- WHERE app.id_groupe = g.id_groupe
|
||||||
|
-- AND ens.id_groupe = g.id_groupe
|
||||||
|
-- AND ens.id_mcc_module = mcc_m.id_mcc_module
|
||||||
|
-- AND ctrl.id_mcc_module = mcc_m.id_mcc_module
|
||||||
|
-- AND mcc_m.id_mcc_ue = mcc_ue.id_mcc_ue
|
||||||
|
-- AND app.id_semestre = mcc_ue.id_semestre
|
||||||
|
WHERE ctrl.id_mcc_module = ens.id_mcc_module
|
||||||
|
AND ens.id_groupe = g.id_groupe
|
||||||
|
|
||||||
|
AND ens.id_enseignant LIKE '$enseignantUID'
|
||||||
AND ctrl.id_controle = :controle
|
AND ctrl.id_controle = :controle
|
||||||
ORDER BY g.nom ASC");
|
ORDER BY g.nom ASC");
|
||||||
$getGroupeList->execute(array( ':controle' => $controle ));
|
$getGroupeList->execute(array( ':controle' => $controle ));
|
||||||
|
|
|
@ -204,7 +204,7 @@ if( permission('teacher') ){ // si l'utilisateur est connecté et que c'est un
|
||||||
|
|
||||||
groups_switch_level_1($request, $answer);
|
groups_switch_level_1($request, $answer);
|
||||||
|
|
||||||
var_dump( $answer );
|
// var_dump( $answer );
|
||||||
|
|
||||||
if( $answer->request == 'success' && $answer->request == 'success' && count($answer->grouplist) > 0 ){ // si on a bien récupéré les membres du groupe
|
if( $answer->request == 'success' && $answer->request == 'success' && count($answer->grouplist) > 0 ){ // si on a bien récupéré les membres du groupe
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
Loading…
Reference in New Issue