Refactor: Standardisation complète de l'architecture REST

🔧 RESTRUCTURATION
- UserResource déplacé de adapter.http vers application.rest
- FournisseurResource déplacé vers application.rest
- Suppression des contrôleurs obsolètes (presentation.controller)
- Suppression de MaterielFournisseurService en doublon

📝 STANDARDISATION DOCUMENTATION
- Annotations OpenAPI uniformes (@Operation, @APIResponse, @Parameter)
- Descriptions concises et cohérentes pour tous les endpoints
- Codes de réponse HTTP standards (200, 201, 400, 404, 500)

🛠️ ENDPOINTS USERS STANDARDISÉS
- GET /api/v1/users - Liste tous les utilisateurs
- GET /api/v1/users/{id} - Détails d'un utilisateur
- GET /api/v1/users/stats - Statistiques globales
- GET /api/v1/users/count - Comptage
- GET /api/v1/users/pending - Utilisateurs en attente
- POST /api/v1/users - Création
- PUT /api/v1/users/{id} - Mise à jour
- DELETE /api/v1/users/{id} - Suppression
- POST /api/v1/users/{id}/approve - Approbation
- POST /api/v1/users/{id}/reject - Rejet
- PUT /api/v1/users/{id}/status - Changement de statut
- PUT /api/v1/users/{id}/role - Changement de rôle

⚠️ GESTION D'ERREURS
- Format uniforme: Map.of("error", "message")
- Codes HTTP cohérents avec les autres ressources
- Validation des entrées standardisée

 VALIDATION
- Compilation réussie: mvn clean compile -DskipTests
- Pattern conforme aux autres ressources (PhaseTemplate, Fournisseur)
- Documentation OpenAPI/Swagger complète et cohérente
This commit is contained in:
dahoud
2025-10-23 10:43:32 +00:00
parent de943a4a29
commit fba7666268
19 changed files with 1445 additions and 2651 deletions

23
.gitignore vendored
View File

@@ -58,10 +58,19 @@ jacoco.exec
# Environment files
.env
.env.local
.env.development
.env.development.local
.env.test
.env.test.local
.env.production
.env.production.local
.env.*
!.env.example
env.local
env.development
env.development.local
env.test
env.test.local
env.production
env.production.local
# Secrets and sensitive files
*.secret
*secret*
backend-secret.txt
keycloak-secret.txt
db-password.txt