EmployeeManager est une application Android native permettant de gérer une liste d'employés via une base de données distante MySQL ou PostgreSQL. Elle implémente les opérations CRUD complètes (Créer, Lire, Mettre à jour, Supprimer), un système de statistiques salariales en temps réel, ainsi qu'une visualisation graphique des données sous forme d'histogramme ou de camembert.
| Couche | Technologie |
|---|---|
| Mobile | Android (Java / Kotlin) |
| Interface | XML Layouts + ListView |
| Graphiques | MPAndroidChart |
| Base de données | MySQL ou PostgreSQL (distante) |
| Communication réseau | Retrofit 2 / Volley |
| Backend (requis) | PHP / Node.js / Spring Boot |
Formulaire de saisie pour enregistrer un nouvel employé avec son nom et son salaire.
Visualisation de tous les employés dans un composant ListView avec les colonnes :
-
Nom
-
Salaire
-
Observation — calculée automatiquement selon les règles suivantes :
Condition Observation Salaire < 1 000🔴 Médiocre 1 000 ≤Salaire≤ 5 000🟡 Moyen Salaire > 5 000🟢 Grand
- Mise à jour des informations d'un employé via un formulaire pré-rempli
- Suppression d'un enregistrement avec boîte de dialogue de confirmation
Affichage en bas de la liste des indicateurs suivants, recalculés en temps réel :
| Indicateur | Description |
|---|---|
| 💰 Salaire total | Somme de tous les salaires |
| 📉 Salaire minimal | Valeur la plus basse |
| 📈 Salaire maximal | Valeur la plus haute |
Représentation visuelle des salaires des employés au choix :
- Histogramme — Comparaison des salaires par employé (barres verticales)
- Camembert — Répartition proportionnelle des salaires (pie chart)
CREATE TABLE Employe (
numEmp INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(100) NOT NULL,
salaire DECIMAL(10, 2) NOT NULL
);- Android Studio Hedgehog ou supérieur
- SDK Android API 21+ (Android 5.0 Lollipop minimum)
- Un serveur backend avec MySQL ou PostgreSQL configuré
- JDK 11 ou supérieur
- Cloner le dépôt
git clone https://github.com/<votre-username>/gestion-employe.git
cd gestion-employe- Ouvrir dans Android Studio
File > Open > sélectionner le dossier du projet
- Ajouter les dépendances dans
build.gradle (app)
dependencies {
// Retrofit pour les requêtes HTTP
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
// MPAndroidChart pour les graphiques
implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
}- Synchroniser et lancer
Build > Sync Project with Gradle Files
Run > Run 'app'
- Architecture MVC — Séparation claire entre modèle, vue et contrôleur
- Appels réseau asynchrones — Requêtes HTTP non bloquantes avec Retrofit
- Adaptateur personnalisé —
BaseAdapterpour personnaliser chaque ligne duListView - Calcul dynamique — Observation et statistiques calculées côté client à chaque chargement
- Visualisation de données — Intégration de MPAndroidChart pour les graphiques interactifs
- Base de données distante — Persistance via API REST connectée à MySQL / PostgreSQL
mrfanasina
- GitHub : @mrfanasina
Ce projet est distribué sous licence MIT. Voir le fichier LICENSE pour plus de détails.