production/Controleur/ControleurAjaxrequeteprestationactesexport.php
2025-12-02 11:29:44 +00:00

128 lines
4.8 KiB
PHP
Executable File

<?php
require_once 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
require_once 'Framework/Controleurrequete.php'; // OK
require_once 'Modele/Prestationactes.php';
class ControleurAjaxrequeteprestationactesexport extends Controleurrequete
{
private $prestationactes;
public function __construct() {
$this->prestationactes = new Prestationactes();
}
public function index()
{
// Ligne 1
$codePrestataire = $this->requete->getParametreFormulaire("codePrestataire");
$datePrestation1 = $this->requete->getParametreDate("datePrestation1");
$datePrestation2 = $this->requete->getParametreDate("datePrestation2");
$numeroAdherent = $this->requete->getParametreFormulaire("numeroAdherent");
$numeroBeneficiaire = $this->requete->getParametreFormulaire("numeroBeneficiaire");
// Ligne 2
$codeMedecin = $this->requete->getParametreFormulaire("codeMedecin");
$numeroBonConsultation1 = $this->requete->getParametreFormulaire("numeroBonConsultation1");
$numeroBonConsultation2 = $this->requete->getParametreFormulaire("numeroBonConsultation2");
$numeroBonOrdonnance1 = $this->requete->getParametreFormulaire("numeroBonOrdonnance1");
$numeroBonOrdonnance2 = $this->requete->getParametreFormulaire("numeroBonOrdonnance2");
$numeroBonHospitalisation1 = $this->requete->getParametreFormulaire("numeroBonHospitalisation1");
$numeroBonHospitalisation2 = $this->requete->getParametreFormulaire("numeroBonHospitalisation2");
$numeroBonOptique1 = $this->requete->getParametreFormulaire("numeroBonOptique1");
$numeroBonOptique2 = $this->requete->getParametreFormulaire("numeroBonOptique2");
// Ligne 3
$codeTypePrestataire = $this->requete->getParametreFormulaire("codeTypePrestataire");
$numeroFeuilleMaladie1 = $this->requete->getParametreFormulaire("numeroFeuilleMaladie1");
$numeroFeuilleMaladie2 = $this->requete->getParametreFormulaire("numeroFeuilleMaladie2");
$codeTypePrestation = $this->requete->getParametreFormulaire("codeTypePrestation");
$ententePrealable = $this->requete->getParametreFormulaire("ententePrealable");
$numeroChambre = $this->requete->getParametreFormulaire("numeroChambre");
$facture = $this->requete->getParametreFormulaire("facture");
// Ligne 4
$adherent = $this->requete->getParametreFormulaire("adherent");
$beneficiaire = $this->requete->getParametreFormulaire("beneficiaire");
// Ligne 5
$libelleActe = $this->requete->getParametreFormulaire("libelleActe");
$libelleFamilleActe = $this->requete->getParametreFormulaire("libelleFamilleActe");
// FIN Champs
$_SESSION['codePrestataire_C'] = $codePrestataire;
$_SESSION['debutRequeteFr_C'] = $this->requete->getParametreFormulaire("datePrestation1");
$_SESSION['finRequeteFr_C'] = $this->requete->getParametreFormulaire("datePrestation2");
$prestationactes = $this->prestationactes->requetesprestationactesexport($codePrestataire, $datePrestation1, $datePrestation2, $numeroAdherent, $numeroBeneficiaire, $codeMedecin,
$numeroBonConsultation1, $numeroBonConsultation2, $numeroBonOrdonnance1, $numeroBonOrdonnance2, $numeroBonHospitalisation1,
$numeroBonHospitalisation2, $numeroBonOptique1, $numeroBonOptique2, $codeTypePrestataire, $numeroFeuilleMaladie1,
$numeroFeuilleMaladie2, $codeTypePrestation, $ententePrealable, $numeroChambre, $facture, $adherent, $beneficiaire, $libelleActe, $libelleFamilleActe);
// Excel
$headerXLS = array(
_('Prestataire'),
'Date',
_('No Adhérent'),
_('Adhérent'),
_('No Bénéficiaire'),
_('Bénéficiaire'),
_('No Feuille'),
_('Bon Cons'),
_('Bon Phar'),
_('Bon Hospit'),
_('Bon Opt'),
'Type',
_('Acte'),
_('Médecin'),
_('No OM'),
_('Valeur'),
_('Quantité'),
_('Frais'),
_('T M'),
_('A Remb'),
_('No Fact'),
_('Validé'),
'login'
);
$dataXLS = array();
foreach ($prestationactes as $prestationacte)
{
$dataXLS[]=$prestationacte;
}
$classeur = new Spreadsheet();
$classeur->getProperties()->setCreator("INTER-SANTE");
$classeur->setActiveSheetIndex(0);
$feuille=$classeur->getActiveSheet();
$feuille->setTitle(_('PRESTATIONS'));
$feuille->fromArray($headerXLS, NULL, 'A1', true);
$feuille->fromArray($dataXLS, NULL, 'A2', true);
//Forcer le téléchargement vers le navigateur;
$fichier = 'Temp/TMP_PRESTATIONS'."_".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();
}
}