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

79 lines
2.3 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/Bonpec.php';
class ControleurAjaxexporterbons extends Controleurrequete
{
private $bonpec;
public function __construct()
{
$this->bonpec = new Bonpec();
}
public function index()
{
$codePrestataire = $this->requete->getParametreFormulaire("codePrestataire");
$codeTypeBon = $this->requete->getParametre("codeTypeBon");
$codeEtatBon = $this->requete->getParametreFormulaire("codeEtatBon");
$noDepart = $this->requete->getParametreFormulaire("noDepart", "numerique");
$noFin = $this->requete->getParametreFormulaire("noFin", "numerique");
$_SESSION['codePrestataire_C'] = $codePrestataire;
$entete = $this->bonpec->getInfos($codeTypeBon);
$donnees = $this->bonpec->exporterBonpecs($codePrestataire, $codeTypeBon, $codeEtatBon, $noDepart, $noFin);
// Excel
$headerXLS = array
(
_('No Bon'),
_('Attribution'),
_('Réception'),
_('Etat'),
_('No Bénéf'),
_('Bénéficiaire'),
_('Utilisation')
);
$dataXLS = array();
foreach ($donnees as $donnee)
{
$dataXLS[]=$donnee;
}
$classeur = new Spreadsheet();
$classeur->getProperties()->setCreator("INTER-SANTE");
$classeur->setActiveSheetIndex(0);
$feuille=$classeur->getActiveSheet();
$feuille->setTitle(_('EXPORT BONS'));
$feuille->setCellValue('A1', convertirc($_SESSION['nomSociete']));
$feuille->mergeCells('A1:D1');
$feuille->setCellValue('A3', convertirc(_('Type Bon').' : '.$entete['libelle']));
$feuille->mergeCells('A3:D3');
$feuille->fromArray($headerXLS, NULL, 'A5', true);
$feuille->fromArray($dataXLS, NULL, 'A6', true);
//Forcer le téléchargement vers le navigateur;
$fichier = 'Temp/TMP_EXPORT_BONS'."_".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();
}
}