@Security.Authenticated(SecuriteAPI.class) public static Result supprimerUtilisateur(Long id, Boolean supprPersonne) { if (SecuriteAPI.utilisateur().getRole() != Utilisateur.Role.ADMIN) { return unauthorized(); } UtilisateurService.Statut statut = UtilisateurService.supprimerUtilisateur(id, supprPersonne); if (statut == UtilisateurService.Statut.UTILISATEUR_NON_TROUVE) { return ok( JsonUtils.genererReponseJson(JsonUtils.JsonStatut.ERREUR, "Utilisateur non trouvé.")); } else if (statut == UtilisateurService.Statut.OK) { return ok(JsonUtils.genererReponseJson(JsonUtils.JsonStatut.OK, "Utilisateur supprimé.")); } else { Logger.error("Controllers/Admin - majUtilisateur - statut inconnu: " + statut.name()); return ok( JsonUtils.genererReponseJson( JsonUtils.JsonStatut.ERREUR, "Erreur interne. Les administrateurs ont été prévenus.")); } // attendu: msg.statut }
@Security.Authenticated(SecuriteAPI.class) public static Result majUtilisateur() { if (SecuriteAPI.utilisateur().getRole() != Utilisateur.Role.ADMIN) { return unauthorized(); } ObjectNode root = (ObjectNode) request().body().asJson(); Utilisateur nouveau = Utilisateur.construire(root, true); if (nouveau == null) { return ok(JsonUtils.genererReponseJson(JsonUtils.JsonStatut.ERREUR, "Arguments manquants.")); } UtilisateurService.Statut statut = UtilisateurService.adminMajUtilisateur( nouveau, nouveau.getId() == Constantes.JSON_ID_UTILISATEUR_INEXISTANT); if (statut == UtilisateurService.Statut.UTILISATEUR_NON_TROUVE) { return ok( JsonUtils.genererReponseJson(JsonUtils.JsonStatut.ERREUR, "Utilisateur non trouvé.")); } else if (statut == UtilisateurService.Statut.LOGIN_DEJA_PRIS) { return ok( JsonUtils.genererReponseJson( JsonUtils.JsonStatut.ERREUR, "Nom d'utilisateur déjà pris.")); } else if (statut == UtilisateurService.Statut.ERREUR_INTERNE) { return ok( JsonUtils.genererReponseJson( JsonUtils.JsonStatut.ERREUR, "Erreur interne. Les administrateurs ont été prévenus.")); } else if (statut == UtilisateurService.Statut.OK) { return ok(JsonUtils.genererReponseJson(JsonUtils.JsonStatut.OK, "Modification effectuée")); } else { Logger.error("Controllers/Admin - majUtilisateur - statut inconnu: " + statut.name()); return ok( JsonUtils.genererReponseJson( JsonUtils.JsonStatut.ERREUR, "Erreur interne. Les administrateurs ont été prévenus.")); } // attendu: msg.statut }