radiantprestation/Controleur/ControleurPharmacien.php

113 lines
3.8 KiB
PHP

<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Menuvueutilisateur.php';
require_once 'Modele/Beneficiaire.php';
require_once 'Modele/Detailprescription.php';
require_once 'Modele/Prescription_temp.php';
require_once 'Modele/Prestationactes.php';
require_once 'Modele/Finger.php';
require_once 'Modele/Ged.php';
class ControleurPharmacien extends Controleur {
private $beneficiaire;
private $prescription;
private $detailprescription;
private $prestation;
private $finger;
private $ged;
public function __construct() {
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue('Pharmacien');
$this->prescription = new Prescription_temp();
$this->detailprescription = new Detailprescription();
$this->prestation = new Prestationactes();
$this->ged = new Ged();
$this->beneficiaire = new Beneficiaire();
if ($_SESSION['p_codeProfil_C']=="PHA")
{
viderContexte();
}
$_SESSION['p_okId'] = "-1";
$this->finger = new Finger();
$_SESSION['p_codeTypeFacture_C'] = "PHAR";
}
public function index()
{
$garantieadherent_temp = null;
$limite_beneficiaire = null;
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$numeroBonOrdonnance = $_SESSION['p_numeroBonOrdonnance_C'];
if($numeroBonOrdonnance=="-1" or $numeroBonOrdonnance=="0")
{
$this->genererVue();
}
else
{
$resultat = $this->beneficiaire->getBeneficiaireOrdonnancePha($numeroBonOrdonnance);
$_SESSION['p_hospitalisation_C'] = $resultat['hospitalisation'];
$idBeneficiaire = $resultat['idBeneficiaire'];
$beneficiaire = $this->beneficiaire->getContexteBeneficiaireId($idBeneficiaire);
if($_SESSION['p_hospitalisation_C']>0 && $_SESSION['p_appliquerTmHospit_C']>0)
{
$_SESSION['p_tm_C'] = "0";
}
$this->prescription->initpharmacie_pha($numeroBonOrdonnance);
$numeroPrescription = $_SESSION['p_numeroPrescription_C'];
$prescription = $this->prescription->getprescription_pha($numeroBonOrdonnance);
$detailprescriptions = $this->detailprescription->getdetailprescription_pha($numeroBonOrdonnance);
$detailnonlivres = $this->prescription->getdetailnonlivre();
$detaillivres = $this->prescription->getdetaillivrepha();
$factures = $this->prescription->getfactures_ordonnance($numeroBonOrdonnance);
$factures_toal = $this->prescription->getfactures_total_ordonnance($numeroBonOrdonnance);
$user_id = $_SESSION['p_user_id_C'];
$this->finger->vider_finger_temp($user_id);
$idPrestationactes = $prescription['idPrestationactes'];
$remplace = $prescription['remplace'];
$numeroRemplace = $prescription['numeroRemplace'];
$numeroFeuilleMaladie = $prescription['numeroFeuilleMaladie'];
$numeroPrescription = $prescription['numeroPrescription'];
$facturable=($numeroRemplace != $numeroBonOrdonnance);
$this->prestation->vider_garantieadherent_temp($numeroFeuilleMaladie, $codePrestataire);
if($facturable)
{
$garantieadherent_temp = $this->prestation->init_garantieadherent_temp_pha($numeroFeuilleMaladie, $codePrestataire);
$this->beneficiaire->controlerplafondbeneficiaireannuel($idBeneficiaire);
$limite_beneficiaire = $this->prestation->getLimitesBeneficiaireTemp();
}
unset($_FILES['fichier_upload']);
$geds = $this->ged->getgedpharmacie();
$this->genererVue(array('prescription' => $prescription, 'detailprescriptions' => $detailprescriptions, 'detailnonlivres' => $detailnonlivres,
'detaillivres' => $detaillivres, 'garantieadherent_temp' => $garantieadherent_temp, 'factures' => $factures, 'factures_toal' => $factures_toal,
'geds' => $geds, 'limite_beneficiaire' => $limite_beneficiaire));
}
}
}