prestation/Controleur/ControleurAjaxevolspmoisacqexport.php
2025-12-01 18:54:33 +00:00

106 lines
2.1 KiB
PHP

<?php
require_once 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
require_once 'Framework/Controleurrequete.php'; // OK
require_once 'Modele/Statistique.php';
class ControleurAjaxevolspmoisacqexport extends Controleurrequete
{
private $etat;
public function __construct() {
$this->etat = new Statistique();
}
public function index()
{
$debutPeriode = $this->requete->getParametreDate("debutPeriode");
$finPeriode = $this->requete->getParametreDate("finPeriode");
$donnees = $this->etat->etatevolspmoisacquexport($debutPeriode, $finPeriode) ;
// Excel
$headerXLS = array(
'id',
_('Exercice'),
'P_Jan',
'S_Jan',
'SP_Jan',
'P_Fev',
'S_Fev',
'SP_Fev',
'P_Mar',
'S_Mar',
'SP_Mar',
'P_Avr',
'S_Avr',
'SP_Avr',
'P_Mai',
'S_Mai',
'SP_Mai',
'P_Juin',
'S_Juin',
'SP_Juin',
'P_Juil',
'S_Juil',
'SP_Juil',
'P_Aou',
'S_Aou',
'SP_Aou',
'P_Sept',
'S_Sept',
'SP_Sept',
'P_Oct',
'S_Oct',
'SP_Oct',
'P_Nov',
'S_Nov',
'SP_Nov',
'P_Dec',
'S_Dec',
'SP_Dec');
$dataXLS = array();
foreach ($donnees as $donnee)
{
$dataXLS[]=$donnee;
}
$classeur = new Spreadsheet();
$classeur->getProperties()->setCreator("INTER-SANTE");
$classeur->setActiveSheetIndex(0);
$feuille=$classeur->getActiveSheet();
$feuille->setTitle(_('SP MOIS PRIME ACQUISE'));
$feuille->fromArray($headerXLS, NULL, 'A1', true);
$feuille->fromArray($dataXLS, NULL, 'A2', true);
//Forcer le téléchargement vers le navigateur;
$fichier = 'Temp/TMP_EVOL_SP_MOIS_P_ACQ'."_".uniqid().".xlsx";
$writer = new Xlsx($classeur);
$writer->save($fichier);
$t_html =' <div id ="div_export_a" class="alert alert-info"> ';
$t_html .=' <a style="font-size:15pt;" href="'.$fichier.'" target="_blank" > '._("TELECHARGER").' </a> ';
$t_html .=' </div ';
echo $t_html;
exit();
}
}