prestation/Modele/Optique_temp.php
2025-12-05 10:42:46 +00:00

619 lines
20 KiB
PHP
Executable File

<?php
require_once 'Framework/Modele.php';
class Optique_temp extends Modele {
public function getoptiquetemp()
{
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
//var_dump($user);
//die();
$sql = 'call sp_p_get_optique_feuille(?, ?, ?)';
$optique = $this->executerRequete($sql, array($numeroFeuilleMaladie, $idSaisie, $user));
return $optique->fetch(PDO::FETCH_ASSOC);
}
public function getoptique($numeroOptique)
{
$sql = 'call sp_p_get_optique(?)';
$optique = $this->executerRequete($sql, array($numeroOptique));
return $optique->fetch(PDO::FETCH_ASSOC);
}
public function getContexteAjaxOptique($numeroOptique)
{
$_SESSION['p_numeroOptique_C'] = $numeroOptique;
}
public function enregistreroptique($numeroBonOptique, $codeMedecin, $codeGestionBon, $motifOptique)
{
$codeSociete = $_SESSION['p_codeSociete'];
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$sql = 'call sp_p_enregistrer_optique(?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeSociete, $idBeneficiaire, $numeroFeuilleMaladie, $numeroBonOptique, $codeMedecin,
$user, $idSaisie, $codeGestionBon, $motifOptique));
}
public function getoptique_opt($numeroBonOptique)
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
//var_dump($numeroBonOptique, $idSaisie, $user);
//die();
$sql = 'call sp_p_get_optique_temp_opt(?, ?, ?)';
$prescription = $this->executerRequete($sql, array($numeroBonOptique, $idSaisie, $user));
$ligne = $prescription->fetch(PDO::FETCH_ASSOC);
//var_dump($ligne);
$_SESSION['p_numeroOptique_C'] = $ligne['numeroOptique'];
$_SESSION['p_numeroFeuilleMaladie_C'] = $ligne['numeroFeuilleMaladie'];
$_SESSION['p_idFacture_C'] = $ligne['idFacture'];
return $ligne;
}
public function initoptique_cso()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$codeActeOptique = $_SESSION['p_codeActeOptique_C'];
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_init_optique_cso(?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codePrestataire, $codeActeOptique, $idSaisie, $numeroFeuilleMaladie, $user));
}
public function initoptique_opt()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$codeActeOptique = $_SESSION['p_codeActeOptique_C'];
$numeroBonOptique = $_SESSION['p_numeroBonOptique_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$codeActeMonture = $_SESSION['p_codeActeMonture_C'];
$sql = 'call sp_p_init_optique_opt(?, ?, ?, ?, ?, ?);';
$this->executerRequete($sql, array($codePrestataire, $codeActeOptique, $codeActeMonture, $idSaisie, $numeroBonOptique, $user));
}
public function getContexteAjaxPrescription($numeroPrescription)
{
$_SESSION['p_numeroPrescription_C'] = $numeroPrescription;
}
public function getContexteAjaxOrdonnance($numeroBonOrdonnance)
{
$_SESSION['p_numeroBonOrdonnance_C'] = $numeroBonOrdonnance;
}
public function enregistrerprescription($numeroBon, $codeMedecin)
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$numeroPrescription = $_SESSION['p_numeroPrescription_C'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_enregistrer_prescription(?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($idBeneficiaire, $numeroFeuilleMaladie, $numeroPrescription, $numeroBon, $codeMedecin, $user));
}
public function getdetailnonlivre()
{
$numeroOptique = $_SESSION['p_numeroOptique_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
if (est_anglophone())
{
$sql = 'call sp_p_get_detail_non_livre_opt_eng(?, ?, ?)';
}
else
{
$sql = 'call sp_p_get_detail_non_livre_opt(?, ?, ?)';
}
$resultat = $this->executerRequete($sql, array($numeroOptique, $idSaisie, $user));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getdetaillivre()
{
$numeroOptique = $_SESSION['p_numeroOptique_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
if (est_anglophone())
{
$sql = 'call sp_p_get_detail_livre_opt_eng(?, ?, ?)';
}
else
{
$sql = 'call sp_p_get_detail_livre_opt(?, ?, ?)';
}
$resultat = $this->executerRequete($sql, array($numeroOptique, $idSaisie, $user));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function ajouterverre($idOptique)
{
$sql = 'call sp_p_ajouter_verre_temp(?)';
$this->executerRequete($sql, array($idOptique));
}
public function ajouterverretous()
{
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_ajouter_verre_temp_tous(?, ?, ?)';
$this->executerRequete($sql, array($numeroFeuilleMaladie, $idSaisie, $user));
}
public function retirerverre($idOptique)
{
$sql = 'call sp_p_retirer_verre_temp(?)';
$this->executerRequete($sql, array($idOptique));
}
public function retirerverretous()
{
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_retirer_verre_temp_tous(?, ?, ?)';
$this->executerRequete($sql, array($numeroFeuilleMaladie, $idSaisie, $user));
}
public function enregistrerpharmacie()
{
$numeroPrescription = $_SESSION['p_numeroPrescription_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$idAdherent = $_SESSION['p_idAdherent_C'];
$numeroAdherent = $_SESSION['p_numeroAdherent_C'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$numeroBeneficiaire = $_SESSION['p_numeroBeneficiaire_C'];
$sql = 'call sp_p_enregistrer_pharmacie_cso(?, ?, ? , ? , ?, ?, ?)';
$this->executerRequete($sql, array($numeroPrescription, $idSaisie, $user, $idAdherent, $numeroAdherent, $idBeneficiaire, $numeroBeneficiaire));
}
public function factureropotique()
{
$numeroOptique = $_SESSION['p_numeroOptique_C'];
//var_dump($numeroOptique);
$idSaisie = $_SESSION['p_idSaisie'];
//var_dump($idSaisie);
$user = $_SESSION['p_login'];
//var_dump($user);
$user_id = $_SESSION['p_user_id_C'];
//var_dump($user_id);
$idAdherent = $_SESSION['p_idAdherent_C'];
//var_dump($idAdherent);
$numeroAdherent = $_SESSION['p_numeroAdherent_C'];
//var_dump($numeroAdherent);
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
//var_dump($idBeneficiaire);
$numeroBeneficiaire = $_SESSION['p_numeroBeneficiaire_C'];
//var_dump($numeroBeneficiaire);
//die();
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$sql = 'call sp_p_enregistrer_optique_opt(?, ?, ?, ?, ? , ?, ?, ?, ?)';
$this->executerRequete($sql, array($numeroOptique, $idSaisie, $user, $user_id, $idAdherent, $numeroAdherent,
$idBeneficiaire, $numeroBeneficiaire, $codePrestataire));
//Biométrie
$_SESSION['p_okId'] = "-1";
$_SESSION['p_okId_face'] = "-1";
}
public function facturermonture($numeroFacture, $user_id_substitut)
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$user_id = $_SESSION['p_user_id_C'];
$idAdherent = $_SESSION['p_idAdherent_C'];
$numeroAdherent = $_SESSION['p_numeroAdherent_C'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$numeroBeneficiaire = $_SESSION['p_numeroBeneficiaire_C'];
$sql = 'call sp_p_enregistrer_optique_monture(?, ?, ?, ?, ?, ?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($idSaisie, $user, $user_id, $idAdherent, $numeroAdherent, $idBeneficiaire,
$numeroBeneficiaire, $numeroFacture, $user_id_substitut));
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
$_SESSION['p_idFactureMonture'] = $ligne['idFactureMonture'];
$idFactureMonture = $_SESSION['p_idFactureMonture'];
//Biométrie
$_SESSION['p_okId'] = "-1";
$_SESSION['p_okId_face'] = "-1";
return $idFactureMonture;
}
public function enregistrerprescriptionoptique($numeroBonOptique,$axeVisionLoinDroit,$verreCylindriqueDroit,$verreSpheriqueDroit,$axeVisionLoinGauche,$verreCylindriqueGauche,
$verreSpheriqueGauche,$distanceInterpupillaireVisionLoin,$axeVisionPresDroit,$axeVisionPresGauche,$distanceInterpupillaireVisionPres,$doubleFoyer,$progressif,
$teinteA,$teinteAB,$teinteB,$teinteC,$photogray,$antireflet,$photochromique,$antiUV,$transition,$antiBuee,$filtreBleu)
{
//var_dump($verreCylindriqueDroit);
//die();
$sql = 'call sp_p_enregistreprescriotion_optique_temp(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($numeroBonOptique,$axeVisionLoinDroit,$verreCylindriqueDroit,$verreSpheriqueDroit,$axeVisionLoinGauche,$verreCylindriqueGauche,
$verreSpheriqueGauche,$distanceInterpupillaireVisionLoin,$axeVisionPresDroit,$axeVisionPresGauche,$distanceInterpupillaireVisionPres,$doubleFoyer,$progressif,
$teinteA,$teinteAB,$teinteB,$teinteC,$photogray,$antireflet,$photochromique,$antiUV,$transition,$antiBuee,$filtreBleu));
}
public function tauxCouverture()
{
$tm = $_SESSION['p_bareme']['bareme_ticketModerateur'];//$_SESSION['p_tm_C'];
$_SESSION['p_tm_C'] = $tm;
$sql = 'SELECT fn_libelle_taux_couverture_tm(?) AS tauxCouverture;';
$resultat = $this->executerRequete($sql, array($tm))->fetch(PDO::FETCH_ASSOC);
return $resultat['tauxCouverture'];
}
public function majmonturetemp($idOptique, $monture)
{
$codeActeMonture = $_SESSION['p_codeActeMonture_C'];
$sql = 'call sp_p_maj_monture_temp(?, ?, ?)';
$this->executerRequete($sql, array($idOptique, $monture, $codeActeMonture));
}
public function initmonture()
{
$codeSociete = $_SESSION['p_codeSociete'];
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$user = $_SESSION['p_login'];
$idSaisie = $_SESSION['p_idSaisie'];
$idAdherent = $_SESSION['p_idAdherent_C'];
$numeroAdherent = $_SESSION['p_numeroAdherent_C'];
$numeroBeneficiaire = $_SESSION['p_numeroBeneficiaire_C'];
$codeActeOptique = $_SESSION['p_codeActeOptique_C'];
$codeActeMonture = $_SESSION['p_codeActeMonture_C'];
$tm = $_SESSION['p_tm_C'];
$sql = 'call sp_p_init_monture(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeSociete, $codePrestataire, $idBeneficiaire, $user, $idSaisie, $idAdherent,
$numeroAdherent, $numeroBeneficiaire, $codeActeOptique, $codeActeMonture, $tm));
}
public function getmonture_temp()
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_get_monture_temp(?, ?)';
$resultat = $this->executerRequete($sql, array($idSaisie, $user));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getdetailmonture_temp()
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_get_detail_monture_temp(?, ?)';
$resultat = $this->executerRequete($sql, array($idSaisie, $user));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function majmonturetemp_monture($idOptique, $monture, $numeroFacture)
{
$sql = 'call sp_p_maj_monture_temp_monture(?, ?, ?)';
$this->executerRequete($sql, array($idOptique, $monture, $numeroFacture));
}
public function afficher_garantieadherent_temp_monture()
{
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_get_garantieadherent_temp_monture(?, ?, ?)';
$resultat = $this->executerRequete($sql, array($codePrestataire, $idSaisie, $user));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function creerverre($libelleOptique, $prixVerre)
{
$codeSociete = $_SESSION['p_codeSociete'];
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$codeTarifOptique = $_SESSION['p_codeTarifOptique_C'];
$tm = $_SESSION['p_tm_C'];
$accesAjoutPh = $_SESSION['p_accesAjoutPh_C'];
$sql = 'call sp_p_creer_nv_verres(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
$this->executerRequete($sql, array($codeSociete, $numeroFeuilleMaladie, $codePrestataire, $idSaisie, $user,
$codeTarifOptique, $tm, $libelleOptique, $prixVerre, $accesAjoutPh));
}
public function demanderaccordmont($idOptique, $prixPrestataire)
{
$codeSociete = $_SESSION['p_codeSociete'];
$sql = 'call sp_p_demanderaccordmont(?, ?, ?)';
$this->executerRequete($sql, array($idOptique, $codeSociete, $prixPrestataire));
}
public function majprix($idDetail, $valeurActe)
{
$tm = $_SESSION['p_tm_C'];
$sql = 'call sp_p_maj_prix_opticien(?, ?, ?)';
$this->executerRequete($sql, array($idDetail, $valeurActe, $tm));
}
public function majquantite($idDetail, $quantite)
{
$tm = $_SESSION['p_tm_C'];
$sql = 'call sp_p_maj_quantite_opticien(?, ?, ?)';
$this->executerRequete($sql, array($idDetail, $quantite, $tm));
}
public function ajouteracteopt($codeActe, $soldeConsommation, $soldeNbreTransaction)
{
$codeSociete = $_SESSION['p_codeSociete'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$numeroBonOptique = $_SESSION['p_numeroBonOptique_C'];
$numeroOptique = $_SESSION['p_numeroOptique_C'];
$tm = $_SESSION['p_tm_C'];
$codePrestataire = $_SESSION['p_codePrestataire_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
/*
var_dump($codeSociete, $idBeneficiaire, $codeActe, $numeroBonOptique,
$numeroOptique, $tm, $codePrestataire, $idSaisie, $user,
$soldeConsommation, $soldeNbreTransaction);
die();
*/
$sql = 'call sp_p_ajouter_acte_opticien(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);';
$this->executerRequete($sql, array($codeSociete, $idBeneficiaire, $codeActe, $numeroBonOptique,
$numeroOptique, $tm, $codePrestataire, $idSaisie, $user,
$soldeConsommation, $soldeNbreTransaction));
}
public function getTotalPrestationoptiques_temp()
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_get_total_prestationoptiques_temp(?, ?)';
$resultat = $this->executerRequete($sql, array($user, $idSaisie));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function supprimeracte($idDetail)
{
$sql = 'call sp_p_supprime_acte_opticien(?)';
$resultat = $this->executerRequete($sql, array($idDetail));
}
/*
public function derniereMontureBeneficiaire()
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$sql = 'SELECT MAX(datePrestation) AS dateDerniereMonture
FROM p_prestationactes
WHERE idBeneficiaire = ?
AND codeTypePrestation = "OPT"';
$resultat = $this->executerRequete($sql, array($idBeneficiaire))->fetch(PDO::FETCH_ASSOC);
return $resultat['dateDerniereMonture'];
}
*/
public function derniereMontureBeneficiaire()
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$sql = 'SELECT MAX(datePrestation) AS dateDerniereMonture
FROM p_prestationactes
WHERE idBeneficiaire = ?
AND codeTypePrestation = "OPT"
AND idFacture not in (SELECT id FROM p_facture
WHERE montantArembourser = montantRedresse
AND idBeneficiaire = ?)';
$resultat = $this->executerRequete($sql, array($idBeneficiaire, $idBeneficiaire))->fetch(PDO::FETCH_ASSOC);
return $resultat['dateDerniereMonture'];
}
public function majmotifoptique($motifOptique, $codeMedecin){
$codeSociete = $_SESSION['p_codeSociete'];
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_maj_motif_optique(?, ?, ?, ?, ?, ?, ?);';
$this->executerRequete($sql, array($codeSociete, $idBeneficiaire, $numeroFeuilleMaladie, $motifOptique, $codeMedecin, $user, $idSaisie));
}
public function situationOptiqueBeneficiaire()
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$codeGarantie = "OPT";
$sql = 'CALL sp_afficher_situation_garantie_beneficiaire(?,?)';
$resultat = $this->executerRequete($sql, array($idBeneficiaire, $codeGarantie));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getDatePrestation($numeroFeuilleMaladie)
{
$sql = 'SELECT dateSurvenance AS datePrestation
FROM p_feuillemaladie WHERE numeroFeuilleMaladie = ? LIMIT 1;';
$resultat = $this->executerRequete($sql, array($numeroFeuilleMaladie))->fetch(PDO::FETCH_ASSOC);
return $resultat['datePrestation'];
}
public function getnumeroBonOptique($numeroBonOptique)
{
$sql = 'SELECT fn_numero_bon_optique_newversion(?) AS numeroBonOptique;';
//var_dump($numeroBonOptique, $idSaisie, $user);die();
$resultat = $this->executerRequete($sql, array($numeroBonOptique))->fetch(PDO::FETCH_ASSOC);
return $resultat['numeroBonOptique'];
}
public function getSituationGarantieBeneficiaire($idBeneficiaire, $codeGarantie, $datePrestation)
{
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
//var_dump($idBeneficiaire, $codeGarantie, $datePrestation, $idSaisie, $user);
//die();
$sql = 'CALL sp_afficher_situation_garantie_beneficiaire_newversion(?, ?, ?, ?, ?);';
$resultat = $this->executerRequete($sql, array($idBeneficiaire, $codeGarantie, $datePrestation, $idSaisie, $user));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getSituationAnnuelleBeneficiaire($datePrestation)
{
$idBeneficiaire = $_SESSION['p_idBeneficiaire_C'];
$sql = 'CALL sp_situation_beneficiaire_annuel_newversion(?, ?);';
$resultat = $this->executerRequete($sql, array($_SESSION['p_idBeneficiaire_C'],$datePrestation));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getSituationFamilleBeneficiaire($datePrestation)
{
$sql = 'CALL sp_situation_beneficiaire_famille_newversion(?, ?);';
$resultat = $this->executerRequete($sql, array($_SESSION['p_idBeneficiaire_C'], $datePrestation));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
//31-03-2023
public function supprimerdemande($idDetailOptique)
{
$numeroOptique = $_SESSION['p_numeroOptique_C'];
$idSaisie = $_SESSION['p_idSaisie'];
$user = $_SESSION['p_login'];
$sql = 'call sp_p_supprime_demande_opticien_newversion(?, ?, ?, ?)';
$resultat = $this->executerRequete($sql, array($idDetailOptique, $numeroOptique, $idSaisie, $user));
}
}