This commit is contained in:
KANE LAZENI 2025-12-21 18:12:39 +00:00
parent e728e5ea88
commit f13a95c4cb
6 changed files with 163 additions and 66 deletions

View File

@ -78,4 +78,18 @@ class ControleurAjaxhistoriqueprestation extends Controleur {
return $resultat->fetch(PDO::FETCH_ASSOC); return $resultat->fetch(PDO::FETCH_ASSOC);
} }
public function factures()
{
$d1 = $this->requete->getParametreDate("d1");
$d2 = $this->requete->getParametreDate("d2");
$historiqueprestations = $this->prestationactes->gethistoriquefactures($d1, $d2);
$totalprestations = $this->prestationactes->gettotalfactures($d1, $d2);
$this->genererVueAjax(array('historiqueprestations' => $historiqueprestations,
'totalprestations' => $totalprestations));
}
} }

View File

@ -18817,3 +18817,34 @@ function accueilassure(){
window.location.assign($("#racineWeb" ).val()+"Accueilassure/"); window.location.assign($("#racineWeb" ).val()+"Accueilassure/");
} }
function afficherhistoriquefactures()
{
d1=$("#d1").val();
d2=$("#d2").val();
donnees = 'd1='+d1+'&d2='+d2;
$("#div_prestation").html('<div class="spinner-responsive">' + '<span><i class="fa fa-spinner"></i></span>' + '</div>');
$.ajax({
url: $("#racineWeb").val()+"Ajaxhistoriqueprestation/factures/",
type : 'post',
data: donnees,
error: function(errorData) {
},
success: function(data) {
$("#div_prestation").html(data);
setTimeout(function() {
functionDataTable();
}, 1000);
},
complete: function() {
}
});
}

View File

@ -396,4 +396,22 @@ class Prestationactes extends Modele {
return $resultat->fetch(PDO::FETCH_ASSOC); return $resultat->fetch(PDO::FETCH_ASSOC);
} }
public function gethistoriquefactures($d1, $d2)
{
$sql = 'call sp_a_get_historique_factures_adherent(?, ?, ?);';
$resultat = $this->executerRequete($sql, array($_SESSION['idAdherent_C'], $d1, $d2));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function gettotalfactures($d1, $d2)
{
$sql = 'call sp_get_total_historique_factures_adherent(?, ?, ?);';
$resultat = $this->executerRequete($sql, array($_SESSION['idAdherent_C'], $d1, $d2));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
} }

View File

@ -430,7 +430,7 @@
<section class="accordion-section"> <section class="accordion-section">
<h2 class="accordion-header"> <h2 class="accordion-header">
<i class="fas fa-procedures"></i> <i class="fas fa-procedures"></i>
<span class="accordion-title"><?= _("Historique des soins de la famille") ?></span> <span class="accordion-title"><?= _("Historique des dépenses de la famille") ?></span>
<i class="accordion-icon bi bi-chevron-down"></i> <i class="accordion-icon bi bi-chevron-down"></i>
</h2> </h2>

View File

@ -0,0 +1,98 @@
<div class="card-header bg-light py-2 d-flex justify-content-between align-items-center">
<h5 class="mb-0 text-dark">
<i class="fas fa-list me-2"></i>
<span class="hide-on-mobile"><?= _("Liste des soins")?></span>
<span class="badge bg-primary view-end"><?= format_N(count($historiqueprestations)).' '._("soin(s)") ?> </span>
</h5>
</div>
<!-- Tableau desktop (affiché sur les écrans moyens et grands) -->
<div class="d-none d-md-block">
<div class="table-responsive">
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:9pt; white-space:nowrap;">
<thead class="table-dark">
<tr>
<th style="text-align:center"> Date </th>
<th style="text-align:center" > <?= _("Prestataire") ?> </th>
<th style="text-align:center" > <?= _("Patient") ?> </th>
<th style="text-align:center"> <?= _("Prix Total") ?> </th>
<th style="text-align:center"> <?= _("Montant TM") ?> </th>
<th style="text-align:center"> <?= _("Part assureur") ?> </th>
</tr>
</thead>
<tbody>
<?php
foreach ($historiqueprestations as $prestation):
?>
<tr valign="top">
<td align='center'> <?= dateheureLang($this->nettoyer($prestation['dateSysteme']), $_SESSION['lang']) ?> </td>
<td > <?= $this->nettoyer($prestation['prestataire']); ?> </td>
<td > <?= $this->nettoyer($prestation['patient']); ?> </td>
<td align='center'> <?= format_N($this->nettoyer($prestation['fraisReel'])) ?></td>
<td align='center'> <?= format_N($this->nettoyer($prestation['montantTm'])) ?></td>
<td align='center'> <?= format_N($this->nettoyer($prestation['montantArembourser'])) ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
</div>
<!-- Affichage mobile (cartes) -->
<div class="d-md-none">
<?php
foreach ($historiqueprestations as $prestation):
?>
<div class="card-body py-2 mb-2">
<div class="row mb-0">
<div class="col-12 mb-0">
<div class="d-flex justify-content-between align-items-center">
<span class="text-muted small"><?= _("Date") ?></span>
<span class="fw-bold"><?= dateheureLang($this->nettoyer($prestation['dateSysteme']), $_SESSION['lang']) ?></span>
</div>
</div>
<div class="col-12 mb-0">
<div class="d-flex justify-content-between align-items-center">
<span class="text-muted small"><?= _("Prestataire") ?></span>
<span class="fw-bold"><?= substr($this->nettoyer($prestation['prestataire']),0, 32) ?></span>
</div>
</div>
<div class="col-12 mb-0">
<div class="d-flex justify-content-between align-items-center">
<span class="text-muted small"><?= _("Patient") ?></span>
<span class="text-end"><?= substr($this->nettoyer($prestation['patient']),0,32) ?></span>
</div>
</div>
</div>
<div class="row">
<div class="col-6 mb-1">
<div class="d-flex justify-content-between">
<span class="text-muted small"><?= _("Prix Total") ?></span>
<span><?= format_N($this->nettoyer($prestation['fraisReel'])) ?></span>
</div>
</div>
<div class="col-6 mb-1">
<div class="d-flex justify-content-between">
<span class="text-muted small"><?= _("Montant TM") ?></span>
<span class="text-success"><?= format_N($this->nettoyer($prestation['montantTm'])) ?></span>
</div>
</div>
<div class="col-6 mb-1">
<div class="d-flex justify-content-between">
<span class="text-muted small"><?= _("Part assureur") ?></span>
<span><?= format_N($this->nettoyer($prestation['montantArembourser'])) ?></span>
</div>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
</div>

View File

@ -1,67 +1,3 @@
<?php <?php
$numeroAdherent = $adherent['numeroAdherent']; $numeroAdherent = $adherent['numeroAdherent'];
?> ?>
<!--
<div class="modal-dialog modal-lg" style="max-width: 85%;" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-bs-dismiss="modal" >&times;</button>
<legend class="modal-title text-center"><?= _("Historique des prestations du béneficiaire") ?></legend>
</div>
<div class="modal-body">
<FORM name= "formfichebeneficiaire">
<table class="table table-responsive table-condensed" style='font-size:8pt;' >
<tbody>
<tr>
<td width="5%" > <?= _("Souscrip.") ?> </td>
<td width="20%">
<INPUT style='text-align:center; font-size:9pt;' class="form-control" TYPE="text" id="nomClient" name="nomClient"
value="<?= $beneficiaire['nomClient'] ?>" onChange="" readonly >
</td>
<td width="5%" align="center" > <?= _("Adh.") ?> </td>
<td width="20%" > <INPUT class="form-control" TYPE="text" value="<?= $beneficiaire['adherent']; ?>" readonly style="text-align: center; font-size:9pt;" > </td>
<td width="5%" align="center"> <?= _("Bénéf.") ?> </td>
<td width="25%"> <INPUT class="form-control" TYPE="text" value="<?= $beneficiaire['beneficiaire']; ?>" readonly style='font-size:9pt;'> </td>
<td width="7%" align="center"> <?= _("Tél Bénéf.") ?> </td>
<td width="13%"> <INPUT class="form-control" TYPE="text" value="<?= $beneficiaire['telephonePortableAdherent']; ?>" readonly style='font-size:9pt;'> </td>
</tr>
<tr>
<td colspan="8">
<INPUT style="font-size:12pt; font-weight: bold; background-color:#f5deb3; color:#a0522d;" class="form-control" TYPE="text"
value="<?= 'TAUX DE COUVERTURE : '.taux_couverture(intval($this->nettoyer($beneficiaire['ticketModerateur']))) ?>" readonly >
</td>
</tr>
<tr>
<td > <?= _("Période du") ?> </td>
<td ><INPUT style='text-align:center; font-size:10pt;' class="form-control datepicker" TYPE="text" id="d1" NAME="d1" value="<?= dateLang($_SESSION['dUneSemaineAvant_C'], $_SESSION['lang']) ?>" required AUTOCOMPLETE="OFF"></td>
<td align="center" > <?= _("Au") ?> </td>
<td ><INPUT style='text-align:center; font-size:10pt;' class="form-control datepicker" TYPE="text" id="d2" NAME="d2" value="<?= dateCouranteLang($_SESSION['lang']) ?>" required AUTOCOMPLETE="OFF"></td>
<td align="center"> <?= _("Garantie") ?> </td>
<td >
<SELECT class="form-control" data-live-search="true" id="codeGarantie" NAME="codeGarantie"style='font-size:10pt; text-align:center;' >
<?php liste_options($garanties, ""); ?>
</SELECT>
</td>
<td colspan="2"> <button style='font-size:10pt;' type="button" class="form-control btn btn-primary" onclick="javascript:afficherhistoriqueadherent('<?= $numeroAdherent ?>');"><?= _("Actualiser...") ?></button> </td>
</tr>
</tbody>
</table>
<div id="div_prestation">
</div>
</FORM>
</div>
<div class="modal-footer">
<button type="button" id="btn-fermer-modal" class="btn btn-default" data-bs-dismiss="modal" ><?= _("Fermer") ?></button>
</div>
</div>
</div>
-->