This commit is contained in:
KONE SOREL 2026-01-22 18:46:07 +00:00
parent e2e76b5dca
commit 32a8a4c804
7 changed files with 352 additions and 4 deletions

View File

@ -0,0 +1,94 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Adherent.php';
require_once 'Modele/Naturepiece.php';
require_once 'Modele/Sexe.php';
require_once 'Modele/Pays.php';
require_once 'Modele/Situationfamille.php';
require_once 'Modele/Groupesanguin.php';
require_once 'Modele/Garantieadherent.php';
class ControleurAjaxremplaceradherent extends Controleur
{
private $adherent;
private $naturepiece;
private $sexe;
private $pays;
private $situationfamille;
private $groupesanguin;
private $garantieadherent;
public function __construct()
{
$this->adherent = new Adherent();
$this->naturepiece = (new Naturepiece())->getListe();
$this->sexe = (new Sexe())->getListe();
$this->situationfamille = (new Situationfamille())->getListe();
$this->pays = (new Pays())->getListe($_SESSION['codePaysSociete']);
$this->groupesanguin = (new Groupesanguin())->getListe();
$this->garantieadherent = new Garantieadherent();
}
public function index()
{
// $this->genererVueAjax();
}
public function init()
{
$idPolice = $_SESSION['idPolice_C'];
$idAdherent = $_SESSION['idAdherent_C'];
$dateSortie = $this->requete->getParametreDate("dateSortie");
$dateRemplacement = $this->requete->getParametreDate("dateRemplacement");
$user = $_SESSION['login'];
$motifavenant = $this->requete->getParametreFormulaire("motifavenant");
$fraisCarte = $this->requete->getParametreFormulaire("fraisCarte","numerique");
$this->adherent->initremplacementadherent($idPolice, $idAdherent, $dateSortie , $dateRemplacement, $user,
$motifavenant, $fraisCarte);
$remplacementadherent_temp = $this->adherent->getremplacementadherent_temp();
$spadherent = $this->adherent->getRapportSpAdherent($idAdherent, $dateSortie);
$beneficiairearemplacers = $this->adherent->getbeneficiairearemplacer();
$adherentremplacanttemp = $this->adherent->getadherentremplacanttemp();
$garantieadherents = $this->garantieadherent->getGarantieAdherent($idAdherent);
$this->genererVueAjax(array('spadherent' => $spadherent, 'beneficiairearemplacers' => $beneficiairearemplacers,
'adherentremplacanttemp' => $adherentremplacanttemp, 'naturepiece' => $this->naturepiece, 'sexe' => $this->sexe,
'pays' => $this->pays, 'situationfamille' => $this->situationfamille, 'groupesanguin' => $this->groupesanguin,
'remplacementadherent_temp' => $remplacementadherent_temp, 'garantieadherents' => $garantieadherents));
}
public function enregistrerremplacementadherent()
{
$nom = $this->requete->getParametre("nom");
$prenoms = $this->requete->getParametreFormulaire("prenoms");
$codeNaturePiece = $this->requete->getParametre("codeNaturePiece");
$numeroPiece = $this->requete->getParametreFormulaire("numeroPiece");
$sexe = $this->requete->getParametreFormulaire("sexe");
$dateNaissance = $this->requete->getParametreDate("dateNaissance");
$codeGroupeSanguin = $this->requete->getParametreFormulaire("codeGroupeSanguin");
$codeSituationFamille = $this->requete->getParametreFormulaire("codeSituationFamille");
$nombreEnfants = $this->requete->getParametreFormulaire("nombreEnfants");
$adresseGeo = $this->requete->getParametreFormulaire("adresseGeo");
$adressePostale = $this->requete->getParametreFormulaire("adressePostale");
$codePays = $this->requete->getParametre("codePays");
$telephonFixe = $this->requete->getParametreFormulaire("telephonFixe");
$telephonePortable = $this->requete->getParametreFormulaire("telephonePortable");
$email = $this->requete->getParametreFormulaire("email");
$fraisCarte = $this->requete->getParametreFormulaire("fraisCarte","numerique");
$nom = strtoupper($nom);
$prenoms = ucwords($prenoms);
$this->adherent->enregistrerremplacementadherent($nom, $prenoms, $codeNaturePiece, $numeroPiece, $sexe,
$dateNaissance, $codeGroupeSanguin, $codeSituationFamille, $nombreEnfants, $adresseGeo, $adressePostale,
$codePays, $telephonFixe, $telephonePortable, $email, $fraisCarte) ;
// $this->genererVueAjax();
}
}

View File

@ -5885,4 +5885,91 @@ function fiche_remplacer_adherent()
} }
window.location.assign($("#racineWeb" ).val()+"Remplaceradherent/"); window.location.assign($("#racineWeb" ).val()+"Remplaceradherent/");
}
function init_remplacement_adherent()
{
dateSortieAdh = $("#dateSortieAdh").datepicker("getDate");
dateRemplacement = $("#dateRemplacement").datepicker("getDate");
dateEffetPolice = $("#dateEffetPolice_C").val();
dateEffetAdherent = $("#dateEffetAdherent").val();
dateEcheancePolice = $("#dateEcheancePolice_C").val();
var td0 = new Date(dateEffetAdherent);
var td1 = new Date(dateSortieAdh);
var td11 = new Date(dateRemplacement);
var td2 = new Date(dateEcheancePolice);
dt0=Math.round(Date.parse(td0)/(1000*3600*24));
dt1=Math.round(Date.parse(td1)/(1000*3600*24));
dt11=Math.round(Date.parse(td11)/(1000*3600*24));
dt2=Math.round(Date.parse(td2)/(1000*3600*24));
if (td11<=td1)
{
v_msg="Attention! Veuillez revoir vos dates!";
v_msgEng="Warning! Please review your dates!";
alert_ebene(v_msg, v_msgEng);
return false;
}
if (dt1>dt2 || dt1<dt0)
{
v_msg="Attention! cette police n'est pas couverte à cette date!";
v_msgEng="Warning! This insurance policy is not valid on this date!";
alert_ebene(v_msg, v_msgEng);
return false;
}
etatRetrait = $("#etatRetrait").val();
dateRetrait = $("#dateRetrait").val();
ristourneRetrait = $("#ristourneRetrait").val();
ristourneRetrait = parseInt(ristourneRetrait);
if(etatRetrait=="R" && ristourneRetrait<0)
{
v_msg="Attention! cette personne a été retirée avec une ristourne!";
v_msgEng=" Warning! this person was withdrawn with premium!";
alert_ebene(v_msg, v_msgEng);
return false;
}
motifavenant=$("#motifavenant").val();
if ($("#motifavenant").val()<" ")
{
v_msg="Veuillez fournir le motif!";
v_msgEng="Please provide the reason";
alert_ebene(v_msg, v_msgEng);
return;
}
dateS = $("#dateSortieAdh").val();
dateR = $("#dateRemplacement").val();
fraisCarte = $("#fraisCarte").val();
donnees = 'dateSortie='+dateS+'&dateRemplacement='+dateR+'&motifavenant='+motifavenant+'&fraisCarte='+fraisCarte;
$("#div_remplacement_adherent").html('<div style="padding-top:80px;"><img src="Bootstrap/images/loading.gif"/>&nbsp;&nbsp;<span style="font-size:15pt;">' + 'Veuillez patienter... / Please wait...' + '</span></div>');
$.ajax({
url: $("#racineWeb").val()+"Ajaxremplaceradherent/init/",
type : 'post',
data: donnees,
error: function(errorData) {
},
success: function(data)
{
$("#div_remplacement_adherent").html(data);
},
complete: function() {
$(".datepicker" ).datepicker();
}
});
} }

View File

@ -0,0 +1,5 @@
<div id="div_remplacement_adherent">
<div class="alert alert-danger" style="height:30px; padding:5px;" >
<H4> <?= _("OPERATION TERMINEE AVEC SUCCES") ?> </H4>
</div>
</div>

View File

@ -0,0 +1,3 @@
<div id="div_remplacement_adherent">
NOTHING
</div>

View File

@ -0,0 +1,159 @@
<div id="div_remplacement_adherent">
<div class="card border-primary shadow-sm mb-4">
<div class="card-body py-2 bg-light">
<div class="row g-2 align-items-center">
<div class="col-md-3">
<label class="small text-muted d-block"><?= _("Date Sortie") ?></label>
<div class="fw-bold"><i class="fas fa-sign-out-alt text-danger me-2"></i><?= dateLang($this->nettoyer($remplacementadherent_temp['dateSortie'])) ?></div>
</div>
<div class="col-md-3">
<label class="small text-muted d-block"><?= _("Date Remplacement") ?></label>
<div class="fw-bold"><i class="fas fa-exchange-alt text-primary me-2"></i><?= dateLang($this->nettoyer($remplacementadherent_temp['dateRemplacement'])) ?></div>
</div>
<div class="col-md-6 border-start ps-3">
<label class="small text-muted d-block"><?= _("Motif renseigné") ?></label>
<div class="text-truncate italic">" <?= $this->nettoyer($remplacementadherent_temp['motif']) ?> "</div>
</div>
</div>
</div>
</div>
<div class="card shadow-sm mb-4">
<div class="card-header bg-dark text-white py-2">
<h6 class="mb-0 small"><i class="fas fa-list-check me-2"></i><?= _("Garanties et soldes à transmettre") ?></h6>
</div>
<div class="table-responsive">
<table class="table table-hover table-sm mb-0" style="font-size:9.5pt;">
<thead class="table-light">
<tr>
<th><?= _("Désignation Garantie") ?></th>
<th class="text-center"><?= _("Limite") ?></th>
<th class="text-center"><?= _("Consommé") ?></th>
<th class="text-center"><?= _("Solde Transférable") ?></th>
<th class="text-center"><?= _("Par tête") ?></th>
</tr>
</thead>
<tbody>
<?php foreach ($garantieadherents as $garantieadherent):
$champApplication = $this->nettoyer($garantieadherent['champApplication']);
?>
<tr>
<td class="fw-bold"><?= $this->nettoyer($garantieadherent['garantie'])?></td>
<td class="text-center"><?= format_N($this->nettoyer($garantieadherent['plafond'])) ?></td>
<?php if($champApplication == '1'): ?>
<td colspan="2" class="text-center text-muted small italic"><?= _("Application globale") ?></td>
<td class="text-center"><i class="fas fa-check-circle text-success"></i></td>
<?php else: ?>
<td class="text-center text-danger"><?= format_N($this->nettoyer($garantieadherent['consommation'])) ?></td>
<td class="text-center fw-bold text-primary"><?= format_N($this->nettoyer($garantieadherent['solde'])) ?></td>
<td class="text-center"><i class="far fa-circle text-muted"></i></td>
<?php endif; ?>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
</div>
<div class="card border-success shadow-sm">
<div class="card-header bg-success text-white py-2 text-center text-uppercase fw-bold">
<i class="fas fa-user-plus me-2"></i><?= _("Identification de la Famille Entrante") ?>
</div>
<div class="card-body p-4">
<div class="row g-3 mb-4">
<div class="col-md-6">
<label class="form-label small fw-bold"><?= _("Nom") ?></label>
<input class="form-control text-uppercase border-success" type="text" id="nom" name="nom" required>
</div>
<div class="col-md-6">
<label class="form-label small fw-bold"><?= _("Prénoms") ?></label>
<input class="form-control border-success" type="text" id="prenoms" name="prenoms" required>
</div>
<div class="col-md-3">
<label class="form-label small text-muted"><?= _("Nature Pièce") ?></label>
<select class="form-select" id="codeNaturePiece" name="codeNaturePiece">
<?php liste_options($naturepiece,""); ?>
</select>
</div>
<div class="col-md-3">
<label class="form-label small text-muted"><?= _("N° Pièce") ?></label>
<input class="form-control" type="text" id="numeroPiece" name="numeroPiece">
</div>
<div class="col-md-2">
<label class="form-label small text-muted"><?= _("Sexe") ?></label>
<select class="form-select" id="sexe" name="sexe">
<?php liste_options($sexe,""); ?>
</select>
</div>
<div class="col-md-4">
<label class="form-label small fw-bold"><?= _("Date Naissance") ?></label>
<div class="input-group">
<input class="form-control datepicker" type="text" id="dateNaissance" name="dateNaissance" onchange="controle_age($('#dateNaissance').datepicker('getDate'), 'A')">
<span class="input-group-text bg-light text-danger fw-bold" id="age_badge">Age: 0</span>
</div>
</div>
</div>
<hr>
<div class="row g-3 mb-4">
<div class="col-md-3">
<label class="form-label small text-muted"><?= _("Groupe Sanguin") ?></label>
<select class="form-select" id="codeGroupeSanguin" name="codeGroupeSanguin">
<?php liste_options($groupesanguin,""); ?>
</select>
</div>
<div class="col-md-3">
<label class="form-label small text-muted"><?= _("Situation Familiale") ?></label>
<select class="form-select" id="codeSituationFamille" name="codeSituationFamille">
<?php liste_options($situationfamille,""); ?>
</select>
</div>
<div class="col-md-2">
<label class="form-label small text-muted"><?= _("Nb Enfants") ?></label>
<input class="form-control" type="number" id="nombreEnfants" name="nombreEnfants" min="0" value="0">
</div>
<div class="col-md-4">
<label class="form-label small text-muted"><?= _("Pays") ?></label>
<select class="form-select" id="codePays" name="codePays">
<?php liste_options($pays, $_SESSION['codePaysSociete']); ?>
</select>
</div>
<div class="col-md-6">
<label class="form-label small text-muted"><?= _("Adresse Géographique") ?></label>
<input class="form-control form-control-sm" type="text" id="adresseGeo" name="adresseGeo">
</div>
<div class="col-md-6">
<label class="form-label small text-muted"><?= _("Adresse Postale") ?></label>
<input class="form-control form-control-sm" type="text" id="adressePostale" name="adressePostale">
</div>
<div class="col-md-4">
<label class="form-label small text-muted"><?= _("Téléphone Portable") ?></label>
<input class="form-control" type="tel" id="telephonePortable" name="telephonePortable" value="<?= $_SESSION['indicatifTelephone'] ?>">
</div>
<div class="col-md-4">
<label class="form-label small text-muted"><?= _("E-mail") ?></label>
<input class="form-control" type="email" id="email" name="email" placeholder="exemple@mail.com">
</div>
<div class="col-md-4">
<label class="form-label small text-muted"><?= _("Frais de Carte") ?></label>
<div class="input-group">
<input class="form-control border-primary fw-bold" type="text" id="fraisCarte" name="fraisCarte" value="<?=$adherentremplacanttemp['fraisCarte']?>">
<span class="input-group-text">CFA</span>
</div>
</div>
</div>
<div class="row mt-4">
<div class="col-12">
<button type="button" class="btn btn-success w-100 py-3 fw-bold shadow-sm" onclick="javascript:enregistrer_remplacement_adherent();">
<i class="fas fa-save me-2"></i> <?= _("VALIDER ET ENREGISTRER LE REMPLACEMENT") ?>
</button>
</div>
</div>
</div>
</div>
</div>

View File

@ -36,19 +36,19 @@
<div class="col-md-2 text-center"> <div class="col-md-2 text-center">
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Effet Police") ?></label> <label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Effet Police") ?></label>
<div class="p-2 border rounded bg-white small"> <div class="p-2 border rounded bg-white small">
<?= dateLang($this->nettoyer($adherent['dateEffetPolice'])) ?> <?= dateLang($this->nettoyer($adherent['dateEffetPolice']), $_SESSION['lang']) ?>
</div> </div>
</div> </div>
<div class="col-md-2 text-center"> <div class="col-md-2 text-center">
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Effet Famille") ?></label> <label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Effet Famille") ?></label>
<div class="p-2 border rounded bg-white small fw-bold text-primary"> <div class="p-2 border rounded bg-white small fw-bold text-primary">
<?= dateLang($this->nettoyer($adherent['dateEffetAdherent'])) ?> <?= dateLang($this->nettoyer($adherent['dateEffetAdherent']), $_SESSION['lang']) ?>
</div> </div>
</div> </div>
<div class="col-md-2 text-center"> <div class="col-md-2 text-center">
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Echéance") ?></label> <label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Echéance") ?></label>
<div class="p-2 border rounded bg-white small"> <div class="p-2 border rounded bg-white small">
<?= dateLang($this->nettoyer($adherent['dateFinPolice'])) ?> <?= dateLang($this->nettoyer($adherent['dateFinPolice']), $_SESSION['lang']) ?>
</div> </div>
</div> </div>
<div class="col-md-2 text-center"> <div class="col-md-2 text-center">

View File

@ -663,7 +663,7 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<!-- Application Scripts --> <!-- Application Scripts -->
<script src="/Js/fonctions.js?ver=2026.01.22.10"></script> <script src="/Js/fonctions.js?ver=2026.01.22.11"></script>
<script type="text/javascript"> <script type="text/javascript">
raffraichier_gabarit(); raffraichier_gabarit();