Gestion des salaires
Application web Laravel de gestion des salaires avec dashboard temps réel, calculs automatiques via triggers MySQL, filtres de recherche avancés, statistiques et gestion des rôles utilisateurs.
Captures d'écran
Démonstrations
Ce que fait l'application
Authentification & rôles
Système de connexion sécurisé avec gestion de rôles — accès différencié selon le profil utilisateur.
Dashboard temps réel
Vue centralisée des données salariales — indicateurs clés, totaux et alertes mis à jour dynamiquement.
Fiche employé complète
Consultation et modification des informations salariales par employé — historique, primes, retenues.
Calculs automatiques via trigger
Trigger MySQL déclenché à chaque modification — recalcul automatique du salaire net, cotisations et brut.
Filtres & recherche avancée
Filtrage multi-critères en temps réel — par nom, département, tranche salariale ou statut.
Statistiques & graphiques
Visualisation des données salariales — répartition par département, évolution, masse salariale globale.
Schéma complet — GSB_total
evaluation
PKidint
FKpraticien_idint
notedouble
commentairevarchar(255)
type_evaluateurvarchar(10)
date_evaluationdate
userconge
PKidint
FKpraticien_idint
date_debutdate
date_findate
statutenum
commentairetext
date_demandedatetime
congeutilisateur
PKidCongeint
FKidUtilisateurint
etatCongeenum
👁 v_praticiens
Vue — JOIN praticien, calcul anciennete_calculee via TIMESTAMPDIFF. Exposée par l'API REST.
praticien
PKidint
nomvarchar(50)
prenomvarchar(60)
date_embauchedate
ancienneteint
echelonint
adressevarchar(100)
coef_notorietefloat
salairedouble
FKcode_type_praticienvarchar(6)
FKid_villemediumint
usernamevarchar(50)
mdpvarchar(255)
commentairevarchar(255)
conges_restantint
grille_salariale
PKidint
FKcode_type_praticienvarchar(6)
echelonint
anciennete_minint
anciennete_maxint
salairedouble
utilisateur
PKidint
nomvarchar(50)
mdpvarchar(50)
isAdminint
commentairevarchar(250)
type_praticien
PKcodevarchar(6)
libellevarchar(50)
lieuvarchar(70)
typevarchar(1)
ville
PKidmediumint
nomvarchar(45)
code_postalvarchar(255)
communevarchar(3)
code_communevarchar(5)
FKid_departementint
departement
PKidint
codevarchar(3)
nomvarchar(255)
FKid_regiontinyint
region
PKidtinyint
codevarchar(3)
nomvarchar(255)
communevarchar(4)
FKid_ville↺ circ.
Clé primaire (PK)
Clé étrangère (FK)
Relation FK→PK
Vue SQL
↺ region.id_ville → ville (référence circulaire, non tracée)
Technologies utilisées
PHPLangage backend
LaravelFramework MVC
MySQLBDD & triggers
API RESTÉchanges données
Git / GitHubVersioning
Ce que j'ai appris
Triggers MySQL
Concevoir et déboguer des triggers pour automatiser les recalculs salariaux a été la partie
la plus technique. Comprendre l'ordre d'exécution et les cas limites m'a demandé de nombreux tests en base.
Filtres dynamiques sans rechargement
Implémenter des filtres réactifs côté frontend communiquant avec l'API REST Laravel a nécessité
une bonne gestion des requêtes asynchrones et de la pagination côté serveur.
Architecture MVC avec Laravel
Ce projet m'a permis de consolider la maîtrise du framework Laravel — Eloquent ORM, middlewares
d'authentification, ressources API et séparation stricte des responsabilités.