excelManager@import_jury
This commit is contained in:
parent
d7b4c4c49f
commit
be13fecb9e
|
@ -451,14 +451,19 @@ class excelManager{
|
||||||
|
|
||||||
// [5] Écriture des valeurs dans le document Excel
|
// [5] Écriture des valeurs dans le document Excel
|
||||||
$index = 5;
|
$index = 5;
|
||||||
foreach($request->grouplist as $group){
|
foreach($request->grouplist as $GROUP){
|
||||||
$index++;
|
$index++;
|
||||||
|
|
||||||
foreach($group->userlist as $student){
|
foreach($GROUP->userlist as $USER){
|
||||||
$sheet->setCellValue('A'.$index, $student->identifiant);
|
$sheet->setCellValue('A'.$index, $USER->identifiant);
|
||||||
$sheet->setCellValue('B'.$index, $group->formation);
|
$sheet->setCellValue('B'.$index, $GROUP->formation);
|
||||||
$sheet->setCellValue('C'.$index, $group->nom);
|
$sheet->setCellValue('C'.$index, $GROUP->nom);
|
||||||
|
if( $USER->mention != null ) // si mention déjà spécifiée, on l'affiche
|
||||||
|
$sheet->setCellValue('D'.$index, $USER->mention);
|
||||||
|
else // sinon, on met "[À compléter]"
|
||||||
$sheet->setCellValue('D'.$index, '[À compléter]');
|
$sheet->setCellValue('D'.$index, '[À compléter]');
|
||||||
|
|
||||||
|
|
||||||
$index++;
|
$index++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -486,44 +491,47 @@ class excelManager{
|
||||||
/************************************/
|
/************************************/
|
||||||
case 'import_jury':
|
case 'import_jury':
|
||||||
|
|
||||||
if(isset($request->docPath)) {
|
|
||||||
|
|
||||||
// Récupération du nom du fichier
|
$filePath = __EXCEL_PATH__.$_SESSION['identifiant'].'_import_jury.xlsx';
|
||||||
|
|
||||||
$inputFileName = $request->docPath;
|
// si on a pas le droit d'écriture, on quitte //
|
||||||
|
if( !is_readable($filePath) ){ $answer->request = 'read_permission'; return; }
|
||||||
|
|
||||||
// Chargement du fichier
|
// Charger le fichier en tant que document Excel
|
||||||
|
$objPHPExcel = PHPExcel_IOFactory::load($filePath);
|
||||||
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
|
|
||||||
|
|
||||||
// Placement du curseur sur la première case
|
|
||||||
|
|
||||||
|
// Get sur la première case
|
||||||
$sheet = $objPHPExcel->getSheet(0);
|
$sheet = $objPHPExcel->getSheet(0);
|
||||||
$mccData = $sheet->rangeToArray('A2:'.$sheet->getHighestColumn().''.$sheet->getHighestRow());
|
$juryData = $sheet->rangeToArray('A6:'.'D'.$sheet->getHighestRow());
|
||||||
|
|
||||||
// Varaible stack pour les résultats du jury
|
|
||||||
|
|
||||||
$resultatJury = array();
|
$jury = array(); // contiendra le tableau de retour
|
||||||
|
$mentionsPossibles = array('ADM', 'ADJ', 'RDB', 'RFS');
|
||||||
|
|
||||||
// Boucle sur le format suivant : ligne[0] : [IDETUDIANT] / ligne[1] : [DECISION JURY]
|
/****************************/
|
||||||
|
/* TRAITEMENT SUR LES CASES */
|
||||||
|
/****************************/
|
||||||
|
foreach($juryData as $line){
|
||||||
|
|
||||||
$i = 0;
|
/* [1] On récupère pour chaque étudiant si le format est bon
|
||||||
|
=========================================================================*/
|
||||||
|
if( checkParam($line[0], 'utilisateur.identifiant') && in_array($line[3], $mentionsPossibles) ){ // bon format pour l'identifiant et la mention
|
||||||
|
|
||||||
foreach($mccData as $line) {
|
array_push( // on ajoute l'étudiant et sa mention
|
||||||
|
$jury,
|
||||||
|
array(
|
||||||
|
'etudiant' => $line[0],
|
||||||
|
'mention' => $line[3]
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
$resultatJury[$i++] = array($line[0],$line[1]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$answer->resultatJury = $resultatJury;
|
|
||||||
$asnwer->request = 'success';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Erreur de paramètre(s)
|
$answer->jury = $jury;
|
||||||
|
$answer->request = 'success';
|
||||||
|
|
||||||
else {
|
|
||||||
|
|
||||||
$answer->request='param_error';
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue