diff --git a/src/main/java/dev/lions/unionflow/server/resource/OrganisationResource.java b/src/main/java/dev/lions/unionflow/server/resource/OrganisationResource.java index 21c5fe4..6576f05 100644 --- a/src/main/java/dev/lions/unionflow/server/resource/OrganisationResource.java +++ b/src/main/java/dev/lions/unionflow/server/resource/OrganisationResource.java @@ -53,6 +53,9 @@ public class OrganisationResource { @Inject SecurityIdentity securityIdentity; + @Inject + dev.lions.unionflow.server.repository.MembreOrganisationRepository membreOrganisationRepository; + /** Récupère les organisations du membre connecté (pour admin d'organisation) */ @GET @Path("/mes") @@ -452,6 +455,18 @@ public class OrganisationResource { } } + /** Retourne le nombre de membres actifs d'une organisation. */ + @GET + @Path("/{id}/membres/count") + @Authenticated + @Operation( + summary = "Nombre de membres", + description = "Retourne le nombre de membres actifs de l'organisation.") + public Response countMembres(@PathParam("id") UUID id) { + long count = membreOrganisationRepository.findAllByOrganisationId(id).size(); + return Response.ok(Map.of("count", count)).build(); + } + /** Obtient les statistiques des organisations */ @GET @RolesAllowed({"SUPER_ADMIN", "ADMIN", "ADMIN_ORGANISATION"})