This commit is contained in:
KANE LAZENI 2026-01-16 07:11:49 +00:00
parent ad0cdd94cf
commit 5854b8c1a4
234 changed files with 7614 additions and 2053 deletions

0
Bootstrap_new/css/override.css Executable file → Normal file
View File

45
Bootstrap_new/css/style_office.css Executable file → Normal file
View File

@ -249,6 +249,7 @@ body.sidebar-collapsed .app-sidebar .nav-link:hover::after {
.nav-link[aria-expanded="true"] .nav-arrow { .nav-link[aria-expanded="true"] .nav-arrow {
transform: rotate(90deg); transform: rotate(90deg);
transition: transform 0.3s;
} }
.nav-submenu { .nav-submenu {
@ -862,6 +863,20 @@ body.sidebar-collapsed .nav-bar {
padding: 1rem !important; padding: 1rem !important;
font-size: 9pt; font-size: 9pt;
} }
.chart-container {
height: 60vh;
}
.card-header {
flex-direction: column;
align-items: flex-start !important;
}
.btn-export {
margin-top: 0.5rem;
align-self: flex-end;
}
} }
/* Écrans larges : mêmes insets pour nav-tabs et content-area */ /* Écrans larges : mêmes insets pour nav-tabs et content-area */
@ -1045,7 +1060,9 @@ li i { margin-right:10px; color:#007bff; }
#div_colleges_police, #div_colleges_police,
#div_ajout_adherent, #div_ajout_adherent,
#div_avenant, #div_avenant,
#div_liste_adherent { #div_liste_adherent,
#div_adherent,
#div_liste {
background-color: var(--office-light); background-color: var(--office-light);
color: var(--office-dark); color: var(--office-dark);
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
@ -1059,7 +1076,9 @@ li i { margin-right:10px; color:#007bff; }
#div_colleges_police .card, #div_colleges_police .card,
#div_ajout_adherent .card, #div_ajout_adherent .card,
#div_avenant .card, #div_avenant .card,
#div_liste_adherent .card{ #div_liste_adherent .card,
#div_adherent .card,
#div_liste .card{
border: 1px solid var(--office-border); border: 1px solid var(--office-border);
border-radius: 2px; /* Office style is more rectangular */ border-radius: 2px; /* Office style is more rectangular */
} }
@ -1070,7 +1089,9 @@ li i { margin-right:10px; color:#007bff; }
#div_colleges_police .card-header, #div_colleges_police .card-header,
#div_ajout_adherent .card-header, #div_ajout_adherent .card-header,
#div_avenant .card-header, #div_avenant .card-header,
#div_liste_adherent .card-header{ #div_liste_adherent .card-header
#div_adherent .card-header,
#div_adherent .card-header{
border-bottom: 1px solid var(--office-border) !important; border-bottom: 1px solid var(--office-border) !important;
background-color: white; background-color: white;
color: var(--office-dark); color: var(--office-dark);
@ -1428,4 +1449,20 @@ li i { margin-right:10px; color:#007bff; }
padding: 15px; padding: 15px;
border-radius: 8px; border-radius: 8px;
background-color: white; background-color: white;
} }
/* Styles communs pour tous les graphiques */
.chart-container {
position: relative;
width: 100%;
min-height: 300px;
}
.legend-text {
vertical-align: middle;
}
.btn-export {
padding: 0.25rem 0.5rem;
font-size: 0.75rem;
}

0
Bootstrap_new/css/ux_enhancements.css Executable file → Normal file
View File

0
Bootstrap_new/images/new/README.md Executable file → Normal file
View File

0
Bootstrap_new/images/new/favicon.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

0
Bootstrap_new/images/new/icons/icon-128x128.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

0
Bootstrap_new/images/new/icons/icon-144x144.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

0
Bootstrap_new/images/new/icons/icon-152x152.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

0
Bootstrap_new/images/new/icons/icon-16x16.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 507 B

After

Width:  |  Height:  |  Size: 507 B

0
Bootstrap_new/images/new/icons/icon-180x180.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

0
Bootstrap_new/images/new/icons/icon-192x192.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

0
Bootstrap_new/images/new/icons/icon-32x32.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
Bootstrap_new/images/new/icons/icon-384x384.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

0
Bootstrap_new/images/new/icons/icon-48x48.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

0
Bootstrap_new/images/new/icons/icon-512x512.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

0
Bootstrap_new/images/new/icons/icon-64x64.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

0
Bootstrap_new/images/new/icons/icon-96x96.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

0
Bootstrap_new/images/new/manifest.json Executable file → Normal file
View File

0
Bootstrap_new/images/new/meta-tags.html Executable file → Normal file
View File

0
Bootstrap_new/js/ux-manager.js Executable file → Normal file
View File

0
Controleur/ControleurAjaxavenant.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxbeneficiaireprimeadherent.php Executable file → Normal file
View File

View File

0
Controleur/ControleurAjaxcontextpolice.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxcontroleavenantpolice.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxcontrolepiece.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxdetailretrait.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxexporterlisteassure.php Executable file → Normal file
View File

View File

View File

@ -0,0 +1,72 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Facture.php';
class ControleurAjaxfactureconspop extends Controleur {
private $facture;
public function __construct() {
$this->facture = new Facture();
}
public function index()
{
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$_SESSION['idFacture_C'] = $idFacture;
$facture = $this->facture->consulterfacturefacture($idFacture) ;
$this->genererVueAjax(array('facture' => $facture));
}
public function feuillemaladie()
{
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$feuillemaladie = $this->facture->consulterfacturefeuillemaladie($idFacture) ;
$diagnostics = $this->facture->consulterfacturediagnostics($idFacture);
$this->genererVueAjax(array('feuillemaladie' => $feuillemaladie, 'diagnostics' => $diagnostics));
}
public function prestationactes()
{
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$prestations = $this->facture->consulterfactureprestationactes($idFacture) ;
$this->genererVueAjax(array('prestations' => $prestations));
}
public function medicaments()
{
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$medicaments = $this->facture->consulterfacturemedicaments($idFacture) ;
$this->genererVueAjax(array('medicaments' => $medicaments));
}
public function geds()
{
unset($_FILES['fichier_upload']);
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$geds = $this->facture->getgedfacture($idFacture);
$this->genererVueAjax(array('geds' => $geds));
}
public function verres()
{
$idFacture = $this->requete->getParametreFormulaire("idFacture");
$verres = $this->facture->consulterfactureverres($idFacture) ;
$this->genererVueAjax(array('verres' => $verres));
}
}

0
Controleur/ControleurAjaxfacturesfamille.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxfichepolice.php Executable file → Normal file
View File

View File

@ -0,0 +1,150 @@
<?php
require_once 'Framework/Controleur.php'; // OK
require_once 'Modele/Utilisateur.php';
class ControleurAjaxhabilitation extends Controleur
{
private $utilisateur;
public function __construct()
{
$this->utilisateur = new Utilisateur();
}
public function index()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$menus_accessibles = $this->utilisateur->getMenusAccessiblesProfil($codeProfil);
$menus_non_accessibles = $this->utilisateur->getMenusNonAccessiblesProfil($codeProfil);
$this->genererVueAjax(array('menus_accessibles' => $menus_accessibles, 'menus_non_accessibles' => $menus_non_accessibles));
}
public function ajouterunmenuprofilrh()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
$this->utilisateur->ajouterunmenuprofilrh($codeProfil, $codeMenu);
}
public function retirerunmenuprofilrh()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
$this->utilisateur->retirerunmenuprofilrh($codeProfil, $codeMenu);
}
public function ajoutertousmenusprofilrh()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$this->utilisateur->ajoutertousmenusprofilrh($codeProfil);
}
public function retirertousmenuprofilrh()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$this->utilisateur->retirertousmenuprofilrh($codeProfil);
}
public function afficheraccessousmenusass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$codeModule = $this->requete->getParametreFormulaire("codeModule");
$vue = $this->requete->getParametreFormulaire("vue");
$menus_accessibles = $this->utilisateur->getSousMenusAccessiblesVue($codeProfil, $vue);
$menus_non_accessibles = $this->utilisateur->getSousMenusNonAccessiblesVue($codeProfil,$vue);
$this->genererVueAjax(array('menus_accessibles' => $menus_accessibles, 'menus_non_accessibles' => $menus_non_accessibles,
'codeModule' => $codeModule));
}
public function ajoutertoussousmenusass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$vue = $this->requete->getParametreFormulaire("vue");
$this->utilisateur->ajoutertoussousmenusass($codeProfil, $vue);
}
public function retirertoussousmenusass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$vue = $this->requete->getParametreFormulaire("vue");
$this->utilisateur->retirertoussousmenusass($codeProfil, $vue);
}
public function ajouterunsousmenusass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$vue = $this->requete->getParametreFormulaire("vue");
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
$this->utilisateur->ajouterunsousmenusass($codeProfil, $vue, $codeMenu);
}
public function retirerunsousmenusass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$vue = $this->requete->getParametreFormulaire("vue");
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
$this->utilisateur->retirerunsousmenusass($codeProfil, $vue, $codeMenu);
}
public function creerprofilass()
{
$libelle = $this->requete->getParametreFormulaire("libelle");
$libelleEng = $this->requete->getParametreFormulaire("libelleEng");
$this->utilisateur->creerprofilass($libelle, $libelleEng);
}
public function transfererdroitsprofilassureur()
{
$codeProfilSource = $this->requete->getParametreFormulaire("codeProfilSource");
$codeProfilDest = $this->requete->getParametreFormulaire("codeProfilDest");
$this->utilisateur->transfererdroitsprofilassureur($codeProfilSource, $codeProfilDest);
// $this->genererVueAjax();
}
public function batchviderprofilass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$this->utilisateur->batchviderprofilass($codeProfil);
}
public function batchattribuerdroitsreferenceass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$this->utilisateur->batchattribuerdroitsreferenceass($codeProfil);
}
public function ajaxlisteusersass()
{
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$nom = $this->requete->getParametreFormulaire("nom");
$prenoms = $this->requete->getParametreFormulaire("prenoms");
$codePointVente = $this->requete->getParametreFormulaire("codePointVente");
$users = $this->utilisateur->getusersassueurfiltre($codeProfil, $nom, $prenoms, $codePointVente);
$this->genererVueAjax(array('users' => $users));
}
}

0
Controleur/ControleurAjaximporterlisteassure.php Executable file → Normal file
View File

0
Controleur/ControleurAjaximprimercp.php Executable file → Normal file
View File

0
Controleur/ControleurAjaximprimerlisteassure.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxlisteadherent.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxlistegedpolice.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxlistepolicesclient.php Executable file → Normal file
View File

View File

@ -0,0 +1,20 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Police.php';
class ControleurAjaxlisterpolicesclient extends Controleur {
private $police;
public function __construct()
{
$this->police = new Police();
}
public function index()
{
$vue = $this->requete->getParametreFormulaire("vue");
$polices = $this->police->getPoliceRh();
$this->genererVueAjax(array('vue' => $vue, 'polices' => $polices));
}
}

0
Controleur/ControleurAjaxlocalite.php Executable file → Normal file
View File

19
Controleur/ControleurAjaxmouvementassure.php Executable file → Normal file
View File

@ -12,11 +12,11 @@ class ControleurAjaxmouvementassure extends Controleur {
{ {
$codeSensMouvement = $this->requete->getParametreFormulaire("codeSensMouvement"); $codeSensMouvement = $this->requete->getParametreFormulaire("codeSensMouvement");
$valide = $this->requete->getParametreFormulaire("valide"); $valide = $this->requete->getParametreFormulaire("valide");
$ajoutClient = $this->requete->getParametreFormulaire("ajoutClient");
$debut = $this->requete->getParametreDate("debut"); $debut = $this->requete->getParametreDate("debut");
$fin = $this->requete->getParametreDate("fin"); $fin = $this->requete->getParametreDate("fin");
$mouvementassures = $this->mouvementassure->getMouvementassure($codeSensMouvement, $valide, $debut, $fin); $mouvementassures = $this->mouvementassure->getMouvementassure($ajoutClient, $codeSensMouvement, $valide, $debut, $fin);
$this->genererVueAjax(array('mouvementassures' => $mouvementassures)); $this->genererVueAjax(array('mouvementassures' => $mouvementassures));
} }
@ -25,5 +25,20 @@ class ControleurAjaxmouvementassure extends Controleur {
{ {
$this->genererVueAjax(array()); $this->genererVueAjax(array());
} }
public function client()
{
$_SESSION['idPolice_C'] = $this->requete->getParametreFormulaire("idPolice");
$codeSensMouvement = $this->requete->getParametreFormulaire("codeSensMouvement");
$valide = $this->requete->getParametreFormulaire("valide");
$ajoutClient = $this->requete->getParametreFormulaire("ajoutClient");
$debut = $this->requete->getParametreDate("debut");
$fin = $this->requete->getParametreDate("fin");
$mouvementassures = $this->mouvementassure->getMouvementassure($ajoutClient, $codeSensMouvement, $valide, $debut, $fin);
$this->genererVueAjax(array('mouvementassures' => $mouvementassures));
}
} }

0
Controleur/ControleurAjaxproraterprime.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxproraterprimebeneficiaire.php Executable file → Normal file
View File

View File

@ -0,0 +1,14 @@
<?php
require_once 'Framework/Controleur.php';
class ControleurAjaxsaisirpassnewuser extends Controleur {
public function __construct() {
}
public function index() {
$codeModeGenerationPass = $this->requete->getParametreFormulaire("codeModeGenerationPass");
$this->genererVueAjax(array('codeModeGenerationPass' => $codeModeGenerationPass));
}
}

0
Controleur/ControleurAjaxselectionretrait.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxsppolice.php Executable file → Normal file
View File

0
Controleur/ControleurAjaxsyntheseconsopolice.php Executable file → Normal file
View File

View File

@ -0,0 +1,89 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Client.php';
class ControleurAjaxuserrhclient extends Controleur {
private $client;
public function __construct() {
$this->client = new Client();
}
public function index()
{
$this->genererVueAjax();
}
public function reinitpaswd()
{
$codeUtilisateur = $this->requete->getParametreFormulaire("codeUtilisateur");
$this->client->reinitpaswd($codeUtilisateur);
}
public function desactiver()
{
$codeUtilisateur = $this->requete->getParametreFormulaire("codeUtilisateur");
$this->client->desactiver($codeUtilisateur);
}
public function activer()
{
$codeUtilisateur = $this->requete->getParametreFormulaire("codeUtilisateur");
$this->client->activer($codeUtilisateur);
}
public function enregistrermodifuser()
{
$idUtilisateur = $this->requete->getParametreFormulaire("idUtilisateur");
$nom = $this->requete->getParametreFormulaire("nom");
$prenoms = $this->requete->getParametreFormulaire("prenoms");
$actif = $this->requete->getParametreFormulaire("actif");
$actVisible = $this->requete->getParametreFormulaire("actVisible");
$codeLangue = $this->requete->getParametreFormulaire("codeLangue");
$AffectionVisible = $this->requete->getParametreFormulaire("AffectionVisible");
$telephone = $this->requete->getParametreFormulaire("telephone");
$email = $this->requete->getParametreFormulaire("email");
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
$this->client->enregistrermodifuser($idUtilisateur, $nom, $prenoms, $actif, $actVisible,
$codeLangue, $AffectionVisible, $telephone, $email, $codeProfil);
}
public function creeruser()
{
$codeUtilisateur = $this->requete->getParametreFormulaire("codeUtilisateur");
$nom = $this->requete->getParametreFormulaire("nom");
$prenoms = $this->requete->getParametreFormulaire("prenoms");
$telephone = $this->requete->getParametreFormulaire("telephone");
$email = $this->requete->getParametreFormulaire("email");
$motPass = $this->requete->getParametreFormulaire("motPass");
$codeLangue = $this->requete->getParametreFormulaire("codeLangue");
$actVisible = $this->requete->getParametreFormulaire("actVisible");
$AffectionVisible = $this->requete->getParametreFormulaire("AffectionVisible");
$codeModeGenerationPass = $this->requete->getParametreFormulaire("codeModeGenerationPass");
$codeModeEnvoiPass = $this->requete->getParametreFormulaire("codeModeEnvoiPass");
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
if($this->client->existelogin($codeUtilisateur))
{
$this->genererVueAjax(array('uniciteLogin' => "0", 'msgErreur' => "Login $codeUtilisateur déjà utilisé!"));
}
else
{
$this->client->creeruser($codeUtilisateur, $nom, $prenoms, $telephone, $email, $motPass, $codeLangue, $actVisible,
$AffectionVisible, $codeModeGenerationPass, $codeModeEnvoiPass, $codeProfil);
$this->genererVueAjax(array('uniciteLogin' => "1", 'msgErreur' => "Utlisateur $codeUtilisateur créé avec succès!"));
}
}
}

0
Controleur/ControleurAjaxville.php Executable file → Normal file
View File

0
Controleur/ControleurAssuranceindividuelle.php Executable file → Normal file
View File

0
Controleur/ControleurBeneficiaireprimeadherent.php Executable file → Normal file
View File

0
Controleur/ControleurChangeretatadherent.php Executable file → Normal file
View File

0
Controleur/ControleurChangeretatbeneficiaire.php Executable file → Normal file
View File

View File

@ -0,0 +1,81 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Utilisateur.php';
require_once 'Modele/Menuvueutilisateur.php';
require_once 'Framework/Localisation.php';
class ControleurChangermotpass extends Controleur
{
private $menuvue;
private $utilisateur;
public function __construct()
{
$this->utilisateur = new Utilisateur();
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue('Changermotpass');
}
public function index()
{
$this->genererVue();
}
public function changerpass()
{
$login = $_SESSION['login'];
if ($this->requete->existeParametre("ancmdp")
&& $this->requete->existeParametre("nvmdp")
&& $this->requete->existeParametre("cfnvmdp"))
{
$ancmdp = $this->requete->getParametre("ancmdp");
$nvmdp = $this->requete->getParametre("nvmdp");
$cfnvmdp = $this->requete->getParametre("cfnvmdp");
// Ici on va faire intervenir la complexité du mot de passe
$tb_complexitePassWord = $this->utilisateur->getcomplexitepassword();
$complexitePassWord = $tb_complexitePassWord['complexitePassWord'];
$longueurPassWord = $tb_complexitePassWord['longueurPassWord'];
if (strlen($nvmdp)<$longueurPassWord)
{
$this->genererVue(array('msgErreur' => _('Veuillez revoir la longueur du mot de passe!')), "index");
}/*
else if ( strlen($complexitePassWord)>1 && !(preg_match($complexitePassWord, $nvmdp)) )
{
$this->genererVue(array('msgErreur' => 'Mot de passe non conforme!'), "index");
}*/
else if ($nvmdp!=$cfnvmdp)
{
$this->genererVue(array('msgErreur' => _('Veuillez confirmer votre nouveau mot de passe!')), "index");
}
else if ($nvmdp==$ancmdp)
{
$this->genererVue(array('msgErreur' => _('Veuillez changer de mot de passe!')), "index");
}
else if (!$this->utilisateur->respecteoldpass($login, $nvmdp))
{
$this->genererVue(array('msgErreur' => _('Mot de passe récemment utilsé!')), "index");
}
else if ($this->utilisateur->connecter($login, $ancmdp))
{
$this->utilisateur->changerpass($login, $ancmdp, $nvmdp);
// $this->rediriger("Recherche");
// ajout KANE du 24/03/2025
$this->rediriger("Connexion/deconnecter/");
exit();
}
else
{
$this->genererVue(array('msgErreur' => _('Ancien mot de passe incorrect!')), "index");
}
}
else
{
$this->genererVue(array('msgErreur' => _('Veuillez revoir votre saisie!')), "index");
}
}
}

0
Controleur/ControleurCollegepolice.php Executable file → Normal file
View File

0
Controleur/ControleurConnexion.php Executable file → Normal file
View File

0
Controleur/ControleurConsultercollege.php Executable file → Normal file
View File

0
Controleur/ControleurContrat.php Executable file → Normal file
View File

0
Controleur/ControleurCreeradherent.php Executable file → Normal file
View File

0
Controleur/ControleurCreeravenant.php Executable file → Normal file
View File

0
Controleur/ControleurCreerbeneficiaire.php Executable file → Normal file
View File

0
Controleur/ControleurEmission.php Executable file → Normal file
View File

0
Controleur/ControleurFacturesfamilleadh.php Executable file → Normal file
View File

44
Controleur/ControleurFicheadherent.php Executable file → Normal file
View File

@ -21,6 +21,7 @@ class ControleurFicheadherent extends Controleur {
$_SESSION['modeDevis'] = "0"; $_SESSION['modeDevis'] = "0";
} }
public function index() { public function index() {
$idPolice = $_SESSION['idPolice_C']; $idPolice = $_SESSION['idPolice_C'];
@ -37,9 +38,48 @@ class ControleurFicheadherent extends Controleur {
$_SESSION['controlerPlafondBeneficiaire'] = "0"; $_SESSION['controlerPlafondBeneficiaire'] = "0";
$limite_adherent = $this->garantieadherent->getLimitesAdherent($idAdherent); $limite_adherent = $this->garantieadherent->getLimitesAdherent($idAdherent);
$prestationsParMois = $this->adherent->getPrestationsmensuelles($idAdherent);
$prestationsParLiens = $this->adherent->getPrestationsLiensParente($idAdherent);
// Prestations par mois
$tabPrestationsParMois = [
'mois' => array_column($prestationsParMois, 'mois'),
'consos' => array_column($prestationsParMois, 'consommationAdherent')
];
// Prestations par liens de parenté
$tabPrestationsParLiens = [
'lienparente' => array_column($prestationsParLiens, 'lienparente'),
'consos_liens' => array_column($prestationsParLiens, 'consommation')
];
$nbreLienParente = count($tabPrestationsParLiens['lienparente']);
// Consommations par garanties
$tabConsoParGaranties = [
'garanties' => array_column($garantieadherents, 'codeGarantie'),
'depenses' => array_column($garantieadherents, 'consommationFamille'),
'plafonds' => array_column($garantieadherents, 'plafondFamille')
];
// Encodage JSON
$dataConsoParMois = json_encode($tabPrestationsParMois, JSON_NUMERIC_CHECK);
$dataConsoParLiens = json_encode($tabPrestationsParLiens, JSON_NUMERIC_CHECK);
$dataConsoParGaranties = json_encode($tabConsoParGaranties, JSON_NUMERIC_CHECK);
$this->genererVue(array('adherent' => $adherent, 'beneficiaires' => $beneficiaires, 'totalbeneficiaires' => $totalbeneficiaires, $this->genererVue(array(
'garantieadherents' => $garantieadherents, 'limite_adherent' => $limite_adherent)); 'adherent' => $adherent,
'beneficiaires' => $beneficiaires,
'totalbeneficiaires' => $totalbeneficiaires,
'garantieadherents' => $garantieadherents,
'limite_adherent' => $limite_adherent,
'dataConsoParMois' => $dataConsoParMois,
'dataConsoParLiens' => $dataConsoParLiens,
'dataConsoParGaranties' => $dataConsoParGaranties,
'nbreLienParente' => $nbreLienParente
));
} }
public function supprimer() { public function supprimer() {

30
Controleur/ControleurFichebeneficiaire.php Executable file → Normal file
View File

@ -202,9 +202,35 @@ class ControleurFichebeneficiaire extends Controleur
$limite_beneficiaire = $this->garantieadherent->getLimitesBeneficiaire($idBeneficiaire); $limite_beneficiaire = $this->garantieadherent->getLimitesBeneficiaire($idBeneficiaire);
$limite_adherent = $this->garantieadherent->getLimitesAdherent($idAdherent); $limite_adherent = $this->garantieadherent->getLimitesAdherent($idAdherent);
$prestationsParMois = $this->beneficiaire->getPrestationsmensuelles($idBeneficiaire);
// Extraction directe des colonnes avec array_column
$tabConsoParMois = [
'mois' => array_column($prestationsParMois, 'mois'),
'consos' => array_column($prestationsParMois, 'consommationBeneficiaire')
];
$tabConsoParGaranties = [
'garanties' => array_column($garantieadherents, 'codeGarantie'),
'depenses' => array_column($garantieadherents, 'consommation'),
'plafonds' => array_column($garantieadherents, 'plafond')
];
// Encodage JSON
$dataConsoParMois = json_encode($tabConsoParMois, JSON_NUMERIC_CHECK);
$dataConsoParGaranties = json_encode($tabConsoParGaranties, JSON_NUMERIC_CHECK);
$this->genererVue(array('beneficiaire' => $beneficiaire, 'message' => $message, 'nouveau_fichier' => $nouveau_fichier, $this->genererVue(array(
'garantieadherents' => $garantieadherents, 'limite_beneficiaire' => $limite_beneficiaire, 'limite_adherent' => $limite_adherent)); 'beneficiaire' => $beneficiaire,
'message' => $message,
'nouveau_fichier' => $nouveau_fichier,
'garantieadherents' => $garantieadherents,
'limite_beneficiaire' => $limite_beneficiaire,
'limite_adherent' => $limite_adherent,
'dataConsoParMois' => $dataConsoParMois,
'dataConsoParGaranties' => $dataConsoParGaranties
));
} }
public function supprimer() { public function supprimer() {

0
Controleur/ControleurFichepolice.php Executable file → Normal file
View File

0
Controleur/ControleurFicheretrait.php Executable file → Normal file
View File

View File

@ -0,0 +1,45 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Client.php';
require_once 'Modele/Menuvueutilisateur.php';
require_once 'Modele/Ouinon.php';
require_once 'Modele/Langue.php';
class ControleurFicheuserrhclient extends Controleur {
private $menuvue;
private $client;
private $langue;
private $oui_non;
public function __construct()
{
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue("Ficheuserrhclient");
$this->client = new Client();
$this->oui_non = new Ouinon();
$this->langue = new Langue();
}
public function index()
{
$idUtilisateur = $this->requete->getParametreFormulaire("id");
$user_actif = $this->oui_non->getListe();
$user_actVisible = $this->oui_non->getListe();
$langue = $this->langue->getListe();
$user_AffectionVisible = $this->oui_non->getListe();
$user_rh = $this->client->getunuserrhclient($idUtilisateur);
$user_profil = $this->client->getListeProfilRh();
$this->genererVue(array(
'user_rh' => $user_rh,
'user_actif' => $user_actif,
'user_actVisible' => $user_actVisible,
'langue' => $langue,
'user_AffectionVisible' => $user_AffectionVisible,
'user_profil' => $user_profil
));
}
}

0
Controleur/ControleurGedpolice.php Executable file → Normal file
View File

0
Controleur/ControleurImportassure.php Executable file → Normal file
View File

0
Controleur/ControleurLiercolleges.php Executable file → Normal file
View File

0
Controleur/ControleurListeadherent.php Executable file → Normal file
View File

0
Controleur/ControleurListeavenant.php Executable file → Normal file
View File

0
Controleur/ControleurListeimportassure.php Executable file → Normal file
View File

6
Controleur/ControleurMouvementassure.php Executable file → Normal file
View File

@ -19,7 +19,9 @@ class ControleurMouvementassure extends Controleur {
} }
public function index() { public function index() {
$mvt_valide = $this->oui_non->getListe(); $mvt_valide = $this->oui_non->getListe();
$this->genererVue(array('sensmouvement' => $this->sensmouvement, 'mvt_valide' => $mvt_valide)); $mvt_ajoutClient = $this->oui_non->getListe();
$this->genererVue(array('sensmouvement' => $this->sensmouvement
, 'mvt_valide' => $mvt_valide, 'mvt_ajoutClient' => $mvt_ajoutClient));
} }
} }

View File

@ -0,0 +1,39 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Sensmouvement.php';
require_once 'Modele/Menuvueutilisateur.php';
require_once 'Modele/Ouinon.php';
require_once 'Modele/Police.php';
class ControleurMouvementassureclient extends Controleur {
private $menuvue;
private $sensmouvement;
private $oui_non;
private $police;
public function __construct() {
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue('Mouvementassureclient');
$this->sensmouvement = (new Sensmouvement())->getListe();
$this->oui_non = new Ouinon();
$this->police = new Police();
}
public function index() {
$polices = $this->police->getPoliceRh();
$mvt_valide = $this->oui_non->getListe();
$mvt_ajoutClient = $this->oui_non->getListe();
$this->genererVue
(
array
(
'sensmouvement' => $this->sensmouvement,
'mvt_valide' => $mvt_valide,
'polices' => $polices,
'mvt_ajoutClient' => $mvt_ajoutClient,
)
);
}
}

0
Controleur/ControleurNonfacturepolice.php Executable file → Normal file
View File

0
Controleur/ControleurNonfacturepolicecons.php Executable file → Normal file
View File

View File

@ -0,0 +1,51 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Client.php';
require_once 'Modele/Ouinon.php';
require_once 'Modele/Langue.php';
require_once 'Modele/Societeuser.php';
require_once 'Modele/Menuvueutilisateur.php';
class ControleurNouveluserrh extends Controleur {
private $menuvue;
private $client;
private $langue;
private $oui_non;
private $societeuser;
public function __construct() {
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue('Nouveluserrh');
$this->client = new Client();
$this->langue = new Langue();
$this->oui_non = new Ouinon();
$this->societeuser = new Societeuser();
}
public function index()
{
$idClient = $_SESSION['idClient_C'];
//$gc = $this->client->getGcAssureurCode($codeGcAssureur);
$langue = $this->langue->getListe();
$user_actVisible = $this->oui_non->getListe();
$user_AffectionVisible = $this->oui_non->getListe();
$user_profil = $this->client->getListeProfilRh();
$paramsgenerationpass = $this->societeuser->getparamsgenerationpass();
$modeenvoipass = $this->societeuser->getmodeenvoipass();
$modegenerationpass = $this->societeuser->getmodegenerationpass();
$this->genererVue(array(
//'gc' => $gc,
'langue' => $langue,
'user_actVisible' => $user_actVisible,
'paramsgenerationpass' => $paramsgenerationpass,
'modeenvoipass' => $modeenvoipass,
'modegenerationpass' => $modegenerationpass,
'user_AffectionVisible' => $user_AffectionVisible,
'user_profil' => $user_profil
));
}
}

0
Controleur/ControleurPlafondadherent.php Executable file → Normal file
View File

0
Controleur/ControleurRechercherassure.php Executable file → Normal file
View File

View File

@ -0,0 +1,22 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Utilisateur.php';
require_once 'Modele/Menuvueutilisateur.php';
class ControleurRoles extends Controleur
{
private $utilisateur;
public function __construct() {
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue('Roles');
$this->utilisateur = new Utilisateur();
}
public function index()
{
$profil = $this->utilisateur->getListeProfilCode();
$this->genererVue(array('profil' => $profil));
}
}

0
Controleur/ControleurSpadherent.php Executable file → Normal file
View File

0
Controleur/ControleurSppolice.php Executable file → Normal file
View File

0
Controleur/ControleurSyntheseconsopolice.php Executable file → Normal file
View File

0
Controleur/ControleurTextecp.php Executable file → Normal file
View File

View File

@ -0,0 +1,26 @@
<?php
require_once 'Framework/Controleur.php';
require_once 'Modele/Client.php';
require_once 'Modele/Menuvueutilisateur.php';
class ControleurUsersrhclient extends Controleur {
private $menuvue;
private $gc;
public function __construct() {
$this->menuvue = new Menuvueutilisateur();
$this->menuvue->getMenuVue("Usersrhclient");
$this->client = new Client();
}
public function index() {
$idClient = $_SESSION['idClient_C'];
$client = $this->client->getClientId($idClient);
$users = $this->client->getusersrhclient($idClient);
$this->genererVue(array('client' => $client, 'users' => $users));
}
}

View File

@ -6,7 +6,7 @@
function getMoritio_2() function getMoritio_2()
{ {
return "2026-01-31"; return "2027-01-31";
} }
function getLicensed($codeSociete, $nomSociete) function getLicensed($codeSociete, $nomSociete)

File diff suppressed because it is too large Load Diff

0
Js/sw-register.js Executable file → Normal file
View File

View File

@ -846,5 +846,34 @@ class Adherent extends Modele {
$resultat = $this->executerRequete($sql, array($idAdherent)); $resultat = $this->executerRequete($sql, array($idAdherent));
return $resultat->fetch(PDO::FETCH_ASSOC); return $resultat->fetch(PDO::FETCH_ASSOC);
} }
// Ajouté par Sorel le 12-01-2026 => Gestion des graphiques de la famille
public function getPrestationsmensuelles($idAdherent){
if (isset($_SESSION['lang']) && $_SESSION['lang']=="en_US"){
$sql = 'call prestations_mensuelles_famille_eng(?)';
}else{
$sql = 'call prestations_mensuelles_famille(?)';
}
$resultat = $this->executerRequete($sql, array($idAdherent));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getPrestationsLiensParente($idAdherent){
if (isset($_SESSION['lang']) && $_SESSION['lang']=="en_US"){
$sql = 'call prestations_lienparente_famille_eng(?)';
}else{
$sql = 'call prestations_lienparente_famille(?)';
}
$resultat = $this->executerRequete($sql, array($idAdherent));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
} }

0
Modele/Adherent_temp.php Executable file → Normal file
View File

0
Modele/Avenant.php Executable file → Normal file
View File

View File

@ -1644,5 +1644,18 @@ class Beneficiaire extends Modele {
return $resultat->fetch(PDO::FETCH_ASSOC); return $resultat->fetch(PDO::FETCH_ASSOC);
} }
public function getPrestationsmensuelles($idBeneficiaire){
if (isset($_SESSION['lang']) && $_SESSION['lang']=="en_US"){
$sql = 'call prestations_mensuelles_beneficiaire_eng(?)';
}else{
$sql = 'call prestations_mensuelles_beneficiaire(?)';
}
$resultat = $this->executerRequete($sql, array($idBeneficiaire));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
} }

View File

@ -287,4 +287,106 @@ class Client extends Modele {
return $resultat->fetchAll(PDO::FETCH_ASSOC); return $resultat->fetchAll(PDO::FETCH_ASSOC);
} }
public function getusersrhclient($idClient)
{
$sql = 'call sp_c_get_users_rh(?)';
$resultat = $this->executerRequete($sql, array($idClient));
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function getunuserrhclient($idUtilisateur)
{
$sql = 'call sp_un_user_rh_client(?)';
$resultat = $this->executerRequete($sql, array($idUtilisateur));
return $resultat->fetch(PDO::FETCH_ASSOC);
}
public function getListeProfilRh()
{
if (est_anglophone()){
$sql = 'call sp_get_liste_profil_rh_eng()';
}else{
$sql = 'call sp_get_liste_profil_rh()';
}
$resultat = $this->executerRequete($sql);
return $resultat->fetchAll(PDO::FETCH_ASSOC);
}
public function enregistrermodifuser($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible, $telephone, $email, $codeProfil)
{
$user = $_SESSION['login'];
$sql = 'call sp_c_modifier_user_rh(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);';
$resultat = $this->executerRequete($sql, array($idUtilisateur, $nom, $prenoms, $actif, $actVisible, $codeLangue, $AffectionVisible, $user, $telephone, $email, $codeProfil));
}
public function reinitpaswd($codeUtilisateur)
{
$sql = 'call sp_c_reinit_utilisateur_rh_client(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function desactiver($codeUtilisateur)
{
$sql = 'call sp_c_desactiver_utilisateur_rh_client(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function activer($codeUtilisateur)
{
$sql = 'call sp_c_activer_utilisateur_rh_client(?)';
$this->executerRequete($sql, array($codeUtilisateur));
}
public function existelogin($codeUtilisateur) {
$sql = 'select id FROM c_utilisateur WHERE (codeUtilisateur=?)';
$resultat = $this->executerRequete($sql, array($codeUtilisateur));
return ($resultat->rowCount() > 0);
}
public function creeruser($codeUtilisateur, $nom, $prenoms, $telephone, $email, $motPass, $codeLangue,
$actVisible, $AffectionVisible, $codeModeGenerationPass, $codeModeEnvoiPass, $codeProfil)
{
$codeSociete = $_SESSION['codeSociete'];
$user = $_SESSION['login'];
$idClient = $_SESSION['idClient_C'];
$numeroClient = $_SESSION['numeroClient_C'];
$passAutoGen = "";
switch ($codeModeGenerationPass)
{
case "0":
$hash = password_hash($motPass, PASSWORD_DEFAULT);
break;
case "1":
$passAutoGen = uniqid();
$hash = password_hash($passAutoGen, PASSWORD_DEFAULT);
$motPass = $passAutoGen;
break;
case 2:
$hash = "";
break;
default:
$hash = password_hash($motPass, PASSWORD_DEFAULT);
}
$sql = 'call sp_c_creer_user_rh_client(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);';
$this->executerRequete($sql, array($codeSociete, $idClient, $numeroClient, $codeUtilisateur, $nom, $prenoms, $telephone,
$email, $hash, $codeLangue, $actVisible, $AffectionVisible, $user, $codeModeGenerationPass,
$passAutoGen, $codeModeEnvoiPass, $motPass, $codeProfil));
}
} }

0
Modele/Collegepolice.php Executable file → Normal file
View File

0
Modele/Emission.php Executable file → Normal file
View File

Some files were not shown because too many files have changed in this diff Show More