fg
This commit is contained in:
parent
1d3447d69c
commit
d5c843c2a0
66
Controleur/ControleurAjaxchargeractesmedicaux.php
Executable file
66
Controleur/ControleurAjaxchargeractesmedicaux.php
Executable file
|
|
@ -0,0 +1,66 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Detailtarifacte.php';
|
||||
require_once 'Modele/Prestationactes.php';
|
||||
|
||||
class ControleurAjaxchargeractesmedicaux extends Controleur {
|
||||
private $acte;
|
||||
private $prescription;
|
||||
|
||||
public function __construct() {
|
||||
$this->acte = new Detailtarifacte();
|
||||
$this->prescription = new Prestationactes();
|
||||
}
|
||||
|
||||
public function index() {
|
||||
|
||||
$libelle = $this->requete->getParametreFormulaire("libelle");
|
||||
|
||||
if ($libelle=="vide" || $libelle=="") {
|
||||
$actes = $this->acte->getactesexamenvide();
|
||||
}else{
|
||||
$actes = $this->acte->getactesmedicauxpossibles($libelle);
|
||||
}
|
||||
|
||||
$this->genererVueAjax(array('actes' => $actes));
|
||||
}
|
||||
|
||||
|
||||
public function actecharge()
|
||||
{
|
||||
$codeActe = $this->requete->getParametreFormulaire("codeActe");
|
||||
|
||||
$acte_charge = $this->acte->chargerinfosacte($codeActe);
|
||||
|
||||
$this->genererVueAjax(array('acte_charge' => $acte_charge));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -13,17 +13,17 @@ class ControleurAjaxselectactesmedicaux extends Controleur {
|
|||
}
|
||||
|
||||
public function index() {
|
||||
$codeFamilleActe = $this->requete->getParametreFormulaire("codeFamilleActe");
|
||||
//$codeFamilleActe = $this->requete->getParametreFormulaire("codeFamilleActe");
|
||||
|
||||
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
|
||||
$codePrestataire = $_SESSION['p_codePrestataire_C'];
|
||||
|
||||
$actes = $this->acte->geatactesexamensselection($codeFamilleActe);
|
||||
//$actes = $this->acte->geatactesexamensselection($codeFamilleActe);
|
||||
|
||||
$prestations = $this->prestation->getactesmedicauxfeuille($numeroFeuilleMaladie, $codePrestataire);
|
||||
$prestations_total = $this->prestation->getactesmedicauxfeuille_total($numeroFeuilleMaladie, $codePrestataire);
|
||||
|
||||
$this->genererVueAjax(array('actes' => $actes, 'prestations' => $prestations, 'prestations_total' => $prestations_total));
|
||||
$this->genererVueAjax(array(/*'actes' => $actes, */'prestations' => $prestations, 'prestations_total' => $prestations_total));
|
||||
}
|
||||
|
||||
public function enregistreractemedical()
|
||||
|
|
|
|||
222
Js/fonctions.js
222
Js/fonctions.js
|
|
@ -17604,8 +17604,230 @@ $(function(){
|
|||
dataTableSpeciale();
|
||||
$('.js-example-basic-single').select2();
|
||||
$('.selectpicker').selectpicker();
|
||||
|
||||
$("#div_selection").hide();
|
||||
|
||||
$("#searchInput").keyup(debounce(function() {
|
||||
const libelle = $(this).val().trim();
|
||||
|
||||
if (!libelle || libelle.length < 3) {
|
||||
$("#div_selection").hide();
|
||||
return;
|
||||
}
|
||||
|
||||
const formHandlers = {
|
||||
"selectactesmedicaux": {
|
||||
link: "Ajaxchargeractesmedicaux/",
|
||||
data: { libelle: libelle }
|
||||
}
|
||||
};
|
||||
|
||||
const handler = formHandlers[$('#nomForm').val()];
|
||||
if (!handler) return;
|
||||
|
||||
/* Vérification des prérequis si nécessaire
|
||||
if (handler.preCheck && !handler.preCheck()) {
|
||||
return;
|
||||
}
|
||||
*/
|
||||
|
||||
// Préparation des données
|
||||
const data = typeof handler.data === 'function' ? handler.data() : handler.data;
|
||||
|
||||
// Envoi de la requête AJAX
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: $("#racineWeb").val() + handler.link,
|
||||
data: data,
|
||||
beforeSend: function() {
|
||||
$("#searchInput").css("background", "#FFF url(Bootstrap/images/LoaderIcon.gif) no-repeat 165px");
|
||||
},
|
||||
success: function(data) {
|
||||
$("#div_selection").show().html(data);
|
||||
$("#searchInput").css("background", "#FFF");
|
||||
},
|
||||
error: function(xhr, status, error) {
|
||||
console.error("Erreur lors de la recherche:", error);
|
||||
$("#searchInput").css("background", "#FFF");
|
||||
}
|
||||
});
|
||||
}, 300));
|
||||
});
|
||||
|
||||
// Fonction debounce pour limiter les appels fréquents
|
||||
function debounce(func, wait, immediate) {
|
||||
let timeout;
|
||||
return function() {
|
||||
const context = this, args = arguments;
|
||||
const later = function() {
|
||||
timeout = null;
|
||||
if (!immediate) func.apply(context, args);
|
||||
};
|
||||
const callNow = immediate && !timeout;
|
||||
clearTimeout(timeout);
|
||||
timeout = setTimeout(later, wait);
|
||||
if (callNow) func.apply(context, args);
|
||||
};
|
||||
}
|
||||
|
||||
function selectElement(val){
|
||||
|
||||
$("#searchInput").val(val);
|
||||
$("#div_selection").hide();
|
||||
}
|
||||
|
||||
|
||||
function add_selected_acte_medicaux(controle)
|
||||
{
|
||||
var str = controle.split(' <==> ');
|
||||
|
||||
var codeActe = str[0];
|
||||
var libelleActe = str[1];
|
||||
var acteExclu = str[3];
|
||||
|
||||
|
||||
if(acteExclu=="Garanti"){
|
||||
acteExclu=0;
|
||||
}else{
|
||||
acteExclu=1;
|
||||
}
|
||||
|
||||
if(libelleActe<=" ")
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if(acteExclu==1)
|
||||
{
|
||||
v_msg="Acte non couvert!";
|
||||
v_msgEng="Not covered!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
return;
|
||||
}
|
||||
|
||||
donnees = 'codeActe='+codeActe;
|
||||
|
||||
$("#div_patientez").html('<div style="text-align:center; color: #4caf50 ; font-size:14px;"><span><i class="fa fa-spinner fa-spin fa-5x" >' + '</span></div>');
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxchargeractesmedicaux/actecharge/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
$("#div_patientez").html(data);
|
||||
|
||||
$("#searchInput").val('');
|
||||
|
||||
codeActe = $("#codeActe").val();
|
||||
prixActe = $("#prixActe").val();
|
||||
montantTm = $("#montantTm").val();
|
||||
aRembourser = $("#aRembourser").val();
|
||||
ententePrealable = $("#ententePrealable").val();
|
||||
codeFamilleActe = $("#ententePrealable").val();
|
||||
|
||||
ajouter_un_acte_selection_new(codeActe, prixActe, montantTm, aRembourser, ententePrealable, codeFamilleActe);
|
||||
|
||||
|
||||
},
|
||||
complete: function(data) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function ajouter_un_acte_selection_new(codeActe, prixActe, montantTm, aRembourser, ententePrealable, codeFamilleActe)
|
||||
{
|
||||
donnee_a_affciher = "";
|
||||
|
||||
donnees=""
|
||||
donnees_sav="";
|
||||
|
||||
codeMedecin = $("#codeMedecin").val();
|
||||
|
||||
if (codeMedecin<=" ")
|
||||
{
|
||||
v_msg="Veuillez sélectionner un médecin!";
|
||||
v_msgEng="Please select a doctor!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
$("#nomMedecin").focus();
|
||||
return;
|
||||
}
|
||||
|
||||
if (codeActe<=" ")
|
||||
{
|
||||
v_msg="Veuillez sélectionner un acte!";
|
||||
v_msgEng="Please select an act!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if(prixActe==0)
|
||||
{
|
||||
v_msg="Veuillez revoir le tarif!";
|
||||
v_msgEng="Please review rate!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
v_msg="Confirmez-vous cet acte?";
|
||||
v_msgEng="Do you confirm this act?";
|
||||
|
||||
// if(confirm_ebene(v_msg, v_msgEng))
|
||||
// {
|
||||
if(ententePrealable==1)
|
||||
{
|
||||
ententePrealable = "2";
|
||||
}
|
||||
|
||||
donnees = 'codeFamilleActe='+codeFamilleActe+'&codeActe='+codeActe+'&codeMedecin='+codeMedecin+'&ententePrealable='+ententePrealable;
|
||||
donnees += '&prixActe='+prixActe+'&montantTm='+montantTm+'&aRembourser='+aRembourser;
|
||||
|
||||
numeroFeuilleMaladie=$("#numeroFeuilleMaladie_C").val();
|
||||
|
||||
donnees_sav = 'codeActe='+codeActe+'&numeroFeuilleMaladie='+numeroFeuilleMaladie+'&typeMail=mailententeprealable';
|
||||
// donnees_sav2 = 'codeActe='+codeActe+'&numeroFeuilleMaladie='+numeroFeuilleMaladie+'&typeMail=mailautorisation';
|
||||
|
||||
typeSms="ententeprealable";
|
||||
// typeSms2="autorisation";
|
||||
|
||||
$("#listeacte").html('<div style="padding-top:80px;"><img src="Bootstrap/images/loading.gif"/> <span>' + 'Veuillez patienter... / Please wait...' + '</span></div>');
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxselectactesmedicaux/enregistreractemedical/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
maj_fraisexclu_cso();
|
||||
|
||||
if(ententePrealable=="2")
|
||||
{
|
||||
preparesms(typeSms);
|
||||
|
||||
v_msg="Demande accord prealable envoyée!";
|
||||
v_msgEng="Request prior agreement sent!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
}
|
||||
donnee_a_affciher = data;
|
||||
},
|
||||
complete: function() {
|
||||
if(ententePrealable=="2")
|
||||
{
|
||||
mettremailattente(donnees_sav);
|
||||
}
|
||||
$("#totam_donnees").html(donnee_a_affciher);
|
||||
}
|
||||
});
|
||||
// }
|
||||
}
|
||||
|
||||
function ajaxinfosboninitconsultation()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -317,5 +317,53 @@ class Detailtarifacte extends Modele {
|
|||
return $liste->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
}
|
||||
|
||||
public function getactesexamenvide() {
|
||||
$sql = 'call sp_p_actes_examen_vide()';
|
||||
$resultat = $this->executerRequete($sql);
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getactesmedicauxpossibles($libelle)
|
||||
{
|
||||
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
|
||||
$codePrestataire = $_SESSION['p_codePrestataire_C'];
|
||||
$codeTarifActe = $_SESSION['p_codeTarifActe_C'];
|
||||
|
||||
$codePrestataire = $_SESSION['p_codePrestataire_C'];
|
||||
$idAdherent = $_SESSION['p_idAdherent_C'];
|
||||
|
||||
$libelle = contruireParamLike($libelle);
|
||||
|
||||
if (isset($_SESSION['p_lang']) && $_SESSION['p_lang']=="en_US")
|
||||
{
|
||||
$sql = 'call sp_p_recherche_actes_medicaux_eng(?, ?, ?, ?, ?);';
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = 'call sp_p_recherche_actes_medicaux(?, ?, ?, ?, ?);';
|
||||
}
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($numeroFeuilleMaladie,$codeTarifActe, $libelle, $codePrestataire, $idAdherent));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
|
||||
public function chargerinfosacte($codeActe)
|
||||
{
|
||||
$numeroFeuilleMaladie = $_SESSION['p_numeroFeuilleMaladie_C'];
|
||||
$codePrestataire = $_SESSION['p_codePrestataire_C'];
|
||||
$codeTarifActe = $_SESSION['p_codeTarifActe_C'];
|
||||
$tm = $_SESSION['p_tm_C'];
|
||||
$codePrestataire = $_SESSION['p_codePrestataire_C'];
|
||||
$idAdherent = $_SESSION['p_idAdherent_C'];
|
||||
|
||||
$sql = 'call sp_p_charger_infosacte_medical(?, ?, ?, ?, ?);';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($numeroFeuilleMaladie,$codeTarifActe, $codeActe,
|
||||
$codePrestataire, $idAdherent, $tm));
|
||||
|
||||
return $resultat->fetch(PDO::FETCH_ASSOC);
|
||||
}
|
||||
}
|
||||
6
Vue/Ajaxchargeractesmedicaux/actecharge.php
Executable file
6
Vue/Ajaxchargeractesmedicaux/actecharge.php
Executable file
|
|
@ -0,0 +1,6 @@
|
|||
<input class="sr-only" id="codeActe" name="codeActe" type="text" value= "<?= $acte_charge['codeActe'] ?>">
|
||||
<input class="sr-only" id="prixActe" name="prixActe" type="text" value= "<?= $acte_charge['valeurActe'] ?>">
|
||||
<input class="sr-only" id="montantTm" name="montantTm" type="text" value= "<?= $acte_charge['montantTm'] ?>">
|
||||
<input class="sr-only" id="aRembourser" name="aRembourser" type="text" value= "<?= $acte_charge['montantArembourser'] ?>">
|
||||
<input class="sr-only" id="ententePrealable" name="ententePrealable" type="text" value= "<?= $acte_charge['ententePrealable'] ?>">
|
||||
<input class="sr-only" id="codeFamilleActe" name="codeFamilleActe" type="text" value= "<?= $acte_charge['codeFamilleActe'] ?>">
|
||||
26
Vue/Ajaxchargeractesmedicaux/index.php
Executable file
26
Vue/Ajaxchargeractesmedicaux/index.php
Executable file
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
if(!empty($actes)) {
|
||||
?>
|
||||
<ul id="element-list">
|
||||
<?php
|
||||
foreach($actes as $v) {
|
||||
$tab = explode(" <==> ",$v["libelle"]);
|
||||
|
||||
if (isset($tab[2]) && ($tab[2] != "Garanti" || $tab[2] != "Guaranteed")){
|
||||
$style = "background-color: red; color:white;";
|
||||
}elseif (isset($tab[3]) && ($tab[3] == "Demander Accord" || $tab[3] == "Request Approval")){
|
||||
$style = "background-color: yellow;";
|
||||
}else{
|
||||
$style = "background-color: white;";
|
||||
}
|
||||
?>
|
||||
<li style="<?php echo $style; ?>" onClick="selectElement('<?php echo $v["libelle"]; ?>');add_selected_acte_medicaux('<?php echo $v["code"]." <==> ".$v["libelle"]; ?>');"><?php echo $v["libelle"]; ?></li>
|
||||
<?php } ?>
|
||||
</ul>
|
||||
<?php
|
||||
} else{
|
||||
?>
|
||||
<marquee behavior="scroll" direction="left" scrollamount="10" style="color:white; background-color:red; font-size:14pt; font-weight:bold;">
|
||||
<?= _("L'acte saisi n'existe pas.") ?>
|
||||
</marquee>
|
||||
<?php } ?>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
$actVisible = $_SESSION['p_actVisible'];
|
||||
?>
|
||||
|
||||
<!--
|
||||
<div id="div_actes" class="col-xs-4" style="padding-right:1px;">
|
||||
<div id="listeacte">
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:7pt;">
|
||||
|
|
@ -55,8 +55,8 @@
|
|||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="div_prestations" class="col-xs-8" >
|
||||
-->
|
||||
<div id="div_prestations" class="col-xs-12" >
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:7pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
@ -137,7 +137,5 @@
|
|||
<td colspan="7" height="8"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
<input class="sr-only" id="codeTypePrestation" name="codeTypePrestation" type="text" value="ACT">
|
||||
<input class="sr-only" id="codeMedecin" name="codeMedecin" type="text" value= "<?= $_SESSION['p_codeMedecin_C'] ?>">
|
||||
<INPUT class="sr-only" id="chirurgie_C" name="chirurgie_C" type="text" value="<?= $_SESSION['p_chirurgie_C'] ?>">
|
||||
<INPUT class="sr-only" id="nomForm" name="nomForm" type="text" value="selectactesmedicaux">
|
||||
|
||||
<legend> <?= _("Ajouter un acte médical") ?> </legend>
|
||||
<table class="table table-responsive table-condensed" style='font-size:10pt;'>
|
||||
|
|
@ -46,7 +47,7 @@
|
|||
<td> <?= _("Acte") ?> </td>
|
||||
<td colspan="3">
|
||||
<div class="frmSearch" style="position: relative;">
|
||||
<input id="searchInput" name="searchInput" style="font-size:11pt; padding-left: 35px;" class="form-control" type="text" placeholder="<?= _("Rechercher un acte...") ?>" autofocus required AUTOCOMPLETE="OFF">
|
||||
<input id="searchInput" name="searchInput" style="font-size:11pt; padding-left: 35px;" class="form-control" type="text" placeholder="<?= _("Saisissez le nom de l'acte...") ?>" autofocus required AUTOCOMPLETE="OFF">
|
||||
<i class="fas fa-search" style="position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #999;"></i>
|
||||
<div id="div_selection"></div>
|
||||
</div>
|
||||
|
|
@ -93,8 +94,10 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row" id="totam_donnees">
|
||||
<div id="div_patientez"></div>
|
||||
|
||||
<div class="row" id="totam_donnees">
|
||||
<!--
|
||||
<div id="div_actes" class="col-xs-4" style="padding-right:1px;">
|
||||
<div id="listeacte">
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:7pt;">
|
||||
|
|
@ -107,8 +110,9 @@
|
|||
</table>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
||||
<div id="div_prestations" class="col-xs-8" >
|
||||
<div id="div_prestations" class="col-xs-12" >
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:7pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
|
|||
|
|
@ -263,7 +263,7 @@ actesHarmonises : <?= $_SESSION['p_actesHarmonises'] ?>
|
|||
<script src="Js/datepicker-fr.js"></script>
|
||||
<?php endif; ?>
|
||||
|
||||
<script src="Js/fonctions.js?ver=2026.01.16.07"></script>
|
||||
<script src="Js/fonctions.js?ver=2026.03.03.00"></script>
|
||||
|
||||
<script src="Bootstrap/js/timer.jquery.js"></script>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user