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

96 lines
2.8 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 ControleurAjaxdetailrapportspperiode extends Controleur
{
private $detailsp;
public function __construct() {
$this->detailsp = new Statistique();
}
public function index()
{
$idPolice = $this->requete->getParametreFormulaire("idPolice");
$entete = $this->detailsp->detailrapportspperiodepdfentete($idPolice);
$detailsps = $this->detailsp->detailrapportsp($idPolice);
$detailsps = $this->detailsp->detailrapportspperiode($idPolice);
// Excel
$headerXLS = array
(
_('Matricule'),
_('Adhérent'),
_('Date Effet'),
_('Duree Acquise'),
_('Primes Totales'),
_('Primes Acquises'),
_('Sinistres'),
_('Rapport S/P'),
_('S/P Annuel')
);
$dataXLS = array();
foreach ($detailsps as $detailsp)
{
$dataXLS[]=$detailsp;
}
$classeur = new Spreadsheet();
$classeur->getProperties()->setCreator("INTER-SANTE");
$classeur->setActiveSheetIndex(0);
$feuille=$classeur->getActiveSheet();
$feuille->setTitle(_('DETAIL SP CLIENT'));
$feuille->setCellValue('A1', convertirc($entete['nomAssureur']));
$feuille->setCellValue('B1', convertirc(_("RAPPORT SINISTRE A PRIME DETAIL PAR FAMILLE")));
$feuille->setCellValue('A2', convertirc(_('Garant').' : '));
$feuille->setCellValue('B2', convertirc($entete['garant']));
$feuille->setCellValue('A3', convertirc(_('Souscripteur').' : '));
$feuille->setCellValue('B3', convertirc($entete['souscripteur']));
$feuille->setCellValue('A4', convertirc(_('Police').' No: '));
$feuille->setCellValue('B4', convertirc($entete['numeroPolice']).' / '.$entete['libellePolice']);
// $feuille->setCellValue('A4', convertirc(_('Période couverte').' : '));
$feuille->setCellValue('A5', convertirc(_('Couverture').' : '));
$feuille->setCellValue('B5', convertirc($entete['dateEffetPolice']).' '._('au').' '.$entete['dateFinPolice']);
$feuille->setCellValue('A6', convertirc(_('Periode').' : '));
$feuille->setCellValue('B6', convertirc($entete['debutAnalyse']).' '._('au').' '.$entete['finAnalyse']);
$feuille->fromArray($headerXLS, NULL, 'A8', true);
$feuille->fromArray($dataXLS, NULL, 'A9', true);
//Forcer le téléchargement vers le navigateur;
$fichier = 'Temp/DETAIL_SP_CLIENT'."_".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();
}
}