Merge branch 'main' of git.ebene.ovh:ebene/radiantrh
This commit is contained in:
commit
7e4bf0d7a3
|
|
@ -72,6 +72,50 @@ body {
|
|||
z-index: 1030;
|
||||
}
|
||||
|
||||
/* Nettoyage du bouton dropdown */
|
||||
.user-menu.dropdown-toggle {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
outline: none;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
|
||||
/* Supprimer la petite flèche par défaut de Bootstrap si elle vous gêne */
|
||||
.user-menu.dropdown-toggle::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Style de base de la flèche */
|
||||
.user-arrow {
|
||||
font-size: 0.8rem;
|
||||
transition: transform 0.3s ease;
|
||||
color: #6c757d; /* Couleur grise discrète */
|
||||
}
|
||||
|
||||
/* Rotation automatique quand le menu est ouvert */
|
||||
#userDropdownBtn[aria-expanded="true"] .user-arrow {
|
||||
transform: rotate(180deg);
|
||||
color: var(--bs-primary); /* Change la couleur en bleu au clic (optionnel) */
|
||||
}
|
||||
|
||||
/* On s'assure que le bouton reste bien aligné horizontalement */
|
||||
.user-menu {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/* S'assurer que le menu dropdown passe devant tout */
|
||||
.dropdown-menu {
|
||||
z-index: 2000 !important;
|
||||
min-width: 220px;
|
||||
border: 1px solid rgba(0,0,0,0.1);
|
||||
}
|
||||
|
||||
/* Positionnement quand le header est fixed */
|
||||
.dropdown-menu[data-bs-popper] {
|
||||
margin-top: 15px !important;
|
||||
}
|
||||
|
||||
.header-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
|
@ -80,6 +124,52 @@ body {
|
|||
padding: 0 24px;
|
||||
}
|
||||
|
||||
/* 1. Réduction de l'espace global du bouton */
|
||||
#userDropdownBtn {
|
||||
gap: 8px; /* Contrôle l'espace entre avatar, texte et flèche */
|
||||
}
|
||||
|
||||
/* 2. Réduction des textes */
|
||||
.user-name {
|
||||
font-size: 0.85rem !important; /* Un peu plus petit */
|
||||
margin-bottom: -2px; /* Rapproche le nom du rôle */
|
||||
}
|
||||
|
||||
.user-role {
|
||||
font-size: 1.15rem !important;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
/* 3. Réduction de l'avatar */
|
||||
.user-avatar {
|
||||
width: 32px !important; /* Au lieu de 36 ou 40 */
|
||||
height: 32px !important;
|
||||
font-size: 0.8rem; /* Initiales plus petites */
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
/* 4. Rapprochement de la flèche */
|
||||
.user-arrow {
|
||||
font-size: 0.7rem;
|
||||
margin-left: 4px !important; /* Espace réduit avec le texte */
|
||||
}
|
||||
|
||||
/* 5. Densité du menu déroulant (Dropdown) */
|
||||
.dropdown-menu {
|
||||
padding: 0.25rem 0; /* Moins d'espace en haut et en bas du menu */
|
||||
}
|
||||
|
||||
.dropdown-item {
|
||||
padding: 0.4rem 1rem; /* Items plus serrés */
|
||||
font-size: 0.85rem;
|
||||
}
|
||||
|
||||
.dropdown-header {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
|
||||
.logo-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
|
|
|||
39
Controleur/ControleurAjaxdemanderemboursement.php
Executable file
39
Controleur/ControleurAjaxdemanderemboursement.php
Executable file
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Remboursement.php';
|
||||
|
||||
class ControleurAjaxdemanderemboursement extends Controleur {
|
||||
private $remb;
|
||||
|
||||
public function __construct() {
|
||||
$this->remb = new Remboursement();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$idClient = $_SESSION['idClient_C'];
|
||||
$d1 = $this->requete->getParametreDate("d1");
|
||||
$d2 = $this->requete->getParametreDate("d2");
|
||||
$codeStatutPaiement = $this->requete->getParametreFormulaire("codeStatutPaiement");
|
||||
|
||||
$demandes = $this->remb->getListeDossiersRemboursements($idClient, $d1, $d2, $codeStatutPaiement);
|
||||
|
||||
$this->genererVueAjax(array('demandes' => $demandes));
|
||||
}
|
||||
|
||||
public function enregistrerdemande()
|
||||
{
|
||||
$numeroBeneficiaire = $this->requete->getParametreFormulaire("numeroBeneficiaire");
|
||||
$commentaires = $this->requete->getParametreFormulaire("commentaires");
|
||||
|
||||
$this->remb->enregistrerdemande($numeroBeneficiaire, $commentaires);
|
||||
}
|
||||
|
||||
public function selectionnerremb()
|
||||
{
|
||||
$idDemande = $this->requete->getParametreFormulaire("idDemande");
|
||||
|
||||
$_SESSION['idDemandeRemboursement'] = $idDemande;
|
||||
}
|
||||
|
||||
}
|
||||
130
Controleur/ControleurAjaxdossierclassique.php
Executable file
130
Controleur/ControleurAjaxdossierclassique.php
Executable file
|
|
@ -0,0 +1,130 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Facture.php';
|
||||
require_once 'Modele/Pbeneficiaire.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
|
||||
class ControleurAjaxdossierclassique extends Controleur {
|
||||
private $facture;
|
||||
private $beneficiaire;
|
||||
|
||||
public function __construct() {
|
||||
$this->facture = new Facture();
|
||||
$this->beneficiaire = new Pbeneficiaire();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$numeroFeuilleMaladie = $_SESSION['numeroFeuilleMaladie_C'];
|
||||
|
||||
$this->genererVueAjax(array('numeroFeuilleMaladie' => $numeroFeuilleMaladie));
|
||||
}
|
||||
|
||||
public function enregistrerdossierclassique()
|
||||
{
|
||||
|
||||
$codeLienDemandeur = $this->requete->getParametreFormulaire("codeLienDemandeur");
|
||||
|
||||
$demandeur = $this->requete->getParametreFormulaire("demandeur");
|
||||
$codeLienBeneficiaire = $this->requete->getParametreFormulaire("codeLienBeneficiaire");
|
||||
$beneficiaireReglement = $this->requete->getParametreFormulaire("beneficiaireReglement");
|
||||
$observations = $this->requete->getParametreFormulaire("observations");
|
||||
|
||||
$codeModePaiementDemande = $this->requete->getParametreFormulaire("codeModePaiementDemande");
|
||||
$codeBanqueBeneficiaire = $this->requete->getParametreFormulaire("codeBanqueBeneficiaire");
|
||||
$numeroCompteBeneficiaire = $this->requete->getParametreFormulaire("numeroCompteBeneficiaire");
|
||||
|
||||
$prestataireConsultation = $this->requete->getParametreFormulaire("prestataireConsultation");
|
||||
$codeRaisonConsultation = $this->requete->getParametreFormulaire("codeRaisonConsultation");
|
||||
$hospitalisation = $this->requete->getParametreFormulaire("hospitalisation");
|
||||
|
||||
|
||||
$dateConsultation = $this->requete->getParametreDate("dateConsultation");
|
||||
|
||||
$codeAffection = $this->requete->getParametreFormulaire("codeAffection");
|
||||
|
||||
//highlight_string("<?php\n\$datas =\n" . var_export($ententeprealable, true) . ";\n>");
|
||||
|
||||
$idDemandeRemboursement = $_SESSION['idDemandeRemboursement'] ?? '0';
|
||||
|
||||
|
||||
$idDossierClassique = $this->facture->enregistrerdossierclassique($demandeur, $codeLienDemandeur, $beneficiaireReglement,
|
||||
$codeLienBeneficiaire, $observations, $codeBanqueBeneficiaire, $numeroCompteBeneficiaire, $codeModePaiementDemande,
|
||||
$prestataireConsultation, $dateConsultation, $codeRaisonConsultation, $hospitalisation, $codeAffection,
|
||||
$idDemandeRemboursement);
|
||||
|
||||
$_SESSION['idDossierClassique'] = $idDossierClassique;
|
||||
|
||||
}
|
||||
|
||||
public function enregistrermodificationsdossierclassique()
|
||||
{
|
||||
$idDossierClassique = $_SESSION['idDossierClassique'] ;
|
||||
$codeLienDemandeur = $this->requete->getParametreFormulaire("codeLienDemandeur");
|
||||
$demandeur = $this->requete->getParametreFormulaire("demandeur");
|
||||
$codeLienBeneficiaire = $this->requete->getParametreFormulaire("codeLienBeneficiaire");
|
||||
$beneficiaireReglement = $this->requete->getParametreFormulaire("beneficiaireReglement");
|
||||
$observations = $this->requete->getParametreFormulaire("observations");
|
||||
|
||||
$codeModePaiementDemande = $this->requete->getParametreFormulaire("codeModePaiementDemande");
|
||||
$codeBanqueBeneficiaire = $this->requete->getParametreFormulaire("codeBanqueBeneficiaire");
|
||||
$numeroCompteBeneficiaire = $this->requete->getParametreFormulaire("numeroCompteBeneficiaire");
|
||||
|
||||
$prestataireConsultation = $this->requete->getParametreFormulaire("prestataireConsultation");
|
||||
$codeRaisonConsultation = $this->requete->getParametreFormulaire("codeRaisonConsultation");
|
||||
$hospitalisation = $this->requete->getParametreFormulaire("hospitalisation");
|
||||
$dateConsultation = $this->requete->getParametreDate("dateConsultation");
|
||||
|
||||
$this->facture->enregistrermodificationsdossierclassique($idDossierClassique, $demandeur, $codeLienDemandeur, $beneficiaireReglement,
|
||||
$codeLienBeneficiaire, $observations, $codeBanqueBeneficiaire, $numeroCompteBeneficiaire, $codeModePaiementDemande,
|
||||
$prestataireConsultation, $dateConsultation, $codeRaisonConsultation, $hospitalisation);
|
||||
|
||||
// $this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function getcontextbyid()
|
||||
{
|
||||
$idDossierClassique = $this->requete->getParametre("idDossierClassique");
|
||||
$_SESSION['idDossierClassique'] = $idDossierClassique;
|
||||
}
|
||||
|
||||
public function enregistrerpaiementdossierclassique()
|
||||
{
|
||||
$idDossierClassique = $_SESSION['idDossierClassique'] ;
|
||||
|
||||
$codeModePaiement = $this->requete->getParametreFormulaire("codeModePaiement");
|
||||
$referencePaiement = $this->requete->getParametreFormulaire("referencePaiement");
|
||||
$montantPaye = $this->requete->getParametreFormulaire("montantPaye", "numerique");
|
||||
$dateComptable = $this->requete->getParametreDate("dateComptable");
|
||||
|
||||
$codeBanquePayeur = $this->requete->getParametreFormulaire("codeBanquePayeur");
|
||||
|
||||
$this->facture->enregistrerpaiementdossierclassique($idDossierClassique, $dateComptable, $montantPaye, $codeModePaiement, $referencePaiement, $codeBanquePayeur);
|
||||
|
||||
$this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function getcontextbyidreglement()
|
||||
{
|
||||
$numeroDecompte = $this->requete->getParametre("numeroDecompte");
|
||||
$idBeneficiaire = $this->requete->getParametre("idBeneficiaire");
|
||||
|
||||
$beneficiaire = $this->beneficiaire->getContexteBeneficiaireId($idBeneficiaire);
|
||||
|
||||
$idDossierClassique = $this->facture->get_id_dossier_by_numerodecompte($numeroDecompte);
|
||||
|
||||
$_SESSION['idDossierClassique'] = $idDossierClassique;
|
||||
|
||||
// $this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function demanderreglement()
|
||||
{
|
||||
$idDossierClassique = $_SESSION['idDossierClassique'] ;
|
||||
|
||||
$this->facture->demanderreglement($idDossierClassique);
|
||||
|
||||
$this->genererVueAjax();
|
||||
}
|
||||
|
||||
}
|
||||
126
Controleur/ControleurAjaxdossiersclassiquespolice.php
Executable file
126
Controleur/ControleurAjaxdossiersclassiquespolice.php
Executable file
|
|
@ -0,0 +1,126 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Facture.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
|
||||
class ControleurAjaxdossiersclassiquespolice extends Controleur {
|
||||
private $facture;
|
||||
|
||||
public function __construct() {
|
||||
$this->facture = new Facture();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$idPolice = $_SESSION['idPolice_C'] ;
|
||||
$d1 = $this->requete->getParametreDate("d1");
|
||||
$d2 = $this->requete->getParametreDate("d2");
|
||||
|
||||
$bordereauxrbcl = $this->facture->getbordereauxrbcl($idPolice, $d1, $d2) ;
|
||||
|
||||
$this->genererVueAjax(array('bordereauxrbcl' => $bordereauxrbcl));
|
||||
}
|
||||
|
||||
public function enregistrerundossierclassique()
|
||||
{
|
||||
$codeLienDemandeur = $this->requete->getParametreFormulaire("codeLienDemandeur");
|
||||
$demandeur = $this->requete->getParametreFormulaire("demandeur");
|
||||
$codeLienBeneficiaire = $this->requete->getParametreFormulaire("codeLienBeneficiaire");
|
||||
$beneficiaireReglement = $this->requete->getParametreFormulaire("beneficiaireReglement");
|
||||
$observations = $this->requete->getParametreFormulaire("observations");
|
||||
|
||||
$codeModePaiementDemande = $this->requete->getParametreFormulaire("codeModePaiementDemande");
|
||||
$codeBanqueBeneficiaire = $this->requete->getParametreFormulaire("codeBanqueBeneficiaire");
|
||||
$numeroCompteBeneficiaire = $this->requete->getParametreFormulaire("numeroCompteBeneficiaire");
|
||||
|
||||
$prestataireConsultation = $this->requete->getParametreFormulaire("prestataireConsultation");
|
||||
$codeRaisonConsultation = $this->requete->getParametreFormulaire("codeRaisonConsultation");
|
||||
$hospitalisation = $this->requete->getParametreFormulaire("hospitalisation");
|
||||
$dateConsultation = $this->requete->getParametreDate("dateConsultation");
|
||||
|
||||
$codePrestataire = $this->requete->getParametreFormulaire("codePrestataire");
|
||||
|
||||
$codeAffection = $this->requete->getParametreFormulaire("codeAffection");
|
||||
|
||||
$_SESSION['codePrestataire_C'] = $codePrestataire;
|
||||
|
||||
$idDossierClassique = $this->facture->enregistrerundossierclassique($demandeur, $codeLienDemandeur, $beneficiaireReglement,
|
||||
$codeLienBeneficiaire, $observations, $codeBanqueBeneficiaire, $numeroCompteBeneficiaire, $codeModePaiementDemande,
|
||||
$prestataireConsultation, $dateConsultation, $codeRaisonConsultation, $hospitalisation, $codePrestataire, $codeAffection);
|
||||
|
||||
$_SESSION['idDossierClassique'] = $idDossierClassique;
|
||||
|
||||
}
|
||||
|
||||
public function getcontextbyiddossier()
|
||||
{
|
||||
$idDossierClassique = $this->requete->getParametre("idDossierClassique");
|
||||
$idBeneficiaire = $this->requete->getParametre("idBeneficiaire");
|
||||
|
||||
$_SESSION['idDossierClassique'] = $idDossierClassique;
|
||||
$_SESSION['idBeneficiaire_C'] = $idBeneficiaire;
|
||||
|
||||
$this->beneficiaire->getContexteBeneficiaireIdPrest($idBeneficiaire);
|
||||
}
|
||||
|
||||
public function enregistrerpaiementdossierclassique()
|
||||
{
|
||||
$idDossierClassique = $_SESSION['idDossierClassique'] ;
|
||||
|
||||
$codeModePaiement = $this->requete->getParametreFormulaire("codeModePaiement");
|
||||
$referencePaiement = $this->requete->getParametreFormulaire("referencePaiement");
|
||||
$montantPaye = $this->requete->getParametreFormulaire("montantPaye", "numerique");
|
||||
$dateComptable = $this->requete->getParametreDate("dateComptable");
|
||||
|
||||
$codeBanquePayeur = $this->requete->getParametreFormulaire("codeBanquePayeur");
|
||||
|
||||
$this->facture->enregistrerpaiementdossierclassique($idDossierClassique, $dateComptable, $montantPaye, $codeModePaiement, $referencePaiement, $codeBanquePayeur);
|
||||
|
||||
$this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function getcontextbyidreglement()
|
||||
{
|
||||
$idReglement = $this->requete->getParametre("idReglement");
|
||||
|
||||
$idDossierClassiquePolice = $this->facture->get_id_dossier_police_by_id_reglement($idReglement);
|
||||
|
||||
$_SESSION['idDossierClassiquePolice'] = $idDossierClassiquePolice;
|
||||
}
|
||||
|
||||
public function demanderreglement()
|
||||
{
|
||||
$idDossierClassique = $_SESSION['idDossierClassique'] ;
|
||||
|
||||
$this->facture->demanderreglement($idDossierClassique);
|
||||
|
||||
$this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function enregistrermodificationsdossierclassiquepolice()
|
||||
{
|
||||
$idDossierClassiquePolice = $_SESSION['idDossierClassiquePolice'];
|
||||
$codeModePaiementDemande = $this->requete->getParametreFormulaire("codeModePaiementDemande");
|
||||
$codeBanqueBeneficiaire = $this->requete->getParametreFormulaire("codeBanqueBeneficiaire");
|
||||
$numeroCompteBeneficiaire = $this->requete->getParametreFormulaire("numeroCompteBeneficiaire");
|
||||
$observations = $this->requete->getParametreFormulaire("observations");
|
||||
|
||||
$this->facture->enregistrermodificationsdossierclassiquepolice($idDossierClassiquePolice, $codeModePaiementDemande,
|
||||
$codeBanqueBeneficiaire, $numeroCompteBeneficiaire, $observations);
|
||||
|
||||
}
|
||||
|
||||
public function getcontextbyidbordereau()
|
||||
{
|
||||
$idDossierClassiquePolice = $this->requete->getParametre("idDossierClassiquePolice");
|
||||
$_SESSION['idDossierClassiquePolice'] = $idDossierClassiquePolice;
|
||||
}
|
||||
|
||||
public function demanderreglementpolice()
|
||||
{
|
||||
$idDossierClassiquePolice = $_SESSION['idDossierClassiquePolice'] ;
|
||||
|
||||
$this->facture->demanderreglementpolice($idDossierClassiquePolice);
|
||||
}
|
||||
|
||||
}
|
||||
32
Controleur/ControleurAjaxfacturesclassiques.php
Executable file
32
Controleur/ControleurAjaxfacturesclassiques.php
Executable file
|
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Facture.php';
|
||||
|
||||
class ControleurAjaxfacturesclassiques extends Controleur {
|
||||
private $facture;
|
||||
|
||||
public function __construct() {
|
||||
$this->facture = new Facture();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$d1 = $this->requete->getParametreDate("d1");
|
||||
$d2 = $this->requete->getParametreDate("d2");
|
||||
|
||||
$filtre = $this->requete->getParametreFormulaire("filtre");
|
||||
|
||||
if($filtre=="0"){
|
||||
$dossiers = $this->facture->getdossiersclassiques($d1, $d2);
|
||||
}elseif($filtre=="1")
|
||||
{
|
||||
$dossiers = $this->facture->getdossiersclassiquesassures($d1, $d2);
|
||||
}elseif($filtre=="2")
|
||||
{
|
||||
$dossiers = $this->facture->getbordereauxrbclpolices($d1, $d2) ;
|
||||
}
|
||||
|
||||
|
||||
$this->genererVueAjax(array('dossiers' => $dossiers, 'filtre' => $filtre));
|
||||
}
|
||||
}
|
||||
122
Controleur/ControleurAjaxfacturesclassiquesexport.php
Executable file
122
Controleur/ControleurAjaxfacturesclassiquesexport.php
Executable file
|
|
@ -0,0 +1,122 @@
|
|||
<?php
|
||||
require_once 'vendor/autoload.php';
|
||||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||||
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
|
||||
require_once 'Framework/Controleurrequete.php'; // OK
|
||||
require_once 'Modele/Facture.php';
|
||||
|
||||
class ControleurAjaxfacturesclassiquesexport extends Controleurrequete
|
||||
{
|
||||
private $facture;
|
||||
|
||||
public function __construct() {
|
||||
$this->facture = new Facture();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$d1 = $this->requete->getParametreDate("d1");
|
||||
$d2 = $this->requete->getParametreDate("d2");
|
||||
|
||||
$filtre = $this->requete->getParametreFormulaire("filtre");
|
||||
|
||||
|
||||
|
||||
|
||||
if($filtre=="0"){
|
||||
$dossiers = $this->facture->getdossiersclassiquesexport($d1, $d2) ;
|
||||
}elseif($filtre=="1")
|
||||
{
|
||||
$dossiers = $this->facture->getdossiersclassiquesassuresexport($d1, $d2);
|
||||
}elseif($filtre=="2")
|
||||
{
|
||||
$dossiers = $this->facture->getbordereauxrbclpolicesexport($d1, $d2);
|
||||
}
|
||||
|
||||
|
||||
// Excel
|
||||
|
||||
if($filtre=="2"){
|
||||
$headerXLS = array
|
||||
(
|
||||
_("Réclamation"),
|
||||
_("Système"),
|
||||
_("ID Bordereau"),
|
||||
_("Nbre Dossier"),
|
||||
_("Nbre Facture"),
|
||||
_("Réclamé"),
|
||||
_("Rejet"),
|
||||
_("Exclu"),
|
||||
_("Base"),
|
||||
_("T M"),
|
||||
_("A Rembourser"),
|
||||
_("Dépassement"),
|
||||
_("Retenu"),
|
||||
_("Règlement")
|
||||
);
|
||||
}else{
|
||||
$headerXLS = array
|
||||
(
|
||||
_('Date'),
|
||||
_('Date Saisie'),
|
||||
_('Prestataire Cons'),
|
||||
_('ID Dossier'),
|
||||
_('Nbre Facture'),
|
||||
_('Réclamé'),
|
||||
_('Rejet'),
|
||||
_('Exclu'),
|
||||
_('Base'),
|
||||
_('T M'),
|
||||
_('A Rembourser'),
|
||||
_('Dépassement'),
|
||||
_('Retenu'),
|
||||
_('Règlement'),
|
||||
_('ID Bordereau')
|
||||
);
|
||||
}
|
||||
|
||||
$dataXLS = array();
|
||||
|
||||
|
||||
foreach ($dossiers as $v)
|
||||
{
|
||||
$dataXLS[]=$v;
|
||||
}
|
||||
|
||||
|
||||
$classeur = new Spreadsheet();
|
||||
$classeur->getProperties()->setCreator("INTER SANTE");
|
||||
$classeur->setActiveSheetIndex(0);
|
||||
$feuille=$classeur->getActiveSheet();
|
||||
$feuille->setTitle(_('REMBOURSEMENTS DIRECT'));
|
||||
|
||||
|
||||
$feuille->setCellValue('A1', convertirc($_SESSION['nomSociete']));
|
||||
|
||||
if($filtre=="2"){
|
||||
$feuille->setCellValue('A2', convertirc(_('LISTE DES BORDEREAUX RD DU').' '.dateLang($d1).' AU '.dateLang($d2)));
|
||||
}else{
|
||||
$feuille->setCellValue('A2', convertirc(_('LISTE DES DOSSIERS RD DU').' '.dateLang($d1).' AU '.dateLang($d2)));
|
||||
}
|
||||
|
||||
$feuille->mergeCells('A2:D2');
|
||||
|
||||
|
||||
$feuille->fromArray($headerXLS, NULL, 'A5', true);
|
||||
$feuille->fromArray($dataXLS, NULL, 'A6', true);
|
||||
|
||||
//Forcer le téléchargement vers le navigateur;
|
||||
$fichier = 'Temp/TMP_DOSSIERS_RD'."_".uniqid().".xlsx";
|
||||
|
||||
$writer = new Xlsx($classeur);
|
||||
$writer->save($fichier);
|
||||
|
||||
$t_html =' <div id ="div_export_a" class="alert alert-info"> ';
|
||||
$t_html .=' <a style="font-size:15pt;" href="'.$fichier.'" target="_blank" > '._("TELECHARGER").' </a> ';
|
||||
$t_html .=' </div ';
|
||||
echo $t_html;
|
||||
|
||||
exit();
|
||||
}
|
||||
|
||||
}
|
||||
94
Controleur/ControleurAjaxremplaceradherent.php
Normal file
94
Controleur/ControleurAjaxremplaceradherent.php
Normal 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();
|
||||
}
|
||||
}
|
||||
33
Controleur/ControleurAjaxrhvalidationrd.php
Executable file
33
Controleur/ControleurAjaxrhvalidationrd.php
Executable file
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Remboursement.php';
|
||||
|
||||
class ControleurAjaxrhvalidationrd extends Controleur {
|
||||
private $remboursement;
|
||||
|
||||
public function __construct() {
|
||||
$this->remboursement = new Remboursement();
|
||||
}
|
||||
|
||||
public function index() {
|
||||
|
||||
$idDemande = $this->requete->getParametreFormulaire("idDemande");
|
||||
|
||||
$demande = $this->remboursement->getDemandeRemboursement($idDemande);
|
||||
|
||||
$reponsedemande = $this->remboursement->getstatutpaiementrd();
|
||||
|
||||
$this->genererVueAjax(array('demande' => $demande, 'reponsedemande' => $reponsedemande));
|
||||
|
||||
}
|
||||
|
||||
public function enregistrer()
|
||||
{
|
||||
$idDemande = $this->requete->getParametreFormulaire("idDemande");
|
||||
$codeStatutPaiement = $this->requete->getParametreFormulaire("codeStatutPaiement");
|
||||
$motifRejetRh = $this->requete->getParametreFormulaire("motifRejetRh");
|
||||
|
||||
$this->remboursement->enregistrerrhvalidationrd($idDemande, $codeStatutPaiement, $motifRejetRh);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -39,6 +39,9 @@ class ControleurCreeravenant extends Controleur {
|
|||
$_SESSION['dateAvenant_C'] = $dateAvenant;
|
||||
$_SESSION['motifavenant_C'] = $motifavenant;
|
||||
|
||||
//var_dump($codeTypeAvenant);
|
||||
//die();
|
||||
|
||||
if($codeTypeAvenant=="RET")
|
||||
{
|
||||
$this->rediriger("Ficheretrait");
|
||||
|
|
|
|||
173
Controleur/ControleurRemboursement.php
Executable file
173
Controleur/ControleurRemboursement.php
Executable file
|
|
@ -0,0 +1,173 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Remboursement.php';
|
||||
require_once 'Modele/Ged.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
|
||||
class ControleurRemboursement extends Controleur {
|
||||
private $menuvue;
|
||||
private $remboursement;
|
||||
private $ged;
|
||||
|
||||
public function __construct() {
|
||||
$this->menuvue = new Menuvueutilisateur();
|
||||
$this->menuvue->getMenuVue('Remboursement');
|
||||
|
||||
$this->remboursement = new Remboursement();
|
||||
$this->ged = new Ged();
|
||||
}
|
||||
|
||||
public function index($msgErreur=null)
|
||||
{
|
||||
$message = "";
|
||||
|
||||
$nouveau_fichier = "Rien";
|
||||
|
||||
$idDemandeRemboursement = $_SESSION['idDemandeRemboursement'] ?? '0';
|
||||
|
||||
if(!empty($_POST))
|
||||
{
|
||||
define('TARGET', $_SESSION['cheminGed']); // Repertoire cible
|
||||
define('MAX_SIZE', 10000000); // Taille max en octets du fichier
|
||||
|
||||
|
||||
$tabExt = array("bmp", "gif", "jpeg", "jpg", "pdf", "png"); // Extensions autorisees
|
||||
|
||||
|
||||
|
||||
$extension = '';
|
||||
|
||||
|
||||
if( !is_dir(TARGET) )
|
||||
{
|
||||
if( !mkdir(TARGET, 0755) )
|
||||
{
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message = "Error: The target directory cannot be created! Check that you have sufficient rights to do so or create it manually!";
|
||||
}else{
|
||||
$message = 'Erreur : le répertoire cible ne peut-être créé ! Vérifiez que vous diposiez des droits suffisants pour le faire ou créez le manuellement !';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// On verifie si le champ est rempli
|
||||
if( !empty($_FILES['fichier_upload']['name']) )
|
||||
{
|
||||
// Recuperation de l'extension du fichier
|
||||
|
||||
$extension = pathinfo($_FILES['fichier_upload']['name'], PATHINFO_EXTENSION);
|
||||
|
||||
// On verifie l'extension du fichier
|
||||
if(in_array(strtolower($extension), $tabExt))
|
||||
{
|
||||
$message = $_FILES['fichier_upload']['size'];
|
||||
|
||||
// On verifie les dimensions et taille du fichier
|
||||
if($_FILES['fichier_upload']['size'] <= MAX_SIZE)
|
||||
{
|
||||
$taille = $_FILES['fichier_upload']['size'];
|
||||
|
||||
// Parcours du tableau d'erreurs
|
||||
if(isset($_FILES['fichier_upload']['error']) && UPLOAD_ERR_OK === $_FILES['fichier_upload']['error'])
|
||||
{
|
||||
// On renomme le fichier
|
||||
$nomOrigine = $_FILES['fichier_upload']['name'];
|
||||
$nouveau_fichier = dateJourSql()."_".uniqid().".".$extension;
|
||||
|
||||
// Si c'est OK, on teste l'upload
|
||||
if(move_uploaded_file($_FILES['fichier_upload']['tmp_name'], TARGET.$nouveau_fichier))
|
||||
{
|
||||
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message = 'Uploaded successfully';
|
||||
}else{
|
||||
$message = 'Chargé avec succès';
|
||||
}
|
||||
|
||||
|
||||
// on va envoyer dans la base de données
|
||||
$this->ged->enregistrergedRD($idDemandeRemboursement, $nomOrigine, $nouveau_fichier, $taille);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Sinon on affiche une erreur systeme
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message = 'Error loading!';
|
||||
}else{
|
||||
$message = 'Problème lors du chargement !';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message = 'An internal error prevented the loading';
|
||||
}else{
|
||||
$message = 'Une erreur interne a empêché le chargement';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message .= $_FILES['fichier_upload']['size']." Error in the file dimensions!";
|
||||
// $message = 'Erreur dans les dimensions du fichier !';
|
||||
}else{
|
||||
$message .= $_FILES['fichier_upload']['size']." Erreur dans les dimensions du fichier !";
|
||||
// $message = 'Erreur dans les dimensions du fichier !';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Sinon on affiche une erreur pour l'extension
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$message = 'File extension is incorrect!';
|
||||
}else{
|
||||
$message = 'Extension du fichier est incorrecte !';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Sinon on affiche une erreur pour le champ vide
|
||||
|
||||
if (est_anglophone())
|
||||
{
|
||||
$$message = 'Please select a file!';
|
||||
}else{
|
||||
$message = 'Veuillez sélectionner un fichier SVP!';
|
||||
}
|
||||
}
|
||||
|
||||
// fin upload
|
||||
}
|
||||
|
||||
$msgErreurGed = $message;
|
||||
|
||||
//$benficiaires = $this->remboursement->getBeneficaire();
|
||||
|
||||
$demande = $this->remboursement->getDemandeRemboursement($idDemandeRemboursement);
|
||||
|
||||
$geds = $this->ged->getgedRd();
|
||||
|
||||
unset($_FILES['fichier_upload']);
|
||||
|
||||
$this->genererVue(array(/*'benficiaires' => $benficiaires,*/ 'msgErreurGed' => $msgErreurGed,
|
||||
'demande' => $demande, 'geds' => $geds));
|
||||
}
|
||||
|
||||
}
|
||||
26
Controleur/ControleurRemboursementclassique.php
Executable file
26
Controleur/ControleurRemboursementclassique.php
Executable file
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Remboursement.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
|
||||
class ControleurRemboursementclassique extends Controleur {
|
||||
private $menuvue;
|
||||
private $remboursement;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->menuvue = new Menuvueutilisateur();
|
||||
$this->menuvue->getMenuVue('Remboursementclassique');
|
||||
|
||||
$this->remboursement = new Remboursement();
|
||||
}
|
||||
|
||||
public function index() {
|
||||
$d1 = $_SESSION['debutMois_C'];
|
||||
$d2 = date('Y-m-d');
|
||||
|
||||
$reponsedemande = $this->remboursement->getstatutpaiementrd();
|
||||
|
||||
$this->genererVue(array('reponsedemande' => $reponsedemande));
|
||||
}
|
||||
}
|
||||
33
Controleur/ControleurRemplaceradherent.php
Normal file
33
Controleur/ControleurRemplaceradherent.php
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Adherent.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
|
||||
class ControleurRemplaceradherent extends Controleur {
|
||||
private $adherent;
|
||||
|
||||
public function __construct() {
|
||||
$this->menuvue = new Menuvueutilisateur();
|
||||
$this->menuvue->getMenuVue('Remplaceradherent');
|
||||
|
||||
$this->adherent = new Adherent();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$idPolice = $_SESSION['idPolice_C'];
|
||||
$idAdherent = $_SESSION['idAdherent_C'];
|
||||
|
||||
// $adherent = $this->adherent->getAdherentIdConso($idAdherent);
|
||||
$adherent = $this->adherent->getAdherentIdRempl($idAdherent);
|
||||
|
||||
$this->genererVue(array('adherent' => $adherent));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
71
Controleur/ControleurRemplaceradherentcons.php
Normal file
71
Controleur/ControleurRemplaceradherentcons.php
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php';
|
||||
require_once 'Modele/Adherent.php';
|
||||
require_once 'Modele/Menuvueutilisateur.php';
|
||||
require_once 'Modele/Garantieadherent.php';
|
||||
|
||||
class ControleurRemplaceradherentcons extends Controleur {
|
||||
private $adherent;
|
||||
private $garantieadherent;
|
||||
|
||||
public function __construct() {
|
||||
$this->menuvue = new Menuvueutilisateur();
|
||||
$this->menuvue->getMenuVue('Remplaceradherentcons');
|
||||
|
||||
$this->adherent = new Adherent();
|
||||
$this->garantieadherent = new Garantieadherent();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$idPolice = $_SESSION['idPolice_C'];
|
||||
|
||||
$idAdherent_sortant = $_SESSION['idAdherent_C'];
|
||||
|
||||
$adherent_sortant = $this->adherent->getAdherentIdConso($idAdherent_sortant);
|
||||
|
||||
$remplacementadherent = $this->adherent->getremplacementadherent($idAdherent_sortant);
|
||||
|
||||
$idRemplacementadherent = $remplacementadherent['idRemplacementadherent'];
|
||||
|
||||
$idAdherent_entrant = $adherent_sortant['idRemplacant'];
|
||||
|
||||
$adherent_entrant = $this->adherent->getAdherentIdConso($idAdherent_entrant);
|
||||
|
||||
$garantieadherents = $this->adherent->getgarantieremplacementadherent($idAdherent_sortant);
|
||||
|
||||
$beneficiaires = $this->adherent->getbeneficiaireremplacementadherent($idRemplacementadherent);
|
||||
|
||||
$this->genererVue(array('adherent_sortant' => $adherent_sortant, 'remplacementadherent' => $remplacementadherent,
|
||||
'adherent_entrant' => $adherent_entrant, 'garantieadherents' => $garantieadherents, 'beneficiaires' => $beneficiaires));
|
||||
}
|
||||
|
||||
public function remplacant()
|
||||
{
|
||||
$idPolice = $_SESSION['idPolice_C'];
|
||||
|
||||
$idAdherent_entrant = $_SESSION['idAdherent_C'];
|
||||
$adherent_entrant = $this->adherent->getAdherentIdConso($idAdherent_entrant);
|
||||
|
||||
$idAdherent_sortant = $adherent_entrant['idRemplace'];
|
||||
$adherent_sortant = $this->adherent->getAdherentIdConso($idAdherent_sortant);
|
||||
|
||||
$remplacementadherent = $this->adherent->getremplacementadherent($idAdherent_sortant);
|
||||
$idRemplacementadherent = $remplacementadherent['idRemplacementadherent'];
|
||||
|
||||
$garantieadherents = $this->adherent->getgarantieremplacementadherent($idAdherent_sortant);
|
||||
|
||||
$beneficiaires = $this->adherent->getbeneficiaireremplacementadherent($idRemplacementadherent);
|
||||
|
||||
$this->genererVue(array('adherent_sortant' => $adherent_sortant, 'remplacementadherent' => $remplacementadherent,
|
||||
'adherent_entrant' => $adherent_entrant, 'garantieadherents' => $garantieadherents, 'beneficiaires' => $beneficiaires));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
796
Js/fonctions.js
796
Js/fonctions.js
|
|
@ -38,27 +38,28 @@ function connexion_cookie()
|
|||
});
|
||||
}
|
||||
|
||||
function toggleSidebar() {
|
||||
document.body.classList.toggle('sidebar-collapsed');
|
||||
}
|
||||
|
||||
$(function() {
|
||||
// Initialisation des composants au chargement de la page
|
||||
appliquerDataTable('.tabliste');
|
||||
dataTableSpeciale();
|
||||
|
||||
//const vueOuverte = $("#vue").val();
|
||||
let nomForm = $("#nomForm").val();
|
||||
|
||||
/*
|
||||
if(nomForm == "nouveluserrh")
|
||||
if(nomForm == "remboursementClassic")
|
||||
{
|
||||
ajax_saisir_pass_new_user();
|
||||
$("#nom").focus();
|
||||
let filtre = "0";
|
||||
d1 = $("#d1").val();
|
||||
d2 = $("#d2").val();
|
||||
|
||||
lister_dossiers_classiques(filtre);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
if(vueOuverte === "Accueil"){
|
||||
reset_graphique();
|
||||
}
|
||||
*/
|
||||
|
||||
});
|
||||
|
||||
function raffraichier_gabarit()
|
||||
|
|
@ -74,6 +75,11 @@ function raffraichier_gabarit()
|
|||
|
||||
if((codeSociete == undefined || codeSociete <= " ") && vue !="Connexion"){
|
||||
|
||||
const msg = "Votre session a expiré. Vous serez déconnecté.";
|
||||
const msgEng = "Your session has expired. You will be disconnected.";
|
||||
|
||||
alert_ebene(msg, msgEng);
|
||||
|
||||
window.location.assign($("#racineWeb" ).val()+"Connexion/deconnecter/");
|
||||
}
|
||||
},
|
||||
|
|
@ -186,28 +192,51 @@ function baseSwal(options) {
|
|||
title: 'responsive-swal-title',
|
||||
htmlContainer: 'responsive-swal-html'
|
||||
},
|
||||
didOpen: adjustSwalContent,
|
||||
didOpen: (popup) => {
|
||||
// Ajuste ton contenu responsive
|
||||
adjustSwalContent(popup);
|
||||
|
||||
// Trouver le z-index le plus élevé parmi les modals ouverts
|
||||
const highestModalZ = [...document.querySelectorAll('.modal.show')]
|
||||
.map(m => parseInt(window.getComputedStyle(m).zIndex) || 1050)
|
||||
.reduce((a, b) => Math.max(a, b), 1050);
|
||||
|
||||
// Forcer SweetAlert à passer au-dessus
|
||||
const swalContainer = popup.closest('.swal2-container');
|
||||
if (swalContainer) {
|
||||
swalContainer.style.zIndex = highestModalZ + 50;
|
||||
}
|
||||
},
|
||||
willOpen: () => { document.body.style.overflow = 'hidden'; },
|
||||
willClose: () => { document.body.style.overflow = 'auto'; }
|
||||
});
|
||||
}
|
||||
|
||||
// 🔒 Fonction utilitaire pour fermer SweetAlert
|
||||
function closeSwal() {
|
||||
Swal.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* ALERTE SIMPLE
|
||||
* Affiche une information bilingue.
|
||||
*/
|
||||
|
||||
function alert_ebene(p_msg, p_msg_eng) {
|
||||
const codeLangue = $("#codeLangue").val();
|
||||
const message = (codeLangue === "en_US") ? p_msg_eng : p_msg;
|
||||
|
||||
baseSwal({
|
||||
title: formatMessageForSwal(message),
|
||||
function alert_ebene(msgFr, msgEn) {
|
||||
const codeLangue = document.querySelector("#codeLangue")?.value || "fr_FR";
|
||||
const message = (codeLangue === "en_US") ? msgEn : msgFr;
|
||||
|
||||
// Appel via baseSwal
|
||||
return baseSwal({
|
||||
text: message,
|
||||
icon: 'info',
|
||||
confirmButtonText: codeLangue === "en_US" ? 'OK' : 'D\'accord'
|
||||
confirmButtonText: (codeLangue === "en_US") ? "OK" : "D'accord",
|
||||
allowOutsideClick: false,
|
||||
allowEscapeKey: false
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
function alert_ebene(msgFr, msgEn) {
|
||||
const codeLangue = document.querySelector("#codeLangue")?.value || "fr_FR";
|
||||
|
|
@ -377,6 +406,84 @@ function appliquerDataTable(selector = '.tabliste', options = {}) {
|
|||
});
|
||||
}
|
||||
|
||||
function dataTableSpeciale() {
|
||||
const $table = $('.tabspeciale');
|
||||
const codeLangue = $("#codeLangue").val() || "fr_FR";
|
||||
|
||||
// Détruire l'instance existante si elle existe
|
||||
if ($.fn.DataTable.isDataTable($table)) {
|
||||
$table.DataTable().clear().destroy();
|
||||
// ⚠️ Ne pas vider le contenu, sinon tu perds <thead>/<th>
|
||||
// $table.empty();
|
||||
}
|
||||
|
||||
// Définition des traductions
|
||||
const langOptions = {
|
||||
en_US: {
|
||||
lengthMenu: "Display _MENU_ records per page",
|
||||
zeroRecords: "Nothing found - sorry",
|
||||
info: "Showing page _PAGE_ of _PAGES_",
|
||||
infoEmpty: "No records available",
|
||||
search: "Search:",
|
||||
paginate: {
|
||||
next: "►",
|
||||
previous: "◄",
|
||||
first: "|◄",
|
||||
last: "►|"
|
||||
},
|
||||
infoFiltered: "(filtered from _MAX_ total records)"
|
||||
},
|
||||
fr_FR: {
|
||||
lengthMenu: "Affiche _MENU_ par page",
|
||||
zeroRecords: "Désolé - Aucune donnée trouvée",
|
||||
info: "_PAGE_ sur _PAGES_ pages",
|
||||
infoEmpty: "Pas d'enregistrement",
|
||||
search: "Recherche:",
|
||||
paginate: {
|
||||
next: "►",
|
||||
previous: "◄",
|
||||
first: "|◄",
|
||||
last: "►|"
|
||||
},
|
||||
infoFiltered: "(filtré de _MAX_ total enregistrements)"
|
||||
}
|
||||
};
|
||||
|
||||
// Définition des lengthMenu selon la langue
|
||||
const lengthMenuOptions = [10, 50, 100];
|
||||
|
||||
try {
|
||||
const dt = $table.DataTable({
|
||||
responsive: true,
|
||||
lengthMenu: lengthMenuOptions,
|
||||
scrollX: true,
|
||||
scrollY: "75vh",
|
||||
scrollCollapse: true, // ✅ aide à harmoniser header/body
|
||||
pagingType: "full_numbers",
|
||||
autoWidth: false,
|
||||
searching: true, // ✅ réactive la recherche
|
||||
ordering: false,
|
||||
lengthChange: false,
|
||||
orderMulti: true,
|
||||
fixedHeader: true, // ✅ garde l’entête aligné
|
||||
language: langOptions[codeLangue] || langOptions.fr_FR
|
||||
});
|
||||
|
||||
// Ajuster les colonnes après init
|
||||
dt.columns.adjust().draw();
|
||||
|
||||
// Ajuster encore après un petit délai (utile après Ajax)
|
||||
setTimeout(() => {
|
||||
dt.columns.adjust().draw();
|
||||
}, 200);
|
||||
|
||||
} catch (err) {
|
||||
console.error("Erreur DataTable:", err);
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* MESSAGERIE ET NOTIFICATIONS
|
||||
* Récupère le nombre de messages et déconnecte si session expirée.
|
||||
|
|
@ -1440,45 +1547,71 @@ function enregistrer_avenant()
|
|||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
document.getElementById("formAvenant").submit();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function pop_afficher_selection_retrait()
|
||||
{
|
||||
var div_selection_assure = $('#div_selection_assure');
|
||||
|
||||
div_selection_assure.html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
function pop_afficher_selection_retrait() {
|
||||
const div_selection_assure = $('#div_selection_assure');
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxselectionretrait/",
|
||||
type : 'post',
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
div_selection_assure.html(data);
|
||||
// $('#div_test_gabarit').html(data);
|
||||
},
|
||||
complete: function() {
|
||||
const modal = document.getElementById("popdetailassure");
|
||||
if (modal && modal.parentNode !== document.body) {
|
||||
document.body.appendChild(modal);
|
||||
}
|
||||
// Ouvrir le modal via le bouton caché
|
||||
document.getElementById("btn_pop").click();
|
||||
}
|
||||
});
|
||||
// 1. Affichage du Loader
|
||||
div_selection_assure.html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px; min-height:300px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold text-muted">
|
||||
Chargement de la liste... / Loading list...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
// 2. Appel Ajax
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val() + "Ajaxselectionretrait/",
|
||||
type: 'post',
|
||||
error: function(xhr, status, error) {
|
||||
div_selection_assure.html(`
|
||||
<div class="alert alert-danger m-3">
|
||||
<i class="fas fa-exclamation-circle me-2"></i>
|
||||
Erreur lors du chargement : ${error}
|
||||
<br><small>${xhr.responseText || ''}</small>
|
||||
</div>
|
||||
`);
|
||||
},
|
||||
success: function(data) {
|
||||
// Injection des données
|
||||
div_selection_assure.html(data);
|
||||
|
||||
// 3. Initialisation du DataTable si la table existe
|
||||
const $table = div_selection_assure.find('.tabspeciale');
|
||||
if ($table.length > 0 && $table.find('thead th').length > 0) {
|
||||
try {
|
||||
dataTableSpeciale();
|
||||
} catch (err) {
|
||||
console.error("Erreur DataTable:", err);
|
||||
}
|
||||
} else {
|
||||
console.warn("Table .tabspeciale non trouvée ou mal formée");
|
||||
}
|
||||
},
|
||||
complete: function() {
|
||||
// 4. Gestion propre du Modal
|
||||
const modalEl = document.getElementById("popdetailassure");
|
||||
if (modalEl) {
|
||||
if (modalEl.parentNode !== document.body) {
|
||||
document.body.appendChild(modalEl);
|
||||
}
|
||||
const myModal = bootstrap.Modal.getOrCreateInstance(modalEl);
|
||||
myModal.show();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function beneficiaire_a_retirer(p_choix, p_id_beneficiaire)
|
||||
|
|
@ -5277,3 +5410,566 @@ function ControlerEcheanceRen()
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gère le changement d'état du switch dans le tableau
|
||||
*/
|
||||
function toggleBeneficiaireSelection(checkbox, id) {
|
||||
// On met à jour la valeur interne
|
||||
const newValue = checkbox.checked ? '1' : '0';
|
||||
checkbox.value = newValue;
|
||||
|
||||
// Appel de votre fonction métier existante
|
||||
beneficiaire_a_retirer(newValue, id);
|
||||
|
||||
// Optionnel : On peut ajouter un effet visuel sur la ligne
|
||||
const row = $(checkbox).closest('tr');
|
||||
if (checkbox.checked) {
|
||||
row.addClass('table-info');
|
||||
} else {
|
||||
row.removeClass('table-info');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function lister_dossiers_classiques(filtre)
|
||||
{
|
||||
|
||||
var libelle = "";
|
||||
|
||||
d1 = $("#d1").val();
|
||||
d2 = $("#d2").val();
|
||||
|
||||
codeLangue = $("#codeLangue").val();
|
||||
|
||||
if(filtre=="0"){
|
||||
libelle = "Tous";
|
||||
}else if(filtre=="1"){
|
||||
libelle = "Assurés";
|
||||
}else if(filtre=="2"){
|
||||
libelle = "Polices";
|
||||
}
|
||||
|
||||
if(codeLangue=="en_US")
|
||||
{
|
||||
if(filtre=="0"){
|
||||
libelle = "All";
|
||||
}else if(filtre=="1"){
|
||||
libelle = "Insured";
|
||||
}else if(filtre=="2"){
|
||||
libelle = "Insurance policy";
|
||||
}
|
||||
}
|
||||
|
||||
$("#libelleFiltre").val(libelle);
|
||||
$("#filtre").val(filtre);
|
||||
|
||||
donnees = 'd1='+d1+'&d2='+d2+'&filtre='+filtre;
|
||||
|
||||
$("#div_export_a").html('');
|
||||
|
||||
$("#div_dossiers").html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxfacturesclassiques/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
$("#div_dossiers").html(data);
|
||||
dataTableSpeciale();
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function lister_dossiers_classiques_police()
|
||||
{
|
||||
d1=$("#d1").val();
|
||||
d2=$("#d2").val();
|
||||
|
||||
donnees = 'd1='+d1+'&d2='+d2;
|
||||
|
||||
$("#div_bordereau").html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxdossiersclassiquespolice/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
// $('#div_test_gabarit').html(data);
|
||||
$("#div_dossiers").html(data);
|
||||
dataTableSpeciale();
|
||||
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function lister_dossiers_classiques_export()
|
||||
{
|
||||
//alert("lister_dossiers_classiques_export");
|
||||
//return;
|
||||
|
||||
d1 = $("#d1").val();
|
||||
d2 = $("#d2").val();
|
||||
|
||||
filtre = $("#filtre").val();
|
||||
|
||||
nbLigne = $("#nbLigne").val();
|
||||
|
||||
if(nbLigne==undefined || nbLigne=="0"){
|
||||
v_msg="Aucune données à exporter!";
|
||||
v_msgEng="No data to export!";
|
||||
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
donnees = 'd1='+d1+'&d2='+d2+'&filtre='+filtre;
|
||||
|
||||
$("#div_export_a").html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxfacturesclassiquesexport/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
$("#div_export_a").html(data);
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function consulter_un_bordereau_rbcl(idDossierClassiquePolice)
|
||||
{
|
||||
donnees = 'idDossierClassiquePolice='+idDossierClassiquePolice;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxdossiersclassiquespolice/getcontextbyidbordereau/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
complete: function() {
|
||||
afficher_dossier_classique_police();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function afficher_dossier_classique_police()
|
||||
{
|
||||
window.location.assign($("#racineWeb" ).val()+"Dossierclassiquepolice/");
|
||||
}
|
||||
|
||||
function consulter_dossier_classique(idDossierClassique)
|
||||
{
|
||||
donnees = 'idDossierClassique='+idDossierClassique;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxdossierclassique/getcontextbyid/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
complete: function() {
|
||||
afficher_dossier_classique();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function afficher_dossier_classique()
|
||||
{
|
||||
window.location.assign($("#racineWeb" ).val()+"Dossierclassique/");
|
||||
}
|
||||
|
||||
function listerremboursement()
|
||||
{
|
||||
|
||||
d1 = $("#d1").val();
|
||||
d2 = $("#d2").val();
|
||||
codeStatutPaiement = $("#codeStatutPaiement").val();
|
||||
|
||||
donnees = 'd1='+ d1+'&d2='+d2+'&codeStatutPaiement='+codeStatutPaiement;
|
||||
|
||||
$("#div_dossiers").html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxdemanderemboursement/",
|
||||
type: 'POST',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
// alert(data);
|
||||
|
||||
|
||||
$('#div_dossiers').html(data);
|
||||
},
|
||||
complete: function() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function selectionner_remboursement(idDemande)
|
||||
{
|
||||
donnees = 'idDemande='+idDemande;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxdemanderemboursement/selectionnerremb/",
|
||||
type: 'POST',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
|
||||
},
|
||||
complete: function() {
|
||||
actualiser_remboursement();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function actualiser_remboursement()
|
||||
{
|
||||
window.location.assign($("#racineWeb" ).val()+"Remboursement/");
|
||||
|
||||
}
|
||||
|
||||
|
||||
function valider_remboursement(idDemande){
|
||||
|
||||
$("#div_patienter").html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
donnees = 'idDemande='+idDemande;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxrhvalidationrd/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData){
|
||||
alert("Erreur : "+errorData);
|
||||
},
|
||||
success: function(data) {
|
||||
//alert("Success : "+data);
|
||||
$("#div_patienter").html('');
|
||||
$('#div_validation').html(data);
|
||||
//appliquerDataTable();
|
||||
$('#div_validation').modal("show");
|
||||
|
||||
},
|
||||
complete: function() {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function enregistrer_validation_rd(idDemande){
|
||||
debugger;
|
||||
|
||||
codeStatutPaiement = $("#codeStatutPaiementAjax").val();
|
||||
motifRejetRh = $("#motifRejetRh").val();
|
||||
|
||||
if(codeStatutPaiement == "2"){
|
||||
const msg = "Une décision de validation est obligatoire.";
|
||||
const msgEng = "A validation approval is required.";
|
||||
|
||||
alert_ebene(msg, msgEng);
|
||||
$("#codeStatutPaiementAjax").focus();
|
||||
return;
|
||||
}
|
||||
|
||||
if(codeStatutPaiement=="9" && motifRejetRh <=" "){
|
||||
const msg = "Un motif est obligatoire en cas de refus.";
|
||||
const msgEng = "A reason is required in case of refusal.";
|
||||
|
||||
alert_ebene(msg, msgEng);
|
||||
$("#motifRejetRh").focus();
|
||||
return;
|
||||
}
|
||||
|
||||
donnees = 'idDemande='+idDemande;
|
||||
donnees += '&codeStatutPaiement='+codeStatutPaiement;
|
||||
donnees += '&motifRejetRh='+motifRejetRh;
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxrhvalidationrd/enregistrer/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData){
|
||||
alert("Erreur : "+errorData);
|
||||
},
|
||||
success: function(data) {
|
||||
//alert("Success : "+data);
|
||||
$('#div_validation').modal("hide");
|
||||
},
|
||||
complete: function() {
|
||||
listerremboursement();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function remplacer_adherent()
|
||||
{
|
||||
nbAdh = $("#nbAdh_C").val();
|
||||
codeTypeContrat = $("#codeTypeContrat_C").val();
|
||||
|
||||
if ( (codeTypeContrat!="G") && (nbAdh>0) )
|
||||
{
|
||||
v_msg="Ce n\'est pas une police GROUPE!";
|
||||
v_msgEng="This is not a GROUP policy!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if ($("#idAdherent_C" ).val()<= " ")
|
||||
{
|
||||
v_msg="Veuillez sélectionner une famille!";
|
||||
v_msgEng="Please select a family!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
remplacementAdherent=$("#remplacementAdherent").val();
|
||||
if (remplacementAdherent!="1")
|
||||
{
|
||||
v_msg="Remplacement de famille non actif pour cette police!";
|
||||
v_msgEng="Family replacement inactive for this policy!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
remplace=$("#remplace").val();
|
||||
remplacant=$("#remplacant").val();
|
||||
|
||||
if (remplacant=="1")
|
||||
{
|
||||
if (remplace=="1")
|
||||
{
|
||||
v_msg="Famille déjà remplacée!";
|
||||
v_msgEng="Family already replaced!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
consulter_remplacement_adherent();
|
||||
}
|
||||
else
|
||||
{
|
||||
v_msg="Cette famille en a déjà remplacé une autre, confirmez-vous son remplacement à son tour?";
|
||||
v_msgEng="This family has already replaced another, do you confirm its replacement in turn?";
|
||||
|
||||
if(confirm_ebene(v_msg, v_msgEng))
|
||||
{
|
||||
fiche_remplacer_adherent();
|
||||
}
|
||||
else
|
||||
{
|
||||
consulter_remplacant_adherent();
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
if (remplace=="1")
|
||||
{
|
||||
v_msg="Famille déjà remplacée!";
|
||||
v_msgEng="Family already replaced!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
consulter_remplacement_adherent();
|
||||
}
|
||||
else
|
||||
{
|
||||
fiche_remplacer_adherent();
|
||||
// window.location.assign($("#racineWeb" ).val()+"Remplaceradherent/");
|
||||
}
|
||||
}
|
||||
|
||||
function consulter_remplacement_adherent()
|
||||
{
|
||||
idAdherent = $("#idAdherent_C" ).val();
|
||||
|
||||
if (idAdherent>"0")
|
||||
{
|
||||
window.location.assign($("#racineWeb" ).val()+"Remplaceradherentcons/");
|
||||
}
|
||||
}
|
||||
|
||||
function fiche_remplacer_adherent()
|
||||
{
|
||||
etat=$("#codeEtatPolice_C").val();
|
||||
|
||||
if (etat=="RE")
|
||||
{
|
||||
v_msg="Attention! Police résiliée!";
|
||||
v_msgEng="Warning! Terminated policy!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (etat=="SU")
|
||||
{
|
||||
v_msg="Attention! Police suspendue!";
|
||||
v_msgEng="Warning! Suspended policy!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (etat=="AN")
|
||||
{
|
||||
v_msg="Attention! Police annulée!";
|
||||
v_msgEng="Warning! Canceled policy!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
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"/> <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();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -277,5 +277,113 @@ class Facture extends Modele {
|
|||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getbordereauxrbcl($idPolice, $d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_bordereaux_rbcl(?, ?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idPolice, $d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossiersclassiques($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossiers_classiques(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossiersclassiquesassures($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossiers_classiques_assures(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getbordereauxrbclpolices($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_bordereaux_rbcl_polices(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossiersclassiquesexport($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossiers_classiques_export(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossiersclassiquesassuresexport($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossiers_classiques_assures_export(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getbordereauxrbclpolicesexport($d1, $d2)
|
||||
{
|
||||
$sql = 'call sp_r_get_bordereaux_rbcl_polices_export(?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($d1, $d2));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossierclassiquepolice($idDossierClassiquePolice)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossier_classique_police(?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDossierClassiquePolice));
|
||||
|
||||
return $resultat->fetch(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdlisteossiersclassiquespolice($idDossierClassiquePolice)
|
||||
{
|
||||
$sql = 'call sp_r_get_liste_dossiers_classiques_police(?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDossierClassiquePolice));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getdossierclassique($idDossierClassique)
|
||||
{
|
||||
$sql = 'call sp_r_get_dossier_classique(?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDossierClassique));
|
||||
|
||||
return $resultat->fetch(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getfacturesdossierclassique_total($idDossierClassique)
|
||||
{
|
||||
$sql = 'CALL sp_r_facture_dossier_classique_total(?);';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDossierClassique));
|
||||
|
||||
return $resultat->fetch(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getfacturesdossierclassique($idDossierClassique)
|
||||
{
|
||||
$sql = 'call sp_r_get_factures_dossier_classique(?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDossierClassique));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -217,5 +217,19 @@ class Ged extends Modele {
|
|||
|
||||
$this->executerRequete($sql, array($idGed, $motifSuppression, $user));
|
||||
}
|
||||
|
||||
public function getgedRd()
|
||||
{
|
||||
|
||||
$idDemandeRemboursement = $_SESSION['idDemandeRemboursement'] ?? '0';
|
||||
|
||||
$sql = 'call sp_a_get_ged_adherent_rd(?)';
|
||||
|
||||
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idDemandeRemboursement));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -79,5 +79,39 @@ class Remboursement extends Modele {
|
|||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
}
|
||||
|
||||
public function getstatutpaiementrd()
|
||||
{
|
||||
if (est_anglophone()){
|
||||
$sql = 'call sp_c_get_statut_paiement_rd_eng()';
|
||||
}else{
|
||||
$sql = 'call sp_c_get_statut_paiement_rd()';
|
||||
}
|
||||
|
||||
$resultat = $this->executerRequete($sql);
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
}
|
||||
|
||||
public function getListeDossiersRemboursements($idClient, $d1, $d2, $codeStatutPaiement)
|
||||
{
|
||||
$codeStatutPaiement = contruireParamLike($codeStatutPaiement);
|
||||
|
||||
$sql = 'call sp_c_get_dossiers_remboursement_rd_rh(?, ?, ?, ?)';
|
||||
|
||||
$resultat = $this->executerRequete($sql, array($idClient, $d1, $d2, $codeStatutPaiement));
|
||||
|
||||
return $resultat->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function enregistrerrhvalidationrd($idDemande, $codeStatutPaiement, $motifRejetRh)
|
||||
{
|
||||
$login = $_SESSION['login'];
|
||||
|
||||
$sql = 'call sp_c_validation_remboursement_rd_rh(?, ?, ?, ?)';
|
||||
|
||||
$this->executerRequete($sql, array($idDemande, $codeStatutPaiement, $motifRejetRh, $login));
|
||||
}
|
||||
|
||||
}
|
||||
87
Vue/Ajaxdemanderemboursement/index.php
Executable file
87
Vue/Ajaxdemanderemboursement/index.php
Executable file
|
|
@ -0,0 +1,87 @@
|
|||
<div class="card shadow-sm border-0">
|
||||
<?php if (empty($demandes)): ?>
|
||||
<div class="alert alert-light text-center m-3 border">
|
||||
<i class="fas fa-search me-2 text-muted"></i>
|
||||
<span class="text-secondary"><?= _("Aucune demande ne correspond à vos critères.") ?></span>
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<div class="card-header bg-white py-3 d-flex justify-content-between align-items-center">
|
||||
<h6 class="mb-0 fw-bold text-primary">
|
||||
<i class="fas fa-list-ul me-2"></i><?= _("Résultats de la recherche") ?>
|
||||
</h6>
|
||||
<span class="badge rounded-pill bg-primary px-3">
|
||||
<?= count($demandes) ?> <?= _("demande(s) trouvée(s)") ?>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover align-middle mb-0" style="font-size:8.5pt;">
|
||||
<thead class="table-light border-bottom">
|
||||
<tr>
|
||||
<th class="text-center px-3" width="120"><?= _("N° Demande") ?></th>
|
||||
<th><?= _("Date & Heure") ?></th>
|
||||
<th><?= _("Adhérent / Bénéficiaire") ?></th>
|
||||
<th class="text-center"><?= _("État") ?></th>
|
||||
<th width="20%"><?= _("Motif / Commentaire") ?></th>
|
||||
<th class="text-center"><?= _("Actions") ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($demandes as $v):
|
||||
$idDemande = $this->nettoyer($v['id']);
|
||||
$statusPaiement = $v['codeStatutPaiement'];
|
||||
?>
|
||||
<tr>
|
||||
<td class="text-center px-3">
|
||||
<button class="btn btn-sm btn-light border fw-bold w-100 text-primary shadow-sm"
|
||||
onClick="selectionner_remboursement('<?= $idDemande ?>');">
|
||||
<?= $this->nettoyer($v['numeroDemandeRemboursement']) ?>
|
||||
</button>
|
||||
</td>
|
||||
<td class="text-muted">
|
||||
<i class="far fa-clock me-1"></i>
|
||||
<?= dateheureLang($v['dateSysteme'], $_SESSION['lang']) ?>
|
||||
</td>
|
||||
<td>
|
||||
<div class="fw-bold text-dark"><?= $this->nettoyer($v['beneficiaire']) ?></div>
|
||||
<div class="small text-muted">
|
||||
<i class="fas fa-user-shield me-1"></i> <?= $this->nettoyer($v['adherent']) ?> (<?= $v['numeroAdherent'] ?>)
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
<?php if($statusPaiement == "1"): ?>
|
||||
<span class="badge bg-success-subtle text-success border border-success-subtle rounded-pill px-3">
|
||||
<i class="fas fa-check-circle me-1"></i><?= _("Validée") ?>
|
||||
</span>
|
||||
<?php elseif($statusPaiement == "2"): ?>
|
||||
<span class="badge bg-warning-subtle text-warning-emphasis border border-warning-subtle rounded-pill px-3">
|
||||
<i class="fas fa-hourglass-half me-1"></i><?= _("En attente") ?>
|
||||
</span>
|
||||
<?php else: ?>
|
||||
<span class="badge bg-danger-subtle text-danger border border-danger-subtle rounded-pill px-3">
|
||||
<i class="fas fa-times-circle me-1"></i><?= _("Refusée") ?>
|
||||
</span>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
<td class="text-truncate" style="max-width: 200px;" title="<?= $this->nettoyer($v['motifRejetRh']) ?>">
|
||||
<small class="text-muted italic"><?= $v['motifRejetRh'] ?: '-' ?></small>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
<div class="btn-group shadow-sm">
|
||||
<button class="btn btn-sm btn-primary me-2" title="<?= _("Valider") ?>"
|
||||
onClick="valider_remboursement('<?= $idDemande ?>');">
|
||||
<i class="fas fa-check"></i>
|
||||
</button>
|
||||
<button class="btn btn-sm btn-outline-secondary" title="<?= _("Détails") ?>"
|
||||
onClick="selectionner_remboursement('<?= $idDemande ?>');">
|
||||
<i class="fas fa-eye"></i>
|
||||
</button>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
|
@ -1,118 +1,144 @@
|
|||
<?php
|
||||
$nbFactAntiDate = $this->nettoyer($avenant['nbFactAntiDate']);
|
||||
$nbFactAntiDate = $this->nettoyer($avenant['nbFactAntiDate']);
|
||||
$taxLabel = (isset($_SESSION['composanteprime']['Taxes'])) ? _($_SESSION['composanteprime']['Taxes']) : _("Taxes");
|
||||
?>
|
||||
|
||||
KANE LAZENi
|
||||
<div class="card shadow-sm border-0 mb-4 animate__animated animate__fadeIn">
|
||||
<div class="card-body p-0">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-borderless align-middle mb-0 text-center" style="font-size: 8.5pt;">
|
||||
<thead class="bg-light text-muted text-uppercase" style="font-size: 7.5pt;">
|
||||
<tr>
|
||||
<th class="py-3"><?= _("P. Nette Comm") ?></th>
|
||||
<th class="py-3"><?= _("Comm Courtage") ?></th>
|
||||
<th class="py-3"><?= _("Comm Commerc") ?></th>
|
||||
<th class="py-3"><?= _("Accessoires") ?></th>
|
||||
<th class="py-3 fw-bold text-dark"><?= _("Primes Nettes") ?></th>
|
||||
<th class="py-3"><?= $taxLabel ?></th>
|
||||
<th class="py-3"><?= _("Cartes") ?></th>
|
||||
<th class="py-3 text-primary fw-bold"><?= _("TTC") ?></th>
|
||||
<th class="py-3"><?= _("P. Nette Stat") ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="fw-bold border-bottom">
|
||||
<td><?= format_N($this->nettoyer($avenant['primeNette'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['commission'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['commissionAutre'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['accessoire'])) ?></td>
|
||||
<td class="bg-light-subtle"><?= format_N($this->nettoyer($avenant['primeHt'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['taxe'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['fraisCarte'])) ?></td>
|
||||
<td class="text-primary fs-6"><?= format_N($this->nettoyer($avenant['primeTtcInitial'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['primeNetteStat'])) ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="bg-light p-3 d-flex flex-wrap gap-2 justify-content-center border-top">
|
||||
<button type="button" class="btn btn-outline-info px-4 fw-bold shadow-sm rounded-pill" onclick="pop_afficher_selection_retrait();">
|
||||
<i class="fas fa-user-plus me-2"></i><?= _("Sélectionner Assurés") ?>
|
||||
</button>
|
||||
<button type="button" class="btn btn-danger px-4 fw-bold shadow-sm rounded-pill text-uppercase" onclick="recapituler_retrait();">
|
||||
<i class="fas fa-calculator me-2"></i><?= _("Récapituler") ?>
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary px-4 fw-bold shadow-sm rounded-pill text-uppercase" onclick="enregistrer_retrait();">
|
||||
<i class="fas fa-save me-2"></i><?= _("Enregistrer le retrait") ?>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt; text-align:center'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style='text-align:center'> <?= _("P NETTE DE COMM") ?> </th>
|
||||
<th style='text-align:center'> <?= _("COMM COURTAGE") ?> </th>
|
||||
<th style='text-align:center'> <?= _("COMM COMMERC") ?> </th>
|
||||
<th style='text-align:center'> <?= _("ACCESSOIRES") ?> </th>
|
||||
<th style='text-align:center'> <?= _("PRIMES NETTES") ?> </th>
|
||||
<th style='text-align:center'> <?= (isset($_SESSION['composanteprime']['Taxes'])) ? _($_SESSION['composanteprime']['Taxes']) : _("Taxes") ?> </th>
|
||||
<th style='text-align:center'> <?= _("CARTES") ?> </th>
|
||||
<th style='text-align:center'> <?= _("TTC") ?> </th>
|
||||
<th width="12%" style='text-align:center'> <?= _("P NETTE STAT") ?> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr>
|
||||
<td> <?= format_N($this->nettoyer($avenant['primeNette'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['commission'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['commissionAutre'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['accessoire'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['primeHt'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['taxe'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['fraisCarte'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['primeTtcInitial'])) ?> </td>
|
||||
<td> <?= format_N($this->nettoyer($avenant['primeNetteStat'])) ?> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="3"> <button type="button" style='font-size:10pt;' class="form-control btn btn-info" onclick="javascript:pop_afficher_selection_retrait();" > <?= _("Sélection des assurées à retirer...") ?> </button> </td>
|
||||
|
||||
<td colspan="3"> <input style='font-size:10pt;' class = "form-control btn btn-danger" type="button" value="<?= _("Récapituler") ?>" onClick="javascript:recapituler_retrait();"> </td>
|
||||
|
||||
<td colspan="3"> <input style='font-size:10pt;' class = "form-control btn btn-primary" type="button" value="<?= _("Enregistrer") ?>" onClick="javascript:enregistrer_retrait();"> </td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<?php if ($nbFactAntiDate>1): ?>
|
||||
<div class="alert alert-danger">
|
||||
<H4> <?= "Attention, cette police possède ". $nbFactAntiDate . " factures plus anciennes que la date de retrait!" ?></H4>
|
||||
</div>
|
||||
<?php if ($nbFactAntiDate > 1): ?>
|
||||
<div class="alert alert-custom-danger d-flex align-items-center animate__animated animate__headShake" role="alert">
|
||||
<i class="fas fa-exclamation-triangle fa-2x me-3"></i>
|
||||
<div>
|
||||
<h5 class="alert-heading mb-1 fw-bold"><?= _("Alerte de cohérence") ?></h5>
|
||||
<p class="mb-0"><?= sprintf(_("Attention, cette police possède %d factures plus anciennes que la date de retrait !"), $nbFactAntiDate) ?></p>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<legend> <?= _("DETAIL DES ASSURES A RETIRER") ?> </legend>
|
||||
<div class="d-flex align-items-center justify-content-between mb-3 mt-5">
|
||||
<h5 class="fw-bold text-uppercase mb-0 text-secondary border-start border-4 border-info ps-3">
|
||||
<?= _("Détail des assurés à retirer") ?>
|
||||
</h5>
|
||||
<input type="hidden" id="nbAliment" name="nbAliment" value="<?= $this->nettoyer($avenant['nbAliment']) ?>">
|
||||
<span class="badge bg-info shadow-sm px-3 py-2"><?= _("Effectif") ?> : <?= $this->nettoyer($avenant['nbAliment']) ?></span>
|
||||
</div>
|
||||
|
||||
<INPUT class="sr-only" id="nbAliment" NAME="nbAliment" TYPE="text" value="<?= $this->nettoyer($avenant['nbAliment']) ?>" >
|
||||
<div class="card shadow-sm border-0">
|
||||
<div class="table-responsive shadow-sm rounded border">
|
||||
<table class="table table-hover align-middle mb-0" style="font-size: 8pt; min-width: 1100px;">
|
||||
<thead class="table-dark text-uppercase" style="font-size: 7pt;">
|
||||
<tr class="text-center">
|
||||
<th class="ps-2">Cat</th>
|
||||
<th class="text-start" style="min-width: 150px;"><?= _("Nom & Prénoms") ?></th>
|
||||
<th>Type</th>
|
||||
<th>N°</th>
|
||||
<th>Entrée</th>
|
||||
<th>Durée</th>
|
||||
<th>Ratio</th>
|
||||
<th>S/P</th>
|
||||
<th class="bg-secondary text-white"><?= _("Non Acquise") ?></th>
|
||||
<th class="bg-info text-dark"><?= _("P. Nette Rist") ?></th>
|
||||
<th class="bg-info text-dark"><?= $taxLabel ?></th>
|
||||
<th class="bg-primary text-white"><?= _("TTC Rist") ?></th>
|
||||
<th class="pe-2">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($beneficiaires_sel as $b): ?>
|
||||
<tr class="text-center">
|
||||
<td class="fw-bold text-muted"><?= $this->nettoyer($b['codeProduit']) ?></td>
|
||||
<td class="text-start fw-bold"><?= $this->nettoyer($b['nomBeneficiaire']) ?></td>
|
||||
<td><span class="badge bg-light text-dark border"><?= $this->nettoyer($b['codeLienParente']) ?></span></td>
|
||||
<td class="text-muted small"><?= $this->nettoyer($b['numeroBeneficiaire']) ?></td>
|
||||
<td class="text-nowrap"><?= dateLang($this->nettoyer($b['dateEntree']), $_SESSION['lang']) ?></td>
|
||||
<td><?= $this->nettoyer($b['duree']) ?></td>
|
||||
<td><?= $this->nettoyer($b['ratioNonAcquise']) ?></td>
|
||||
<td><?= $this->nettoyer($b['rapportsp']) ?>%</td>
|
||||
<td class="fw-bold text-danger text-nowrap"><?= format_N($this->nettoyer($b['primeNonAcquise'])) ?></td>
|
||||
<td class="text-nowrap"><?= format_N($this->nettoyer($b['primeHt'])) ?></td>
|
||||
<td class="text-nowrap"><?= format_N($this->nettoyer($b['taxe'])) ?></td>
|
||||
<td class="fw-bold text-primary text-nowrap"><?= format_N($this->nettoyer($b['primeTtc'])) ?></td>
|
||||
<td>
|
||||
<div class="form-check form-switch d-inline-block">
|
||||
<input class="form-check-input" type="checkbox" style="cursor:pointer"
|
||||
<?= ($b['choix'] == '1') ? 'checked' : '' ?>
|
||||
onclick="beneficiaire_a_retirer(this.checked ? '1' : '0', <?= $b['idBeneficiaire_temp'] ?>);">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
<tfoot class="table-light fw-bold">
|
||||
<tr class="text-center">
|
||||
<td colspan="8" class="text-end pe-3 text-uppercase small"><?= _("Totaux") ?></td>
|
||||
<td class="text-danger"><?= format_N($this->nettoyer($avenant['primeNonAcquise'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['primeHt'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($avenant['taxe'])) ?></td>
|
||||
<td class="text-primary fs-6"><?= format_N($this->nettoyer($avenant['primeTtc'])) ?></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:8pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th> <?= _("Cat") ?> </th>
|
||||
<th> <?= _("Nom") ?> </th>
|
||||
<th style='text-align:center'> Type </th>
|
||||
<th style='text-align:center'> <?= _("No") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Entrée") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Durée") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Dur Rist") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ratio") ?> </th>
|
||||
<th style='text-align:center'> <?= _("S/P") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Nette An") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ttc An") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Non Acquise") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Nette Rist") ?> </th>
|
||||
<th style='text-align:center'> <?= (isset($_SESSION['composanteprime']['Taxes'])) ? _($_SESSION['composanteprime']['Taxes']) : _("Taxes") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ttc Rist") ?> </th>
|
||||
<th width="5%" style='text-align:center'> <?= _("Choix") ?> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td colspan="2" style='text-align:center'> <?= _("Nbre assurés à retirer") . " : " . $this->nettoyer($avenant['nbAliment']) ?> </td>
|
||||
<td colspan="9" style='text-align:center'> Total </td>
|
||||
<td align='center'><?= format_N($this->nettoyer($avenant['primeNonAcquise'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($avenant['primeHt'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($avenant['taxe'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($avenant['primeTtc'])) ?></td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($beneficiaires_sel as $beneficiaire_sel):?>
|
||||
<tr valign="top">
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['codeProduit']) ?></td>
|
||||
<td><?= $this->nettoyer($beneficiaire_sel['nomBeneficiaire']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['codeLienParente']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['numeroBeneficiaire']) ?></td>
|
||||
<td align='center'><?= dateLang($this->nettoyer($beneficiaire_sel['dateEntree']), $_SESSION['lang']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['duree']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['duree_non_acquise']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['ratioNonAcquise']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire_sel['rapportsp']) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['primeNetteStat_an'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['primeTtc_an'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['primeNonAcquise'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['primeHt'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['taxe'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire_sel['primeTtc'])) ?></td>
|
||||
|
||||
<?php if($beneficiaire_sel['choix']=='1'): ?>
|
||||
<td align='center'> <input type="checkbox" checked value="<?= $beneficiaire_sel['choix'] ?>" onClick="javascript:if(this.value=='1'){this.value='0'}else{this.value='1'};beneficiaire_a_retirer(this.value, <?= $beneficiaire_sel['idBeneficiaire_temp'] ?>);"></td>
|
||||
<?php else: ?>
|
||||
<td align='center'> <input type="checkbox" value="<?= $beneficiaire_sel['choix'] ?>" onClick="javascript:if(this.value=='1'){this.value='0'}else{this.value='1'};beneficiaire_a_retirer(this.value, <?= $beneficiaire_sel['idBeneficiaire_temp'] ?>);"></td>
|
||||
<?php endif; ?>
|
||||
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
<style>
|
||||
/* Design Alertes */
|
||||
.alert-custom-danger { background-color: #fff5f5; border-left: 5px solid #dc3545; color: #842029; box-shadow: 0 2px 10px rgba(220, 53, 69, 0.1); }
|
||||
|
||||
/* Boutons et Inputs */
|
||||
.custom-switch { cursor: pointer; width: 2.5em !important; height: 1.25em !important; }
|
||||
.custom-switch:checked { background-color: #0d6efd; border-color: #0d6efd; }
|
||||
|
||||
/* Table Styling */
|
||||
.table-hover tbody tr:hover { background-color: rgba(13, 110, 253, 0.05); }
|
||||
.shadow-sm { box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important; }
|
||||
|
||||
/* Badge contextuel */
|
||||
.bg-light-subtle { background-color: #f8f9fa; }
|
||||
</style>
|
||||
56
Vue/Ajaxdossiersclassiquespolice/index.php
Executable file
56
Vue/Ajaxdossiersclassiquespolice/index.php
Executable file
|
|
@ -0,0 +1,56 @@
|
|||
<div class="table-responsive">
|
||||
<table class="table table-striped table-bordered table-hover align-middle shadow-sm tabspeciale compact" style="font-size:8.5pt; width:100%;">
|
||||
<thead class="text-nowrap">
|
||||
<tr>
|
||||
<th class="text-center"><?= _("Réclamation") ?></th>
|
||||
<th class="text-center"><?= _("Système") ?></th>
|
||||
<th class="text-center"><?= _("ID Bord") ?></th>
|
||||
<th class="text-center"><?= _("Nb Dos") ?></th>
|
||||
<th class="text-center"><?= _("Nb Fact") ?></th>
|
||||
<th class="text-center"><?= _("Réclamé") ?></th>
|
||||
<th class="text-center"><?= _("Rejet") ?></th>
|
||||
<th class="text-center"><?= _("Exclu") ?></th>
|
||||
<th class="text-center"><?= _("Base") ?></th>
|
||||
<th class="text-center"><?= _("T M") ?></th>
|
||||
<th class="text-center fw-bold text-info"><?= _("A Remb") ?></th>
|
||||
<th class="text-center"><?= _("Dépass") ?></th>
|
||||
<th class="text-center"><?= _("Retenu") ?></th>
|
||||
<th class="text-center"><?= _("Règlement") ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($bordereauxrbcl as $bordereaurbcl):
|
||||
$idDossierClassiquePolice = $this->nettoyer($bordereaurbcl['idDossierClassiquePolice']);
|
||||
?>
|
||||
<tr class="text-nowrap text-center">
|
||||
<td><?= dateLang($this->nettoyer($bordereaurbcl['dateReclamation']), $_SESSION['lang']) ?></td>
|
||||
<td class="text-muted small"><?= dateheureLang($this->nettoyer($bordereaurbcl['dateSysteme']), $_SESSION['lang']) ?></td>
|
||||
|
||||
<td>
|
||||
<button type="button" class="btn btn-sm btn-primary rounded-pill px-3 fw-bold shadow-sm"
|
||||
onclick="consulter_un_bordereau_rbcl('<?= $idDossierClassiquePolice ?>');">
|
||||
<i class="fas fa-search me-1"></i> <?= $idDossierClassiquePolice ?>
|
||||
</button>
|
||||
</td>
|
||||
|
||||
<td><?= format_N($this->nettoyer($bordereaurbcl['nbDossier'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($bordereaurbcl['ndFacture'])) ?></td>
|
||||
<td class="fw-bold"><?= format_N($this->nettoyer($bordereaurbcl['fraisReel'])) ?></td>
|
||||
|
||||
<td class="text-danger fw-bold"><?= format_N($this->nettoyer($bordereaurbcl['montantRejete'])) ?></td>
|
||||
<td class="text-danger"><?= format_N($this->nettoyer($bordereaurbcl['exclusion'])) ?></td>
|
||||
|
||||
<td><?= format_N($this->nettoyer($bordereaurbcl['baseRemboursement'])) ?></td>
|
||||
|
||||
<td class="text-danger"><?= format_N($this->nettoyer($bordereaurbcl['montantTm'])) ?></td>
|
||||
<td class="text-primary fw-bold fs-6"><?= format_N($this->nettoyer($bordereaurbcl['montantArembourser'])) ?></td>
|
||||
<td class="text-danger small"><?= format_N($this->nettoyer($bordereaurbcl['depassementLimite'])) ?></td>
|
||||
|
||||
<td class="fw-bold"><?= format_N($this->nettoyer($bordereaurbcl['fraisRetenu'])) ?></td>
|
||||
<td><span class="badge bg-light text-dark border"><?= dateLang($this->nettoyer($bordereaurbcl['dateReglement']), $_SESSION['lang']) ?></span></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
112
Vue/Ajaxfacturesclassiques/index.php
Executable file
112
Vue/Ajaxfacturesclassiques/index.php
Executable file
|
|
@ -0,0 +1,112 @@
|
|||
<input id="nbLigne" name="nbLigne" class="visually-hidden" type="text" value="<?= count($dossiers) ?>">
|
||||
<?php if($filtre == "2"): ?>
|
||||
<div class="table-responsive shadow-sm rounded border bg-white p-2">
|
||||
<table class="table table-hover table-striped align-middle mb-0 tabspeciale compact" style="font-size:8.5pt; width:100%;">
|
||||
<thead class="text-nowrap">
|
||||
<tr>
|
||||
<th class="text-center"><?= _("Réclamation") ?></th>
|
||||
<th class="text-center"><?= _("Système") ?></th>
|
||||
<th class="text-center"><?= _("ID Bord") ?></th>
|
||||
<th class="text-center"><?= _("Nb Dos") ?></th>
|
||||
<th class="text-center"><?= _("Nb Fact") ?></th>
|
||||
<th class="text-center"><?= _("Réclamé") ?></th>
|
||||
<th class="text-center text-warning"><?= _("Rejet") ?></th>
|
||||
<th class="text-center text-warning"><?= _("Exclu") ?></th>
|
||||
<th class="text-center"><?= _("Base") ?></th>
|
||||
<th class="text-center text-warning"><?= _("T M") ?></th>
|
||||
<th class="text-center text-info"><?= _("A Remb") ?></th>
|
||||
<th class="text-center text-warning"><?= _("Dépass") ?></th>
|
||||
<th class="text-center"><?= _("Retenu") ?></th>
|
||||
<th class="text-center"><?= _("Règlement") ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($dossiers as $dossier):
|
||||
$idBord = $this->nettoyer($dossier['idDossierClassiquePolice']);
|
||||
?>
|
||||
<tr class="text-nowrap text-center">
|
||||
<td><?= dateLang($this->nettoyer($dossier['dateReclamation']), $_SESSION['lang']) ?></td>
|
||||
<td class="small text-muted"><?= dateheureLang($this->nettoyer($dossier['dateSysteme'], $_SESSION['lang'])) ?></td>
|
||||
<td>
|
||||
<button type="button" class="btn btn-sm btn-primary rounded-pill px-3 shadow-sm"
|
||||
onclick="consulter_un_bordereau_rbcl('<?= $idBord ?>');">
|
||||
<i class="fas fa-file-invoice me-1"></i> <?= $idBord ?>
|
||||
</button>
|
||||
</td>
|
||||
<td><?= format_N($this->nettoyer($dossier['nbDossier'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($dossier['ndFacture'])) ?></td>
|
||||
<td class="fw-bold"><?= format_N($this->nettoyer($dossier['fraisReel'])) ?></td>
|
||||
<td class="text-danger fw-bold"><?= format_N($this->nettoyer($dossier['montantRejete'])) ?></td>
|
||||
<td class="text-danger"><?= format_N($this->nettoyer($dossier['exclusion'])) ?></td>
|
||||
<td><?= format_N($this->nettoyer($dossier['baseRemboursement'])) ?></td>
|
||||
<td class="text-danger"><?= format_N($this->nettoyer($dossier['montantTm'])) ?></td>
|
||||
<td class="text-primary fw-bold fs-6"><?= format_N($this->nettoyer($dossier['montantArembourser'])) ?></td>
|
||||
<td class="text-danger small"><?= format_N($this->nettoyer($dossier['depassementLimite'])) ?></td>
|
||||
<td class="fw-bold"><?= format_N($this->nettoyer($dossier['fraisRetenu'])) ?></td>
|
||||
<td><span class="badge bg-light text-dark border"><?= dateLang($this->nettoyer($dossier['dateReglement']), $_SESSION['lang']) ?></span></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<?php else: ?>
|
||||
<div class="table-responsive shadow-sm rounded border bg-white p-2">
|
||||
<table class="table table-hover table-striped align-middle mb-0 tabspeciale compact" style="font-size:8.5pt; width:100%;">
|
||||
<thead class="text-nowrap">
|
||||
<tr>
|
||||
<th>Date</th>
|
||||
<th><?= _("Saisie") ?></th>
|
||||
<th><?= _("Prestataire") ?></th>
|
||||
<th><?= _("ID Dossier") ?></th>
|
||||
<th><?= _("Nb Fact") ?></th>
|
||||
<th class="text-center"><?= _("Réclamé") ?></th>
|
||||
<th class="text-center text-warning"><?= _("Rejet") ?></th>
|
||||
<th class="text-center"><?= _("A Remb") ?></th>
|
||||
<th class="text-center text-warning"><?= _("Dépass") ?></th>
|
||||
<th class="text-center"><?= _("Retenu") ?></th>
|
||||
<th class="text-center"><?= _("Règlement") ?></th>
|
||||
<th class="text-center"><?= _("ID Bord") ?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($dossiers as $dossier):
|
||||
$idDoss = $this->nettoyer($dossier['idDossierClassique']);
|
||||
$idBord = $this->nettoyer($dossier['idDossierClassiquePolice']);
|
||||
$hasBord = ($idBord > "0");
|
||||
?>
|
||||
<tr class="text-nowrap <?= $hasBord ? 'table-warning-subtle' : '' ?>">
|
||||
<td class="text-center"><?= dateLang($this->nettoyer($dossier['dateConsultation']), $_SESSION['lang']) ?></td>
|
||||
<td class="text-center small text-muted"><?= dateheureLang($this->nettoyer($dossier['dateSysteme']), $_SESSION['lang']) ?></td>
|
||||
<td class="small"><?= $this->nettoyer($dossier['prestataireConsultation']) ?></td>
|
||||
<td class="text-center">
|
||||
<?php if(!$hasBord): ?>
|
||||
<button type="button" class="btn btn-xs btn-outline-primary fw-bold" onclick="consulter_dossier_classique('<?= $idDoss ?>');">
|
||||
<?= $idDoss ?>
|
||||
</button>
|
||||
<?php else: ?>
|
||||
<span class="fw-bold text-muted"><?= $idDoss ?></span>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
<td class="text-center"><?= format_N($this->nettoyer($dossier['ndFacture'])) ?></td>
|
||||
<td class="text-center fw-bold"><?= format_N($this->nettoyer($dossier['fraisReel'])) ?></td>
|
||||
<td class="text-center text-danger"><?= format_N($this->nettoyer($dossier['montantRejete'])) ?></td>
|
||||
<td class="text-center text-primary fw-bold"><?= format_N($this->nettoyer($dossier['montantArembourser'])) ?></td>
|
||||
<td class="text-center text-danger small"><?= format_N($this->nettoyer($dossier['depassementLimite'])) ?></td>
|
||||
<td class="text-center fw-bold"><?= format_N($this->nettoyer($dossier['fraisRetenu'])) ?></td>
|
||||
<td class="text-center small"><?= dateLang($this->nettoyer($dossier['dateReglement']), $_SESSION['lang']) ?></td>
|
||||
<td class="text-center">
|
||||
<?php if($hasBord): ?>
|
||||
<button type="button" class="btn btn-xs btn-primary rounded-pill" onclick="consulter_un_bordereau_rbcl('<?= $idBord ?>');">
|
||||
<?= $idBord ?>
|
||||
</button>
|
||||
<?php else: ?>
|
||||
<span class="text-muted small">--</span>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
|
||||
<input type="hidden" id="datejour_C" name="datejour_C" value="<?= $this->datejour ?>">
|
||||
<input type="hidden" id="heuresysteme_C" name="heuresysteme_C" value="<?= $this->heuresysteme ?>">
|
||||
<input type="hidden" id="datejourfr_C" name="datejourfr_C" class="datepicker" value="<?= $this->datejourfr ?>">
|
||||
<input type="hidden" id="datejourfr_C" name="datejourfr_C" class="datepicker" value="<?= dateLang($this->datejour, $_SESSION['lang']); ?>">
|
||||
<input type="hidden" id="heuresystemefr_C" name="heuresystemefr_C" class="datepicker" value="<?= $this->heuresystemefr ?>">
|
||||
|
||||
<input type="hidden" id="dUneSemaineAvant_C" name="dUneSemaineAvant_C" value="<?= $_SESSION['dUneSemaineAvant_C'] ?? '' ?>">
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
3
Vue/Ajaxremplaceradherent/index.php
Normal file
3
Vue/Ajaxremplaceradherent/index.php
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<div id="div_remplacement_adherent">
|
||||
NOTHING
|
||||
</div>
|
||||
159
Vue/Ajaxremplaceradherent/init.php
Normal file
159
Vue/Ajaxremplaceradherent/init.php
Normal 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>
|
||||
85
Vue/Ajaxrhvalidationrd/index.php
Executable file
85
Vue/Ajaxrhvalidationrd/index.php
Executable file
|
|
@ -0,0 +1,85 @@
|
|||
<?php
|
||||
$idDemande = $this->nettoyer($demande['id']);
|
||||
$numeroDemandeRemboursement = $this->nettoyer($demande['numeroDemandeRemboursement']);
|
||||
$codeEtatDemandeRemboursement = $this->nettoyer($demande['codeEtatDemandeRemboursement']);
|
||||
$lien = $this->nettoyer($demande['lien']);
|
||||
$numeroBeneficiaire = $this->nettoyer($demande['numeroBeneficiaire']);
|
||||
$observation = $this->nettoyer($demande['observation']);
|
||||
$codeStatutPaiement = $this->nettoyer($demande['codeStatutPaiement']);
|
||||
$beneficiaire = $this->nettoyer($demande['beneficiaire']);
|
||||
$adherent = $this->nettoyer($demande['adherent']);
|
||||
$numeroAdherent = $this->nettoyer($demande['numeroAdherent']);
|
||||
$idPolice = $this->nettoyer($demande['idPolice']);
|
||||
$numeroPolice = $this->nettoyer($demande['numeroPolice']);
|
||||
|
||||
if (est_anglophone()){
|
||||
$lien = $this->nettoyer($demande['lienEng']);
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="modal-dialog modal-lg" role="document">
|
||||
<div class="modal-content shadow-lg border-0">
|
||||
<div class="modal-header bg-light border-bottom">
|
||||
<h5 class="modal-title fw-bold text-primary">
|
||||
<i class="fas fa-check-circle me-2"></i><?= _('Valider une demande') ?>
|
||||
</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
|
||||
<div class="modal-body p-4">
|
||||
<div id="div_motif">
|
||||
<div class="mb-4">
|
||||
<label class="form-label small fw-bold text-muted text-uppercase"><?= _("Référence de la demande") ?></label>
|
||||
<div class="input-group shadow-sm">
|
||||
<span class="input-group-text bg-white"><i class="fas fa-hashtag text-primary"></i></span>
|
||||
<input class="form-control fw-bold bg-white" type="text" value="<?= $numeroDemandeRemboursement; ?>" readonly>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row g-3 mb-4">
|
||||
<div class="col-md-6">
|
||||
<label class="form-label small fw-bold text-muted text-uppercase"><?= _("Titulaire (Adhérent)") ?></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text bg-light"><i class="fas fa-user-shield"></i></span>
|
||||
<input class="form-control small" type="text" value="<?= $adherent." (".$numeroAdherent.")"; ?>" readonly>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<label class="form-label small fw-bold text-muted text-uppercase"><?= _("Patient (Bénéficiaire)") ?></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text bg-light"><i class="fas fa-user"></i></span>
|
||||
<input class="form-control small" type="text" value="<?= $beneficiaire." (".$numeroBeneficiaire.")"; ?>" readonly>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="text-muted opacity-25">
|
||||
|
||||
<div class="row g-3">
|
||||
<div class="col-12">
|
||||
<label class="form-label fw-bold"><?= _("Décision de validation") ?> <span class="text-danger">*</span></label>
|
||||
<select class="form-select border-primary" id="codeStatutPaiementAjax" name="codeStatutPaiementAjax">
|
||||
<?php liste_options($reponsedemande, $codeStatutPaiement); ?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label class="form-label fw-bold"><?= _("Motif ou Observation") ?></label>
|
||||
<textarea class="form-control"
|
||||
placeholder="<?= _("Saisissez ici le motif (obligatoire en cas de refus)..."); ?>"
|
||||
name="motifRejetRh"
|
||||
id="motifRejetRh"
|
||||
rows="4"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer bg-light">
|
||||
<button type="button" class="btn btn-outline-secondary px-4" data-bs-dismiss="modal"><?= _("Annuler") ?></button>
|
||||
<button type="button" class="btn btn-primary px-5 shadow" onClick="javascript:enregistrer_validation_rd(<?= $idDemande ?>);">
|
||||
<i class="fas fa-save me-2"></i><?= _("Enregistrer la décision") ?>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1,51 +1,80 @@
|
|||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:8pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th> <?= _("Cat") ?> </th>
|
||||
<th> <?= _("Nom") ?> </th>
|
||||
<th style='text-align:center'> Type </th>
|
||||
<th style='text-align:center'> <?= _("No") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Entrée") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Durée") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Dur Rist") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ratio") ?> </th>
|
||||
<th style='text-align:center'> <?= _("S/P") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Nette An") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ttc An") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Non Acquise") ?> </th>
|
||||
<th style='text-align:center'> <?= _("P Nette Rist") ?> </th>
|
||||
<th style='text-align:center'> <?= (isset($_SESSION['composanteprime']['Taxes'])) ? _($_SESSION['composanteprime']['Taxes']) : _("Taxes") ?> </th>
|
||||
<th style='text-align:center'> <?= _("Ttc Rist") ?> </th>
|
||||
<th width="5%" style='text-align:center'> <?= _("Choix") ?> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<?php
|
||||
$taxLabel = (isset($_SESSION['composanteprime']['Taxes'])) ? _($_SESSION['composanteprime']['Taxes']) : _("Taxes");
|
||||
?>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($beneficiaires as $beneficiaire):?>
|
||||
<tr valign="top">
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['codeProduit']) ?></td>
|
||||
<td><?= $this->nettoyer($beneficiaire['nomBeneficiaire']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['codeLienParente']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['numeroBeneficiaire']) ?></td>
|
||||
<td align='center'><?= dateLang($this->nettoyer($beneficiaire['dateEntree']), $_SESSION['lang']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['duree']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['duree_non_acquise']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['ratioNonAcquise']) ?></td>
|
||||
<td align='center'><?= $this->nettoyer($beneficiaire['rapportsp']) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['primeNetteStat_an'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['primeTtc_an'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['primeNonAcquise'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['primeHt'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['taxe'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($beneficiaire['primeTtc'])) ?></td>
|
||||
|
||||
<?php if($beneficiaire['choix']=='1'): ?>
|
||||
<td align='center'> <input type="checkbox" checked value="<?= $beneficiaire['choix'] ?>" onClick="javascript:if(this.value=='1'){this.value='0'}else{this.value='1'};beneficiaire_a_retirer(this.value, <?= $beneficiaire['idBeneficiaire_temp'] ?>);"></td>
|
||||
<?php else: ?>
|
||||
<td align='center'> <input type="checkbox" value="<?= $beneficiaire['choix'] ?>" onClick="javascript:if(this.value=='1'){this.value='0'}else{this.value='1'};beneficiaire_a_retirer(this.value, <?= $beneficiaire['idBeneficiaire_temp'] ?>);"></td>
|
||||
<?php endif; ?>
|
||||
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-bordered table-hover align-middle mb-0 tabspeciale compact" style="font-size:8pt; width:100%;">
|
||||
<thead class="text-nowrap">
|
||||
<tr>
|
||||
<th class="text-center small"><?= _("Cat") ?></th>
|
||||
<th class="text-start"><?= _("Nom") ?></th>
|
||||
<th class="text-center">Type</th>
|
||||
<th class="text-center">No</th>
|
||||
<th class="text-center"><?= _("Entrée") ?></th>
|
||||
<th class="text-center"><?= _("Durée") ?></th>
|
||||
<th class="text-center"><?= _("Durée Rist") ?></th>
|
||||
<th class="text-center"><?= _("Ratio") ?></th>
|
||||
<th class="text-center"><?= _("S/P") ?></th>
|
||||
<th class="text-center"><?= _("P Nette An") ?></th>
|
||||
<th class="text-center"><?= _("Ttc An") ?></th>
|
||||
<th class="text-center fw-bold text-danger"><?= _("P Non Acquise") ?></th>
|
||||
<th class="text-center"><?= _("P Nette Rist") ?></th>
|
||||
<th class="text-center"><?= $taxLabel ?></th>
|
||||
<th class="text-center fw-bold text-primary"><?= _("Ttc Rist") ?></th>
|
||||
<th class="text-center" width="8%">
|
||||
<button id="toggleAll" class="btn btn-sm btn-outline-primary fw-bold">
|
||||
<?= _("Tout") ?>
|
||||
</button>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($beneficiaires as $beneficiaire): ?>
|
||||
<tr class="text-nowrap">
|
||||
<td class="text-center small"><?= $this->nettoyer($beneficiaire['codeProduit']) ?></td>
|
||||
<td class="text-start fw-bold"><?= $this->nettoyer($beneficiaire['nomBeneficiaire']) ?></td>
|
||||
<td class="text-center small"><?= $this->nettoyer($beneficiaire['codeLienParente']) ?></td>
|
||||
<td class="text-center text-muted"><?= $this->nettoyer($beneficiaire['numeroBeneficiaire']) ?></td>
|
||||
<td class="text-center"><?= dateLang($this->nettoyer($beneficiaire['dateEntree']), $_SESSION['lang']) ?></td>
|
||||
<td class="text-center"><?= $this->nettoyer($beneficiaire['duree']) ?></td>
|
||||
<td class="text-center"><?= $this->nettoyer($beneficiaire['duree_non_acquise']) ?></td>
|
||||
<td class="text-center"><?= $this->nettoyer($beneficiaire['ratioNonAcquise']) ?></td>
|
||||
<td class="text-center"><?= $this->nettoyer($beneficiaire['rapportsp']) ?>%</td>
|
||||
<td class="text-center"><?= format_N($this->nettoyer($beneficiaire['primeNetteStat_an'])) ?></td>
|
||||
<td class="text-center"><?= format_N($this->nettoyer($beneficiaire['primeTtc_an'])) ?></td>
|
||||
<td class="text-center fw-bold text-danger"><?= format_N($this->nettoyer($beneficiaire['primeNonAcquise'])) ?></td>
|
||||
<td class="text-center"><?= format_N($this->nettoyer($beneficiaire['primeHt'])) ?></td>
|
||||
<td class="text-center"><?= format_N($this->nettoyer($beneficiaire['taxe'])) ?></td>
|
||||
<td class="text-center fw-bold text-primary"><?= format_N($this->nettoyer($beneficiaire['primeTtc'])) ?></td>
|
||||
|
||||
<td class="text-center">
|
||||
<div class="form-check form-switch d-inline-block">
|
||||
<input class="form-check-input beneficiaire-check" type="checkbox"
|
||||
value="<?= ($beneficiaire['choix'] == '1') ? '1' : '0' ?>"
|
||||
<?= ($beneficiaire['choix'] == '1') ? 'checked' : '' ?>
|
||||
onchange="toggleBeneficiaireSelection(this, <?= $beneficiaire['idBeneficiaire_temp'] ?>);">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// Quand on clique sur la case "Tout"
|
||||
$(document).on('click', '#toggleAll', function() {
|
||||
const allChecked = $('.beneficiaire-check').length === $('.beneficiaire-check:checked').length;
|
||||
const newState = !allChecked; // si tout est coché, on décoche; sinon on coche
|
||||
|
||||
$('.beneficiaire-check').each(function() {
|
||||
$(this).prop('checked', newState);
|
||||
this.value = newState ? '1' : '0';
|
||||
beneficiaire_a_retirer(this.value, $(this).data('id'));
|
||||
});
|
||||
|
||||
// Mettre à jour le texte du bouton
|
||||
$(this).text(newState ? "Tout désélectionner" : "Tout sélectionner");
|
||||
});
|
||||
|
||||
</script>
|
||||
|
|
@ -45,7 +45,7 @@
|
|||
<INPUT class="sr-only" TYPE="text" id="primeArchive" name="primeArchive" value="<?= $adherent['primeArchive'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="remplacementAdherent" name="remplacementAdherent" value="<?= $adherent['remplacementAdherent'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="remplace" name="remplace" value="<?= $adherent['remplace'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="remplacant" name="remplace" value="<?= $adherent['remplacant'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="remplacant" name="remplacant" value="<?= $adherent['remplacant'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="idApporteur" name="idApporteur" value="<?= $idApporteur ?>" >
|
||||
|
||||
<div id="div_adherent" class="container-fluid py-1 animate__animated animate__fadeIn">
|
||||
|
|
|
|||
|
|
@ -1,94 +1,141 @@
|
|||
<?php
|
||||
$this->titre = "INTER-SANTE - Récap résiliation";
|
||||
$nbFactAntiDate = $this->nettoyer($avenant['nbFactAntiDate']);
|
||||
$this->titre = "INTER-SANTE - Récap résiliation";
|
||||
$nbFactAntiDate = $this->nettoyer($avenant['nbFactAntiDate']);
|
||||
?>
|
||||
|
||||
<INPUT class="sr-only" id="tauxRistourne" NAME="tauxRistourne" TYPE="text" value="<?= $this->nettoyer($avenant['tauxRistourne']) ?>" >
|
||||
<button type="button" style='font-size:10pt;' class="sr-only" onclick="javascript:appliquer_taux_ristourne();" > </button>
|
||||
|
||||
<button id="btn_pop" NAME="btn_pop" type="button" class="sr-only" data-bs-toggle="modal" data-bs-target="#popdetailassure"> </button>
|
||||
|
||||
<legend> <?= _("RECAPITULATIF RETRAIT ASSURES DE LA POLICE") . " : " . $this->nettoyer($_SESSION['numeroPolice_C'])?> </legend>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt; text-align:center'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="16%" style='text-align:center'> <?= _("Date Effet Police") ?> </th>
|
||||
<th width="16%" style='text-align:center'> <?= _("Date Echéance Police") ?> </th>
|
||||
<th width="16%" style='text-align:center'> <?= _("Durée Police") ?> </th>
|
||||
|
||||
<th width="16%" style='text-align:center'> <?= _("Date Effet Avenant") ?> </th>
|
||||
<th width="16%" style='text-align:center'> <?= _("Date Echéance Avenant") ?> </th>
|
||||
<th width="20%" style='text-align:center'> <?= _("Durée Avenant") ?> </th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td> <?= dateLang($this->nettoyer($emission['dateEffet']), $_SESSION['lang']) ?> </td>
|
||||
<td> <?= dateLang($this->nettoyer($emission['dateEcheance']), $_SESSION['lang']) ?> </td>
|
||||
<td> <?= $this->nettoyer($emission['dureePolice']) ?> </td>
|
||||
|
||||
<td> <?= dateLang($this->nettoyer($avenant['dateEffet']), $_SESSION['lang']) ?> </td>
|
||||
<td> <?= dateLang($this->nettoyer($avenant['dateEcheance']), $_SESSION['lang']) ?> </td>
|
||||
<td> <?= $this->nettoyer($avenant['dureeAvenant']) ?> </td>
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt; text-align:center'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="20%" style='text-align:center'> <?= _("Primes Totales") ?> </th>
|
||||
<th width="20%" style='text-align:center'> <?= _("Primes Acquises") ?> </th>
|
||||
<th width="20%" style='text-align:center'> <?= _("Consommations") ?> </th>
|
||||
<th width="20%" style='text-align:center'> <?= _("Rapport S/P") ?> </th>
|
||||
<th width="20%" style='text-align:center'> TOTAL </th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<tr>
|
||||
<td> <?= format_N($this->nettoyer($sppolice['primestat'])) ?> </td>
|
||||
|
||||
<td> <?= format_N($this->nettoyer($sppolice['prime_acquise'])) ?> </td>
|
||||
|
||||
<td> <?= format_N($this->nettoyer($sppolice['consommation'])) ?> </td>
|
||||
|
||||
<td> <?= $this->nettoyer($sppolice['rapportsp']) ?> </td>
|
||||
|
||||
<td> <?= $this->nettoyer($sppolice['tauxRistourne']) ?> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<legend> <?= _("DETAIL PRIMES A RISTOURNER") ?> </legend>
|
||||
|
||||
<div id="div_assure_a_retirer">
|
||||
<?php include 'Vue/Ajaxdetailretrait/index.php'; ?>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="modal fade modal-office" id="popdetailassure" role="dialog" data-bs-backdrop="static" data-bs-keyboard="false">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content modal-office">
|
||||
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="popdetailassureLabel"><?= _("Détail retrait") ?></h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="<?= _("Fermer") ?>"></button>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<div id="div_selection_assure"></div>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal"><?= _("Fermer") ?></button>
|
||||
</div>
|
||||
<input type="hidden" id="tauxRistourne" name="tauxRistourne" value="<?= $this->nettoyer($avenant['tauxRistourne']) ?>">
|
||||
<button id="btn_pop" name="btn_pop" type="button" class="visually-hidden" data-bs-toggle="modal" data-bs-target="#popdetailassure"></button>
|
||||
|
||||
<div id="div_liste" class="container-fluid py-4 animate__animated animate__fadeIn">
|
||||
|
||||
<div class="d-flex align-items-center mb-4">
|
||||
<div class="bg-primary text-white p-3 rounded-3 shadow-sm me-3">
|
||||
<i class="fas fa-file-contract fa-2x"></i>
|
||||
</div>
|
||||
<div>
|
||||
<h1 class="mb-0 fw-bold text-uppercase text-primary"><?= _("Récapitulatif Retrait Assurés") ?></h1>
|
||||
<p class="text-muted mb-0"><?= _("Police N°") ?> <span class="badge bg-dark fs-6"><?= $this->nettoyer($_SESSION['numeroPolice_C']) ?></span></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row g-4 mb-4">
|
||||
<div class="col-md-6">
|
||||
<div class="card border-0 shadow-sm h-100">
|
||||
<div class="card-header bg-primary bg-opacity-10 border-0 py-3">
|
||||
<h6 class="card-title mb-0 fw-bold text-primary"><i class="fas fa-shield-alt me-2"></i><?= _("Informations Police") ?></h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row text-center">
|
||||
<div class="col-4 border-end">
|
||||
<label class="small text-muted d-block"><?= _("Effet") ?></label>
|
||||
<span class="fw-bold"><?= dateLang($this->nettoyer($emission['dateEffet']), $_SESSION['lang']) ?></span>
|
||||
</div>
|
||||
<div class="col-4 border-end">
|
||||
<label class="small text-muted d-block"><?= _("Échéance") ?></label>
|
||||
<span class="fw-bold"><?= dateLang($this->nettoyer($emission['dateEcheance']), $_SESSION['lang']) ?></span>
|
||||
</div>
|
||||
<div class="col-4">
|
||||
<label class="small text-muted d-block"><?= _("Durée") ?></label>
|
||||
<span class="badge bg-primary"><?= $this->nettoyer($emission['dureePolice']) ?> <?= _("Jours") ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="card border-0 shadow-sm h-100">
|
||||
<div class="card-header bg-warning bg-opacity-10 border-0 py-3">
|
||||
<h6 class="card-title mb-0 fw-bold text-warning"><i class="fas fa-calendar-check me-2"></i><?= _("Informations Avenant") ?></h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row text-center">
|
||||
<div class="col-4 border-end">
|
||||
<label class="small text-muted d-block"><?= _("Effet") ?></label>
|
||||
<span class="fw-bold text-warning"><?= dateLang($this->nettoyer($avenant['dateEffet']), $_SESSION['lang']) ?></span>
|
||||
</div>
|
||||
<div class="col-4 border-end">
|
||||
<label class="small text-muted d-block"><?= _("Échéance") ?></label>
|
||||
<span class="fw-bold text-warning"><?= dateLang($this->nettoyer($avenant['dateEcheance']), $_SESSION['lang']) ?></span>
|
||||
</div>
|
||||
<div class="col-4">
|
||||
<label class="small text-muted d-block"><?= _("Durée") ?></label>
|
||||
<span class="badge bg-warning text-dark"><?= $this->nettoyer($avenant['dureeAvenant']) ?> <?= _("Jours") ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row g-3 mb-5 text-center">
|
||||
<div class="col-md-2-4 col-sm-6">
|
||||
<div class="p-3 bg-white rounded shadow-sm border-bottom border-4 border-primary h-100">
|
||||
<div class="text-muted small mb-1"><?= _("Primes Totales") ?></div>
|
||||
<div class="h5 fw-bold mb-0 text-primary"><?= format_N($this->nettoyer($sppolice['primestat'])) ?></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2-4 col-sm-6">
|
||||
<div class="p-3 bg-white rounded shadow-sm border-bottom border-4 border-info h-100">
|
||||
<div class="text-muted small mb-1"><?= _("Primes Acquises") ?></div>
|
||||
<div class="h5 fw-bold mb-0 text-info"><?= format_N($this->nettoyer($sppolice['prime_acquise'])) ?></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2-4 col-sm-6">
|
||||
<div class="p-3 bg-white rounded shadow-sm border-bottom border-4 border-danger h-100">
|
||||
<div class="text-muted small mb-1"><?= _("Consommations") ?></div>
|
||||
<div class="h5 fw-bold mb-0 text-danger"><?= format_N($this->nettoyer($sppolice['consommation'])) ?></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2-4 col-sm-6">
|
||||
<div class="p-3 bg-white rounded shadow-sm border-bottom border-4 border-warning h-100">
|
||||
<div class="text-muted small mb-1"><?= _("Rapport S/P") ?></div>
|
||||
<div class="h5 fw-bold mb-0 text-warning"><?= $this->nettoyer($sppolice['rapportsp']) ?> %</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2-4 col-sm-12">
|
||||
<div class="p-3 bg-dark rounded shadow-sm border-bottom border-4 border-success h-100">
|
||||
<div class="text-white-50 small mb-1 text-uppercase fw-bold"><?= _("Total Ristourne") ?></div>
|
||||
<div class="h4 fw-bold mb-0 text-success"><?= $this->nettoyer($sppolice['tauxRistourne']) ?></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-flex align-items-center mb-3">
|
||||
<hr class="flex-grow-1">
|
||||
<span class="px-3 fw-bold text-muted text-uppercase small"><?= _("Détail des Primes à Ristourner") ?></span>
|
||||
<hr class="flex-grow-1">
|
||||
</div>
|
||||
|
||||
<div id="div_assure_a_retirer" class="bg-white rounded shadow-sm p-3">
|
||||
<?php include 'Vue/Ajaxdetailretrait/index.php'; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="popdetailassure" tabindex="-1" role="dialog" data-bs-backdrop="static" data-bs-keyboard="false">
|
||||
<div class="modal-dialog modal-xl modal-dialog-centered shadow-lg"> <div class="modal-content border-0">
|
||||
<div class="modal-header bg-light">
|
||||
<h5 class="modal-title fw-bold">
|
||||
<i class="fas fa-list-ul me-2 text-primary"></i><?= _("Détail du retrait") ?>
|
||||
</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Fermer"></button>
|
||||
</div>
|
||||
<div class="modal-body p-0"> <div id="div_selection_assure" class="container-fluid py-3">
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer bg-light border-0">
|
||||
<button type="button" class="btn btn-secondary px-4 rounded-pill" data-bs-dismiss="modal"><?= _("Fermer") ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.col-md-2-4 { flex: 0 0 auto; width: 20%; }
|
||||
@media (max-width: 992px) { .col-md-2-4 { width: 50%; } }
|
||||
@media (max-width: 576px) { .col-md-2-4 { width: 100%; } }
|
||||
|
||||
.shadow-sm { box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important; }
|
||||
.shadow-xs { box-shadow: 0 1px 2px rgba(0,0,0,0.05); }
|
||||
.min-vh-25 { min-height: 150px; }
|
||||
</style>
|
||||
|
|
@ -70,8 +70,8 @@ foreach ($modals as $id => $cfg):
|
|||
<div class="input-group input-group-lg">
|
||||
<span class="input-group-text bg-white border-end-0"><i class="fas fa-calendar-day text-muted"></i></span>
|
||||
<input type="text" class="form-control datepicker border-start-0 text-center fw-bold"
|
||||
id="<?= $cfg['id_date'] ?>" name="<?= $cfg['id_date'] ?>"
|
||||
value="<?= $this->datejourfr ?>" required>
|
||||
id="<?= $cfg['id_date'] ?>" name="<?= $cfg['id_date'] ?>"
|
||||
value="<?= dateLang($this->datejour, $_SESSION['lang']); ?>" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -23,9 +23,10 @@
|
|||
|
||||
<div class="col-md-5">
|
||||
<label class="form-label small fw-bold text-muted text-uppercase"><?= _("Période de validité") ?></label>
|
||||
|
||||
<div class="input-group shadow-sm">
|
||||
<span class="input-group-text bg-white small fw-bold"><?= _("Du") ?></span>
|
||||
<input type="text" id="debut" name="debut" class="form-control datepicker text-center fw-bold" value="<?= $_SESSION['dUneSemaineAvantFr_C'] ?>" required>
|
||||
<input type="text" id="debut" name="debut" class="form-control datepicker text-center fw-bold" value="<?= dateLang($_SESSION['dUneSemaineAvant_C'], $_SESSION['lang']) ?>" required>
|
||||
<span class="input-group-text bg-white small fw-bold"><?= _("au") ?></span>
|
||||
<input type="text" id="fin" name="fin" class="form-control datepicker text-center fw-bold" value="<?= dateCouranteLang($_SESSION['lang']) ?>" required>
|
||||
</div>
|
||||
|
|
|
|||
167
Vue/Remboursement/index.php
Executable file
167
Vue/Remboursement/index.php
Executable file
|
|
@ -0,0 +1,167 @@
|
|||
<?php
|
||||
$this->titre = "Intersanté - Remboursement Direct";
|
||||
|
||||
$idDemandeRemboursement = $_SESSION['idDemandeRemboursement'] ?? "0";
|
||||
|
||||
|
||||
$numeroDemandeRemboursement = $this->nettoyer($demande['numeroDemandeRemboursement']);
|
||||
$codeEtatDemandeRemboursement = $this->nettoyer($demande['codeEtatDemandeRemboursement']);
|
||||
$lien = $this->nettoyer($demande['lien']);
|
||||
$numeroBeneficiaire = $this->nettoyer($demande['numeroBeneficiaire']);
|
||||
$observation = $this->nettoyer($demande['observation']);
|
||||
$codeStatutPaiement = $this->nettoyer($demande['codeStatutPaiement']);
|
||||
$beneficiaire = $this->nettoyer($demande['beneficiaire']);
|
||||
$adherent = $this->nettoyer($demande['adherent']);
|
||||
$numeroAdherent = $this->nettoyer($demande['numeroAdherent']);
|
||||
$idPolice = $this->nettoyer($demande['idPolice']);
|
||||
$numeroPolice = $this->nettoyer($demande['numeroPolice']);
|
||||
|
||||
if (est_anglophone()){
|
||||
$lien = $this->nettoyer($demande['lienEng']);
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
<div id="div_liste" class="card shadow-lg border-0 mb-4" style="border-radius: 15px;">
|
||||
|
||||
<h1 class="text-primary"><i class="fas fa-file-invoice-dollar me-2"></i></i> <?= _('Détails du remboursement') ?></h1>
|
||||
|
||||
|
||||
<div class="card-header d-flex justify-content-between align-items-center py-1">
|
||||
<h5 class="mb-0 fw-bold">
|
||||
<?= _("POLICE") ?> : <span class="text-secondary"><?= $numeroPolice; ?></span>
|
||||
<span class="ms-3 badge bg-warning text-light small fw-normal"><?= _("Demande N°") ?>: <?= $numeroDemandeRemboursement; ?></span>
|
||||
</h5>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="card-body p-2">
|
||||
<div class="row g-4 mb-4">
|
||||
<div class="col-md-7">
|
||||
<div class="p-3 border rounded bg-light shadow-sm">
|
||||
<h6 class="text-muted text-uppercase small fw-bold mb-3 border-bottom pb-2">
|
||||
<i class="fas fa-id-card me-2 text-primary"></i><?= _("Identification du dossier") ?>
|
||||
</h6>
|
||||
|
||||
<div class="row g-3">
|
||||
<div class="col-12">
|
||||
<label class="form-label small text-muted mb-0"><?= _("Adhérent Principal (Titulaire)") ?></label>
|
||||
<div class="d-flex align-items-center bg-white border rounded p-2">
|
||||
<div class="flex-shrink-0">
|
||||
<div class="bg-primary-subtle text-primary rounded-circle d-flex align-items-center justify-content-center" style="width: 35px; height: 35px;">
|
||||
<i class="fas fa-user-shield"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1 ms-3">
|
||||
<div class="fw-bold text-dark fs-6">
|
||||
<?= $adherent ?>
|
||||
<span class="badge bg-secondary ms-2 small fw-normal"><?= $numeroAdherent ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-8">
|
||||
<label class="form-label small text-muted mb-0"><?= _("Bénéficiaire des soins (Patient)") ?></label>
|
||||
<div class="d-flex align-items-center bg-white border rounded p-2" style="min-height: 45px;">
|
||||
<div class="fw-bold text-dark fs-6">
|
||||
<i class="fas fa-user text-muted me-2 small"></i>
|
||||
<?= $beneficiaire ?>
|
||||
<span class="badge bg-info-subtle text-info border border-info-subtle ms-2 small fw-normal"><?= $numeroBeneficiaire ?></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<label class="form-label small text-muted mb-0"><?= _("Lien Parenté") ?></label>
|
||||
<div class="fw-bold py-2 px-2 bg-white border rounded text-center text-primary shadow-sm" style="min-height: 45px;">
|
||||
<i class="fas fa-users me-1 small"></i> <?= $lien ?: '--' ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label class="form-label small text-muted mb-0"><?= _("Commentaire du demandeur") ?></label>
|
||||
<div class="p-2 bg-white border rounded-1 small text-dark" style="min-height: 80px;">
|
||||
<?= $observation ?: '<span class="text-muted italic">' . _("Aucun commentaire fourni.") . '</span>' ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-5">
|
||||
<div class="card h-100 border-0 shadow-sm overflow-hidden">
|
||||
<div class="card-body p-0">
|
||||
<?php
|
||||
switch ($codeStatutPaiement) {
|
||||
case "1":
|
||||
$bgStatus = "bg-success";
|
||||
$iconStatus = "fa-check-double";
|
||||
$status = _("Validée");
|
||||
$colorText = "text-white";
|
||||
break;
|
||||
|
||||
case "2":
|
||||
$bgStatus = "bg-warning";
|
||||
$iconStatus = "fa-hourglass-half";
|
||||
$status = _("En attente");
|
||||
$colorText = "text-dark";
|
||||
break;
|
||||
|
||||
default:
|
||||
$bgStatus = "bg-danger";
|
||||
$iconStatus = "fa-ban";
|
||||
$status = _("Refusée");
|
||||
$colorText = "text-white";
|
||||
break;
|
||||
}
|
||||
?>
|
||||
<div class="<?= $bgStatus ?> text-white p-3 text-center">
|
||||
<i class="fas <?= $iconStatus ?> fa-2x mb-2"></i>
|
||||
<h5 class="mb-0 text-uppercase fw-bold"><?= $status ?></h5>
|
||||
<small class="opacity-75 <?= $colorText ?>"><?= ($codeStatutPaiement != "2") ? _("Validé le") :""; ?> <?= dateLang($demande['dateValidationRh'], $_SESSION['lang']) ?></small>
|
||||
</div>
|
||||
<?php if($codeStatutPaiement=="9"):?>
|
||||
<div class="p-3 bg-light">
|
||||
<label class="small text-muted d-block mb-1"><?= _("Justification de rejet") ?> :</label>
|
||||
<div class="p-2 text-danger rounded small" style="min-height: 60px; border: 1px solid gray;">
|
||||
<?= $this->nettoyer($demande['motifRejetRh']) ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if($idDemandeRemboursement > 0): ?>
|
||||
<div class="card border-0 shadow-sm mt-4">
|
||||
<div class="card-header bg-dark text-white py-2 d-flex justify-content-between align-items-center">
|
||||
<span class="small fw-bold"><i class="fas fa-file-pdf me-2"></i><?= _("PIÈCES JOINTES (Factures)") ?></span>
|
||||
<span class="badge bg-secondary"><?= count($geds) ?></span>
|
||||
</div>
|
||||
<div class="card-body p-0">
|
||||
<table class="table table-hover table-sm mb-0">
|
||||
<tbody class="small">
|
||||
<?php foreach ($geds as $ged): ?>
|
||||
<tr>
|
||||
<td class="ps-3 py-2 text-muted" width="150"><?= dateheureLang($ged['dateSysteme']) ?></td>
|
||||
<td class="py-2"><i class="far fa-file-image me-2 text-primary"></i><?= $this->nettoyer($ged['nomOrigine']) ?></td>
|
||||
<td class="text-end pe-3 py-2">
|
||||
<a href="<?= $ged['cheminFichier'] ?>" target="_blank" class="btn btn-xs btn-outline-danger">
|
||||
<i class="fas fa-download"></i>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
<?php if(empty($geds)): ?>
|
||||
<tr><td colspan="3" class="text-center py-4 text-muted italic"><?= _("Aucune facture scannée pour cette demande.") ?></td></tr>
|
||||
<?php endif; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
64
Vue/Remboursementclassique/index.php
Executable file
64
Vue/Remboursementclassique/index.php
Executable file
|
|
@ -0,0 +1,64 @@
|
|||
<?php $this->titre = "Intersanté - Historique Remboursement"; ?>
|
||||
<input class="sr-only" id="nomForm" name="nomForm" value="historembdirect">
|
||||
|
||||
<div id="div_liste" class="container-fluid py-3">
|
||||
<div class="d-flex align-items-center mb-4">
|
||||
<div class="bg-primary text-white p-3 rounded-3 shadow-sm me-3">
|
||||
<i class="fas fa-hand-holding-usd"></i>
|
||||
</div>
|
||||
<div>
|
||||
<h3 class="mb-0 fw-bold text-uppercase text-primary"><?= _("Validation des demandes") ?></h3>
|
||||
<p class="text-muted mb-0"><?= _("Liste des dossiers Hors Tiers Payant des assurés") ?></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="div_patienter"></div>
|
||||
|
||||
<div class="card shadow-sm border-0 mb-4" style="border-radius: 12px;">
|
||||
<div class="card-body p-3">
|
||||
<form id="form_filtres" class="row g-3 align-items-end">
|
||||
<div class="col-12 col-md-4 col-lg-3">
|
||||
<label class="form-label small fw-bold text-muted mb-1"><?= _("Période du") ?></label>
|
||||
<div class="input-group input-group-sm">
|
||||
<span class="input-group-text bg-white"><i class="far fa-calendar-alt"></i></span>
|
||||
<input class="form-control datepicker" type="text" id="d1" name="d1"
|
||||
value="<?= dateLang($_SESSION['debutMois_C'], $_SESSION['lang']) ?>" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-4 col-lg-3">
|
||||
<label class="form-label small fw-bold text-muted mb-1"><?= _("Au") ?></label>
|
||||
<div class="input-group input-group-sm">
|
||||
<span class="input-group-text bg-white"><i class="far fa-calendar-check"></i></span>
|
||||
<input class="form-control datepicker" type="text" id="d2" name="d2"
|
||||
value="<?= dateCouranteLang($_SESSION['lang'], $_SESSION['lang']) ?>" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-4 col-lg-3">
|
||||
<label class="form-label small fw-bold text-muted mb-1"><?= _("État validation") ?></label>
|
||||
<select class="form-select form-select-sm border-primary-subtle" id="codeStatutPaiement" name="codeStatutPaiement">
|
||||
<?php liste_options_consultation($reponsedemande, ""); ?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-lg-3">
|
||||
<button id="btn_filtre" type="button" class="btn btn-primary btn-sm w-100 fw-bold shadow-sm" onclick="listerremboursement();">
|
||||
<i class="fas fa-search me-2"></i><?= _("Rechercher les dossiers") ?>
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card shadow-sm border-0" style="border-radius: 12px;">
|
||||
<div id="div_dossiers" class="card-body p-0">
|
||||
<div class="text-center py-5 text-muted">
|
||||
<i class="fas fa-info-circle me-2"></i>
|
||||
<?= _("Veuillez cliquer sur rechercher pour afficher les résultats") ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="div_validation" class="modal fade"></div>
|
||||
108
Vue/Remplaceradherent/index.php
Normal file
108
Vue/Remplaceradherent/index.php
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
<?php $this->titre = "INTER-SANTE - Remplacement Famille"; ?>
|
||||
|
||||
<INPUT class="sr-only" TYPE="text" id="idPolice" name="idPolice" value="<?= $_SESSION['idPolice_C'] ?>">
|
||||
<INPUT class="sr-only" TYPE="text" id="numeroPolice" name="numeroPolice" value="<?= $_SESSION['numeroPolice_C'] ?>">
|
||||
<INPUT class="sr-only" TYPE="text" id="codeEtatFacturation" name="codeEtatFacturation" value="<?=$adherent['codeEtatFacturation']?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="consommation_adherent" name="consommation_adherent" value="<?=$adherent['consommation_adherent']?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="rapport_sp_police" name="rapport_sp_police" value="<?=$adherent['rapport_sp_police']?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="idCollege" name="idCollege" value="<?=$adherent['idCollege']?>" >
|
||||
|
||||
<INPUT class="sr-only" TYPE="text" id="dateEffetAdherent" name="dateEffetAdherent" value="<?=$adherent['dateEffetAdherent']?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="dateSortieAdherent" name="dateSortieAdherent" value="<?=$adherent['dateSortieAdherent']?>" >
|
||||
|
||||
<INPUT class="sr-only" TYPE="text" id="remplacementAdherent" name="remplacementAdherent" value="<?= $adherent['remplacementAdherent'] ?>" >
|
||||
|
||||
<INPUT class="sr-only" TYPE="text" id="etatRetrait" name="etatRetrait" value="<?= $adherent['etatRetrait'] ?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="dateRetrait" name="dateRetrait" value="<?=$adherent['dateRetrait']?>" >
|
||||
<INPUT class="sr-only" TYPE="text" id="ristourneRetrait" name="ristourneRetrait" value="<?=$adherent['ristourneRetrait']?>" >
|
||||
|
||||
<div id="div_adherent" class="container-fluid py-1 animate__animated animate__fadeIn">
|
||||
|
||||
<h1 class="text-primary"><i class="fas fa-user-minus me-2"></i><?= _('Remplacer Famille') ?></h1>
|
||||
|
||||
<div class="card shadow-sm border-0 mb-4">
|
||||
<div class="card-header d-flex justify-content-between align-items-center">
|
||||
<h5 class="mb-0"><i class="fas fa-users me-2"></i><?= _("Détails Famille Sortante") ?></h5>
|
||||
</div>
|
||||
|
||||
<div class="card-body bg-light">
|
||||
<div class="row g-3">
|
||||
<div class="col-md-4">
|
||||
<label class="form-label small text-uppercase fw-bold mb-0"><?= _("Adhérent") ?></label>
|
||||
<div class="fw-bold text-uppercase p-2 border rounded bg-white">
|
||||
<?= $this->nettoyer($adherent['nom']) ?> <?= $this->nettoyer($adherent['prenoms']) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2 text-center">
|
||||
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Effet Police") ?></label>
|
||||
<div class="p-2 border rounded bg-white small">
|
||||
<?= dateLang($this->nettoyer($adherent['dateEffetPolice']), $_SESSION['lang']) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2 text-center">
|
||||
<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">
|
||||
<?= dateLang($this->nettoyer($adherent['dateEffetAdherent']), $_SESSION['lang']) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2 text-center">
|
||||
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Echéance") ?></label>
|
||||
<div class="p-2 border rounded bg-white small">
|
||||
<?= dateLang($this->nettoyer($adherent['dateFinPolice']), $_SESSION['lang']) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2 text-center">
|
||||
<label class="form-label small text-uppercase mb-0 fw-bold"><?= _("Consommation") ?></label>
|
||||
<div class="p-2 border rounded bg-white small text-danger fw-bold">
|
||||
<?= number_format($adherent['consommation_adherent'], 0, ',', ' ') ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="div_remplacement_adherent" class="card shadow-sm border-primary">
|
||||
<div class="card-header d-flex justify-content-between align-items-center">
|
||||
<h5 class="mb-0"><i class="fas fa-exchange-alt me-2"></i><?= _("Paramètres du mouvement") ?></h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row g-3">
|
||||
<div class="col-md-4">
|
||||
<label class="form-label fw-bold text-uppercase small"><?= _("Date de Sortie effective") ?> <span class="text-danger">*</span></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fas fa-calendar-minus"></i></span>
|
||||
<input class="form-control datepicker text-center" type="text" id="dateSortieAdh" name="dateSortieAdh" value="<?= dateCouranteLang($_SESSION['lang']) ?>" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<label class="form-label fw-bold small text-uppercase"><?= _("Date de Remplacement") ?> <span class="text-danger">*</span></label>
|
||||
<div class="input-group border-primary">
|
||||
<span class="input-group-text bg-primary text-white"><i class="fas fa-calendar-plus"></i></span>
|
||||
<input class="form-control datepicker text-center" type="text" id="dateRemplacement" name="dateRemplacement" value="<?= dateCouranteLang($_SESSION['lang']) ?>" required>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<label class="form-label fw-bold small text-uppercase"><?= _("Frais de Carte") ?></label>
|
||||
<div class="input-group">
|
||||
<input class="form-control text-end" id="fraisCarte" name="fraisCarte" type="number" value="<?=$adherent['fraisCarte']?>">
|
||||
<span class="input-group-text"><?=$_SESSION['devise_C']?></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-8">
|
||||
<label class="form-label fw-bold small text-uppercase"><?= _("Motif de l'avenant (Observation)") ?></label>
|
||||
<textarea class="form-control" id="motifavenant" name="motifavenant" rows="1" placeholder="<?= _("Ex: Remplacement suite à démission...") ?>"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4 d-flex align-items-end">
|
||||
<button type="button" class="btn btn-primary w-100 py-2 shadow" onclick="javascript:init_remplacement_adherent();">
|
||||
<i class="fas fa-play-circle me-2"></i> <?= _("Initier le remplacement") ?>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
93
Vue/Remplaceradherentcons/index.php
Normal file
93
Vue/Remplaceradherentcons/index.php
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
<?php
|
||||
$this->titre = "INTER-SANTE - Consultation remplacement famille ";
|
||||
?>
|
||||
|
||||
<legend> <?= _("RECAPITULATIF REMPLACEMENT DE FAMILLE => SORTANT") ?> </legend>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Famille Sortante") ?> </th>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_sortant['nom']) ?>" readonly > </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_sortant['prenoms']) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Effet Police") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateEffetPolice'])) ?>" readonly > </td>
|
||||
<th style='text-align:center'> <?= _("Effet Famille") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateEffetAdherent'])) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Echéance") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateFinPolice'])) ?>" readonly > </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Date Sortie") ?> </td>
|
||||
<td width="15%" >
|
||||
<INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($remplacementadherent['dateSortie'])) ?>" readonly >
|
||||
</td>
|
||||
|
||||
<td width="10%" style='font-size:9pt; text-align:center' > <?= _("Remplacement") ?> </td>
|
||||
<td width="15%" >
|
||||
<INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($remplacementadherent['dateRemplacement'])) ?>" readonly>
|
||||
</td>
|
||||
|
||||
<td width="5%" style='font-size:9pt; text-align:center' > <?= _("Motif") ?> </td>
|
||||
<td > <INPUT style='font-size:9pt;' class="form-control" TYPE="text" Value="<?= $this->nettoyer($remplacementadherent['motif']) ?>" readonly> </td>
|
||||
|
||||
<td width="10%" > <INPUT style='font-size:9pt; text-align:center;' class="form-control" TYPE="text" Value="<?= $this->nettoyer($remplacementadherent['codeUtilisateur']) ?>" readonly> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Famille Entrante") ?> </th>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_entrant['nom']) ?>" readonly > </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_entrant['prenoms']) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Effet Police") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateEffetPolice'])) ?>" readonly > </td>
|
||||
<th style='text-align:center'> <?= _("Effet Famille") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateEffetAdherent'])) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Echéance") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateFinPolice'])) ?>" readonly > </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:9pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:center"> <?= _("Garanties et soldes transmis") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Limites en vigeur") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Consommations") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Solde") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Par tête?") ?> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach ($garantieadherents as $garantieadherent):
|
||||
$champApplication = $this->nettoyer($garantieadherent['champApplication']);
|
||||
?>
|
||||
<tr valign="top">
|
||||
<td align='center'> <?= $this->nettoyer($garantieadherent['garantie'])?> </td>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['plafond'])) ?></td>
|
||||
<?php if($champApplication=='1'): ?>
|
||||
<td> </td>
|
||||
<td> </td>
|
||||
<td align='center'> <input type="checkbox" checked value="<?php echo $champApplication ; ?>" disabled ></td>
|
||||
<?php else: ?>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['consommation'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['solde'])) ?></td>
|
||||
<td align='center'> <input type="checkbox" value="<?php echo $champApplication ; ?>" disabled ></td>
|
||||
<?php endif; ?>
|
||||
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
94
Vue/Remplaceradherentcons/remplacant.php
Normal file
94
Vue/Remplaceradherentcons/remplacant.php
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
<?php
|
||||
$this->titre = "INTER-SANTE - Consultation remplacement famille ";
|
||||
?>
|
||||
|
||||
<legend> <?= _("RECAPITULATIF REMPLACEMENT DE FAMILLE => ENTRANT") ?> </legend>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Famille Sortante") ?> </th>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_sortant['nom']) ?>" readonly > </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_sortant['prenoms']) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Effet Police") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateEffetPolice'])) ?>" readonly > </td>
|
||||
<th style='text-align:center'> <?= _("Effet Famille") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateEffetAdherent'])) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Echéance") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_sortant['dateFinPolice'])) ?>" readonly > </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Date Sortie") ?> </td>
|
||||
<td width="15%" >
|
||||
<INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($remplacementadherent['dateSortie'])) ?>" readonly >
|
||||
</td>
|
||||
|
||||
<td width="10%" style='font-size:9pt; text-align:center' > <?= _("Remplacement") ?> </td>
|
||||
<td width="15%" >
|
||||
<INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($remplacementadherent['dateRemplacement'])) ?>" readonly>
|
||||
</td>
|
||||
|
||||
<td width="5%" style='font-size:9pt; text-align:center' > <?= _("Motif") ?> </td>
|
||||
<td > <INPUT style='font-size:9pt;' class="form-control" TYPE="text" Value="<?= $this->nettoyer($remplacementadherent['motif']) ?>" readonly> </td>
|
||||
|
||||
<td width="10%" > <INPUT style='font-size:9pt; text-align:center;' class="form-control" TYPE="text" Value="<?= $this->nettoyer($remplacementadherent['codeUtilisateur']) ?>" readonly> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
<table class="table table-responsive table-condensed" style='font-size:9pt;'>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="10%" > <?= _("Famille Entrante") ?> </th>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_entrant['nom']) ?>" readonly > </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= $this->nettoyer($adherent_entrant['prenoms']) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Effet Police") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateEffetPolice'])) ?>" readonly > </td>
|
||||
<th style='text-align:center'> <?= _("Effet Famille") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateEffetAdherent'])) ?>" readonly > </td>
|
||||
<td style='text-align:center'> <?= _("Echéance") ?> </td>
|
||||
<td> <INPUT style='font-size:9pt; text-align:center' class="form-control" TYPE="text" Value="<?= dateLang($this->nettoyer($adherent_entrant['dateFinPolice'])) ?>" readonly > </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:9pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="text-align:center"> <?= _("Garanties et soldes transmis") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Limites en vigeur") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Consommations") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Solde") ?> </th>
|
||||
<th style="text-align:center"> <?= _("Par tête?") ?> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach ($garantieadherents as $garantieadherent):
|
||||
$champApplication = $this->nettoyer($garantieadherent['champApplication']);
|
||||
?>
|
||||
<tr valign="top">
|
||||
<td align='center'> <?= $this->nettoyer($garantieadherent['garantie'])?> </td>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['plafond'])) ?></td>
|
||||
<?php if($champApplication=='1'): ?>
|
||||
<td> </td>
|
||||
<td> </td>
|
||||
<td align='center'> <input type="checkbox" checked value="<?php echo $champApplication ; ?>" disabled ></td>
|
||||
<?php else: ?>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['consommation'])) ?></td>
|
||||
<td align='center'><?= format_N($this->nettoyer($garantieadherent['solde'])) ?></td>
|
||||
<td align='center'> <input type="checkbox" value="<?php echo $champApplication ; ?>" disabled ></td>
|
||||
<?php endif; ?>
|
||||
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
128
Vue/gabarit.php
128
Vue/gabarit.php
|
|
@ -126,7 +126,7 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
<link rel="manifest" href="<?= $racineWeb ?>manifest.json">
|
||||
|
||||
<!-- 4. VOS STYLES PERSONNALISÉS (en dernier pour qu'ils dominent) -->
|
||||
<link href="<?= $racineWeb ?>Bootstrap_new/css/style_office.css?ver=2026.01.19.00" rel="stylesheet">
|
||||
<link href="<?= $racineWeb ?>Bootstrap_new/css/style_office.css?ver=2026.01.20.05" rel="stylesheet">
|
||||
<link href="<?= $racineWeb ?>Bootstrap_new/css/ux_enhancements.css?ver=2025.12.21.02" rel="stylesheet">
|
||||
|
||||
<!-- Charts -->
|
||||
|
|
@ -263,44 +263,52 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
</div>
|
||||
|
||||
<!-- User Menu -->
|
||||
<div class="user-menu dropdown-toggle" data-bs-toggle="dropdown"
|
||||
aria-expanded="false" aria-label="Menu utilisateur">
|
||||
<div class="user-avatar" role="img" aria-label="Avatar utilisateur">
|
||||
<?= $_SESSION['userInitials_C'] ?? 'U' ?>
|
||||
</div>
|
||||
<div class="user-info">
|
||||
<div class="user-name"><?= $_SESSION['utilisateur_C'] ?? _('Utilisateur') ?></div>
|
||||
<div class="user-role text-primary fw-bold">
|
||||
<i class="fas fa-building-user"></i>
|
||||
<?= $_SESSION['nomClient_C'] ?? _('Client') ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- User Dropdown -->
|
||||
<div class="dropdown-menu dropdown-menu-end">
|
||||
<div class="dropdown-header">
|
||||
<div class="user-avatar mx-auto mb-2">
|
||||
<div class="dropdown">
|
||||
<button id="userDropdownBtn"
|
||||
class="user-menu dropdown-toggle border-0 bg-transparent p-0"
|
||||
type="button"
|
||||
data-bs-toggle="dropdown"
|
||||
aria-expanded="false">
|
||||
|
||||
<div class="user-avatar">
|
||||
<?= $_SESSION['userInitials_C'] ?? 'U' ?>
|
||||
</div>
|
||||
<div class="text-center">
|
||||
<div class="fw-bold"><?= $_SESSION['utilisateur_C'] ?? _('Utilisateur') ?></div>
|
||||
<small class="text-muted"><?= $_SESSION['nomClient_C'] ?? _('Client') ?></small>
|
||||
|
||||
<div class="user-info text-start ms-0">
|
||||
<div class="user-name fw-bold" style="line-height: 1.2;">
|
||||
<?= $_SESSION['utilisateur_C'] ?? _('Utilisateur') ?>
|
||||
</div>
|
||||
<div class="user-role text-primary fw-bold">
|
||||
<?= $_SESSION['nomClient_C'] ?? _('Client') ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="javascript:change_password()">
|
||||
<i class="fas fa-user-circle me-2"></i> <?= _('Mon compte') ?>
|
||||
</a>
|
||||
<!--
|
||||
<a class="dropdown-item" href="javascript:appNotifications.showMessagesModal()">
|
||||
<i class="fas fa-envelope me-2"></i> <?= _('Messagerie') ?>
|
||||
</a>
|
||||
-->
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item text-danger" href="Connexion/deconnecter">
|
||||
<i class="fas fa-sign-out-alt me-2"></i> <?= _('Déconnexion') ?>
|
||||
</a>
|
||||
|
||||
<i class="bi bi-chevron-down ms-0 user-arrow"></i>
|
||||
</button>
|
||||
|
||||
<ul class="dropdown-menu dropdown-menu-end shadow-sm">
|
||||
<li class="dropdown-header">
|
||||
<div class="user-avatar mx-auto mb-2">
|
||||
<?= $_SESSION['userInitials_C'] ?? 'U' ?>
|
||||
</div>
|
||||
<div class="text-center">
|
||||
<div class="fw-bold text-dark"><?= $_SESSION['utilisateur_C'] ?? _('Utilisateur') ?></div>
|
||||
<small class="text-muted"><?= $_SESSION['nomClient_C'] ?? _('Client') ?></small>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="dropdown-item" href="javascript:change_password()">
|
||||
<i class="fas fa-user-circle me-2"></i> <?= _('Changer le mot de passe') ?>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a class="dropdown-item text-danger" href="Connexion/deconnecter">
|
||||
<i class="fas fa-sign-out-alt me-2"></i> <?= _('Déconnexion') ?>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -635,6 +643,7 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
<!-- JavaScript Libraries -->
|
||||
<script src="https://code.jquery.com/jquery-3.7.0.min.js"></script>
|
||||
<script src="https://code.jquery.com/ui/1.13.2/jquery-ui.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/i18n/jquery-ui-i18n.min.js"></script>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<script src="https://cdn.datatables.net/v/bs5/dt-1.13.6/datatables.min.js"></script>
|
||||
|
|
@ -654,7 +663,7 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||
|
||||
<!-- Application Scripts -->
|
||||
<script src="/Js/fonctions.js?ver=2026.01.19.10"></script>
|
||||
<script src="/Js/fonctions.js?ver=2026.01.22.11"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
raffraichier_gabarit();
|
||||
|
|
@ -662,7 +671,6 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
|
||||
<script type="text/javascript">
|
||||
setInterval(function() {
|
||||
console.log("Actualisation gabarit");
|
||||
raffraichier_gabarit();
|
||||
}, 10000);
|
||||
</script>
|
||||
|
|
@ -673,6 +681,22 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
<script src="/Js/datepicker-fr.js"></script>
|
||||
<?php endif; ?>
|
||||
|
||||
<script>
|
||||
$(function() {
|
||||
<?php if (est_anglophone()): ?>
|
||||
$.datepicker.setDefaults($.datepicker.regional["en"]); // ou "en" selon le fichier
|
||||
$(".datepicker").datepicker({
|
||||
dateFormat: "mm/dd/yy"
|
||||
});
|
||||
<?php else: ?>
|
||||
$.datepicker.setDefaults($.datepicker.regional["fr"]);
|
||||
$(".datepicker").datepicker({
|
||||
dateFormat: "dd/mm/yy"
|
||||
});
|
||||
<?php endif; ?>
|
||||
});
|
||||
</script>
|
||||
|
||||
<!-- UX Enhancement Script -->
|
||||
<script src="/Bootstrap_new/js/ux-manager.js?ver=2025.12.31.00"></script>
|
||||
|
||||
|
|
@ -796,6 +820,34 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
});
|
||||
});
|
||||
</script>
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
const btn = document.getElementById('userDropdownBtn');
|
||||
|
||||
if (btn) {
|
||||
// On crée l'instance Bootstrap une seule fois
|
||||
const dropdown = new bootstrap.Dropdown(btn);
|
||||
|
||||
btn.addEventListener('click', function (e) {
|
||||
// ÉTAPE CLÉ : On empêche les autres scripts du header de bloquer le clic
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
// On force l'ouverture/fermeture
|
||||
dropdown.toggle();
|
||||
});
|
||||
}
|
||||
|
||||
// Sécurité : Fermer le menu si on clique n'importe où ailleurs sur la page
|
||||
document.addEventListener('click', function (e) {
|
||||
const btn = document.getElementById('userDropdownBtn');
|
||||
if (btn && !btn.contains(e.target)) {
|
||||
const instance = bootstrap.Dropdown.getInstance(btn);
|
||||
if (instance) instance.hide();
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
<base href="<?= $racineWeb ?>">
|
||||
|
||||
<link rel="icon" href="Bootstrap_new/images/new/favicon.ico"/>
|
||||
<link rel="icon" href="Bootstrap_new/images/new/favicon.png"/>
|
||||
|
||||
<link href="Bootstrap_new/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="Bootstrap_new/css/simple-sidebar.css" rel="stylesheet">
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user