66 lines
1.7 KiB
PHP
66 lines
1.7 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/Beneficiaire.php';
|
|
|
|
class ControleurAjaxassuresactifsexport extends Controleurrequete
|
|
{
|
|
private $beneficiaire;
|
|
|
|
public function __construct()
|
|
{
|
|
$this->beneficiaire = new Beneficiaire();
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
$dateAnalyse = $this->requete->getParametreDate("dateAnalyse");
|
|
|
|
$beneficiaires = $this->beneficiaire->getBeneficiairesActifsExport($dateAnalyse);
|
|
|
|
// Excel
|
|
$headerXLS = array(
|
|
_('Souscripteur'),
|
|
_('No Police'),
|
|
_('Date Effet'),
|
|
_('Echéance'),
|
|
_('Nb Adhérents'),
|
|
_('Nb Dépendants'),
|
|
_('Nb Bénéficiaires')
|
|
);
|
|
|
|
$dataXLS = array();
|
|
|
|
|
|
foreach ($beneficiaires as $beneficiaire)
|
|
{
|
|
$dataXLS[]=$beneficiaire;
|
|
}
|
|
|
|
|
|
$classeur = new Spreadsheet();
|
|
$classeur->getProperties()->setCreator("INTER-SANTE");
|
|
$classeur->setActiveSheetIndex(0);
|
|
$feuille=$classeur->getActiveSheet();
|
|
$feuille->setTitle(_('ASSURES ACTIFS'));
|
|
|
|
$feuille->setCellValue('A1', convertirc(_("DATE ANALYSE")." : ".$dateAnalyse));
|
|
$feuille->fromArray($headerXLS, NULL, 'A3', true);
|
|
$feuille->fromArray($dataXLS, NULL, 'A4', true);
|
|
|
|
//Forcer le téléchargement vers le navigateur;
|
|
$fichier = 'Temp/TMP_ASS_ACTIFS'."_".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();
|
|
}
|
|
} |