diff --git a/src/main/java/dev/lions/unionflow/client/view/MembreRechercheBean.java b/src/main/java/dev/lions/unionflow/client/view/MembreRechercheBean.java index 5279934..8335079 100644 --- a/src/main/java/dev/lions/unionflow/client/view/MembreRechercheBean.java +++ b/src/main/java/dev/lions/unionflow/client/view/MembreRechercheBean.java @@ -1,6 +1,7 @@ package dev.lions.unionflow.client.view; import dev.lions.unionflow.server.api.dto.membre.response.MembreResponse; +import dev.lions.unionflow.server.api.dto.membre.response.MembreSummaryResponse; import dev.lions.unionflow.server.api.dto.common.PagedResponse; import dev.lions.unionflow.client.service.MembreService; import dev.lions.unionflow.client.service.OrganisationService; @@ -69,7 +70,7 @@ public class MembreRechercheBean implements Serializable { private void initializeStatistiques() { statistiques = new Statistiques(); try { - List membres = membreService.listerTous().getData(); + List membres = membreService.listerTous().getData(); statistiques.setTotalMembres(membres.size()); } catch (Exception e) { LOG.errorf(e, "Erreur lors du calcul des statistiques"); @@ -85,8 +86,8 @@ public class MembreRechercheBean implements Serializable { selectedMembres = new ArrayList<>(); try { - List membresDTO = membreService.listerTous().getData(); - for (MembreResponse dto : membresDTO) { + List membresDTO = membreService.listerTous().getData(); + for (MembreSummaryResponse dto : membresDTO) { Membre membre = convertToMembre(dto); tousLesMembres.add(membre); } @@ -106,14 +107,35 @@ public class MembreRechercheBean implements Serializable { membre.setEmail(dto.getEmail()); membre.setTelephone(dto.getTelephone()); membre.setProfession(dto.getProfession()); - membre.setVille(""); // Ville non disponible dans MembreResponse - membre.setTypeMembre("ACTIF"); // Type membre non disponible dans MembreResponse - if (dto.getStatutCompte() != null) { // Corrigé: getStatutCompte + membre.setVille(""); + membre.setTypeMembre("ACTIF"); + if (dto.getStatutCompte() != null) { membre.setStatut(dto.getStatutCompte()); } else { membre.setStatut("ACTIF"); } - membre.setDateAdhesion(dto.getDateAdhesion()); // Corrigé: getDateAdhesion + membre.setDateAdhesion(dto.getDateAdhesion()); + membre.setCotisationStatut("N/A"); + return membre; + } + + private Membre convertToMembre(MembreSummaryResponse dto) { + Membre membre = new Membre(); + membre.setId(dto.getId()); + membre.setNumeroMembre(dto.getNumeroMembre()); + membre.setNom(dto.getNom()); + membre.setPrenom(dto.getPrenom()); + membre.setEmail(dto.getEmail()); + membre.setTelephone(dto.getTelephone()); + membre.setProfession(dto.getProfession()); + membre.setVille(""); + membre.setTypeMembre("ACTIF"); + if (dto.getStatutCompte() != null) { + membre.setStatut(dto.getStatutCompte()); + } else { + membre.setStatut("ACTIF"); + } + membre.setDateAdhesion(dto.getDateAdhesion()); membre.setCotisationStatut("N/A"); return membre; } diff --git a/src/main/java/dev/lions/unionflow/client/view/RapportsBean.java b/src/main/java/dev/lions/unionflow/client/view/RapportsBean.java index eaff517..c5ad479 100644 --- a/src/main/java/dev/lions/unionflow/client/view/RapportsBean.java +++ b/src/main/java/dev/lions/unionflow/client/view/RapportsBean.java @@ -197,7 +197,7 @@ public class RapportsBean implements Serializable { repartitionMembres = new ArrayList<>(); try { // Corrigé: MembreResponse est dans server.api, pas client.dto; et getStatut() → getStatutCompte() - List membres = membreService.listerTous().getData(); + List membres = membreService.listerTous().getData(); long actifs = membres.stream().filter(m -> "ACTIF".equals(m.getStatutCompte())).count(); long inactifs = membres.stream().filter(m -> "INACTIF".equals(m.getStatutCompte())).count(); long total = membres.size();