feat(api): ajout totalCotisationsPayeesToutTemps dans MembreDashboardSyntheseResponse
- Champ pour la carte Contribution Totale (cotisations tout temps) - Test unitaire mis à jour Made-with: Cursor
This commit is contained in:
@@ -0,0 +1,44 @@
|
|||||||
|
package dev.lions.unionflow.server.api.dto.dashboard;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DTO de synthèse dashboard membre (cotisations, épargne, événements, aides).
|
||||||
|
*
|
||||||
|
* @author UnionFlow Team
|
||||||
|
* @version 1.0
|
||||||
|
*/
|
||||||
|
public record MembreDashboardSyntheseResponse(
|
||||||
|
String prenom,
|
||||||
|
String nom,
|
||||||
|
LocalDate dateInscription,
|
||||||
|
|
||||||
|
// Cotisations
|
||||||
|
BigDecimal mesCotisationsPaiement,
|
||||||
|
/** Total des cotisations payées sur l'année en cours (pour affichage dashboard). */
|
||||||
|
BigDecimal totalCotisationsPayeesAnnee,
|
||||||
|
/** Total des cotisations payées tout temps (pour la carte « Contribution Totale »). */
|
||||||
|
BigDecimal totalCotisationsPayeesToutTemps,
|
||||||
|
/** Nombre de cotisations (payées ou total) pour la carte « Cotisations ». */
|
||||||
|
Integer nombreCotisationsPayees,
|
||||||
|
String statutCotisations,
|
||||||
|
Integer tauxCotisationsPerso,
|
||||||
|
|
||||||
|
// Epargne
|
||||||
|
BigDecimal monSoldeEpargne,
|
||||||
|
BigDecimal evolutionEpargneNombre,
|
||||||
|
String evolutionEpargne,
|
||||||
|
Integer objectifEpargne,
|
||||||
|
|
||||||
|
// Evenements
|
||||||
|
Integer mesEvenementsInscrits,
|
||||||
|
Integer evenementsAVenir,
|
||||||
|
Integer tauxParticipationPerso,
|
||||||
|
|
||||||
|
// Aides
|
||||||
|
Integer mesDemandesAide,
|
||||||
|
Integer aidesEnCours,
|
||||||
|
Integer tauxAidesApprouvees) implements Serializable {
|
||||||
|
}
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
package dev.lions.unionflow.server.api.dto.dashboard;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import org.junit.jupiter.api.DisplayName;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class MembreDashboardSyntheseResponseTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@DisplayName("Record MembreDashboardSyntheseResponse : construction et accesseurs")
|
||||||
|
void record_constructionAndAccessors() {
|
||||||
|
MembreDashboardSyntheseResponse dto = new MembreDashboardSyntheseResponse(
|
||||||
|
"Jean",
|
||||||
|
"Dupont",
|
||||||
|
LocalDate.of(2023, 1, 15),
|
||||||
|
BigDecimal.valueOf(50000),
|
||||||
|
BigDecimal.valueOf(150000),
|
||||||
|
BigDecimal.valueOf(200000),
|
||||||
|
5,
|
||||||
|
"À jour",
|
||||||
|
100,
|
||||||
|
BigDecimal.valueOf(250000),
|
||||||
|
BigDecimal.valueOf(10000),
|
||||||
|
"+4%",
|
||||||
|
500000,
|
||||||
|
3,
|
||||||
|
2,
|
||||||
|
75,
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
100
|
||||||
|
);
|
||||||
|
|
||||||
|
assertThat(dto.prenom()).isEqualTo("Jean");
|
||||||
|
assertThat(dto.nom()).isEqualTo("Dupont");
|
||||||
|
assertThat(dto.dateInscription()).isEqualTo(LocalDate.of(2023, 1, 15));
|
||||||
|
assertThat(dto.mesCotisationsPaiement()).isEqualByComparingTo(BigDecimal.valueOf(50000));
|
||||||
|
assertThat(dto.totalCotisationsPayeesAnnee()).isEqualByComparingTo(BigDecimal.valueOf(150000));
|
||||||
|
assertThat(dto.totalCotisationsPayeesToutTemps()).isEqualByComparingTo(BigDecimal.valueOf(200000));
|
||||||
|
assertThat(dto.nombreCotisationsPayees()).isEqualTo(5);
|
||||||
|
assertThat(dto.statutCotisations()).isEqualTo("À jour");
|
||||||
|
assertThat(dto.tauxCotisationsPerso()).isEqualTo(100);
|
||||||
|
assertThat(dto.monSoldeEpargne()).isEqualByComparingTo(BigDecimal.valueOf(250000));
|
||||||
|
assertThat(dto.objectifEpargne()).isEqualTo(500000);
|
||||||
|
assertThat(dto.mesEvenementsInscrits()).isEqualTo(3);
|
||||||
|
assertThat(dto.tauxParticipationPerso()).isEqualTo(75);
|
||||||
|
assertThat(dto.mesDemandesAide()).isEqualTo(1);
|
||||||
|
assertThat(dto.tauxAidesApprouvees()).isEqualTo(100);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user