Modification & optimisation format MCC

This commit is contained in:
xdrm-brackets 2015-11-20 13:39:06 +01:00
parent 47bba6cc75
commit 746197e68c
5 changed files with 51 additions and 19 deletions

View File

@ -120,34 +120,49 @@ function xlsx_switch_lvl1($request, $answer){
break; break;
case 'import_mcc': case 'import_mcc':
if(isset($request->docPath)) { if(isset($request->docPath)) {
$inputFileType = 'Excel2007'; // $inputFileType = 'Excel2007';
$inputFileName = $request->docPath; $inputFileName = $request->docPath;
// Charger le fichier en tant que document Excel // Charger le fichier en tant que document Excel
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName); $objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
// Get 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()); $mccData = $sheet->rangeToArray('A2:'.$sheet->getHighestColumn().''.$sheet->getHighestRow());
$uelist = array();
// permet d'éviter les doublons /* permet d'éviter les doublons */
$uelist = array(); // contiendra le tableau de retour
$ueuid = array(); $ueuid = array();
/****************************/
/* TRAITEMENT SUR LES CASES */
/****************************/
foreach($mccData as $line){ foreach($mccData as $line){
if( $line[0] != null ){ if( $line[0] != null ){
/* [1] On récupère les données de l'UE, si les champs sont définis /* [1] On récupère les données de l'UE, si les champs sont définis
=========================================================================*/ =========================================================================*/
if( $line[0] != null && $line[1] != null && $line[2] != null ){ if( /*$line[0] != null && */ $line[1] != null && $line[2] != null ){
if( !in_array($line[0], $ueuid) ){ // on créé l'UE dans la liste s'il n'y est pas déjà if( $line[0] != null && !in_array($line[0], $ueuid) ){ // on créé l'UE dans la liste s'il n'y est pas déjà
array_push( // on ajoute l'UE array_push( // on ajoute l'UE
$uelist, $uelist,
@ -163,14 +178,14 @@ function xlsx_switch_lvl1($request, $answer){
array_push($ueuid, $line[0]); // on dis qu'on a déjà enregistré l'ue array_push($ueuid, $line[0]); // on dis qu'on a déjà enregistré l'ue
} }
if( $line[0] != null )
$ueIndex = array_search($line[0], $ueuid); $ueIndex = array_search($line[0], $ueuid);
/* [2] On récupère les données du module, si les champs sont définis /* [2] On récupère les données du module, si les champs sont définis
=========================================================================*/ =========================================================================*/
if( $line[3] != null && $line[4] != null && $line[5] != null ){ if( /*$line[3] != null && */ $line[4] != null && $line[5] != null ){
if( !in_array($line[3], $uelist[$ueIndex]['moduid']) ){ // on créé le module dans la liste de cet UE s'il n'y est pas déjà if( $line[3] != null && !in_array($line[3], $uelist[$ueIndex]['moduid']) ){ // on créé le module dans la liste de cet UE s'il n'y est pas déjà
array_push( // on ajoute l'UE array_push( // on ajoute l'UE
$uelist[$ueIndex]['modules'], $uelist[$ueIndex]['modules'],
array( array(
@ -186,7 +201,8 @@ function xlsx_switch_lvl1($request, $answer){
} }
} }
$modIndex = array_search($line[3], $uelist[$ueIndex]['moduid']); if( $line[3] != null )
$modIndex = array_search($line[3], $uelist[$ueIndex]['moduid']);
/* [3] On récupère les contrôles du module, si les champs sont définis /* [3] On récupère les contrôles du module, si les champs sont définis
=========================================================================*/ =========================================================================*/
@ -233,6 +249,21 @@ function xlsx_switch_lvl1($request, $answer){
break; break;
// DEFAULT // DEFAULT
default: default:
$answer->request = 'unknown_level_1'; $answer->request = 'unknown_level_1';

View File

@ -496,7 +496,8 @@ if( permission('admin') ){
$request = new stdClass(); $answer = new stdClass(); $request = new stdClass(); $answer = new stdClass();
$request->level_1 = 'import_mcc'; $request->level_1 = 'import_mcc';
$request->docPath = __ROOT__.'/src/excelTemplates/mcc.xlsx'; // $request->docPath = __ROOT__.'/src/excelTemplates/mcc.xlsx';
$request->docPath = __ROOT__.'/src/nouveau_modele.xlsx';
xlsx_switch_lvl1($request, $answer); xlsx_switch_lvl1($request, $answer);

View File

@ -0,0 +1 @@
,xdrm,linux,20.11.2015 13:38,file:///home/xdrm/.config/libreoffice/4;

View File

@ -1 +0,0 @@
,xdrm,linux,20.11.2015 13:13,file:///home/xdrm/.config/libreoffice/4;

Binary file not shown.