feat(sprint-13.A api 2026-04-25): bump 1.0.9 + OrganisationResponse expose referentielComptable + complianceOfficerId

Pendant pour Sprint 10 — UpdateOrganisationRequest avait déjà ces 2 champs (Sprint 10),
mais OrganisationResponse ne les exposait pas en lecture. Le formulaire d'édition web
ne pouvait donc pas afficher leur valeur initiale lors du load.

Quarkus inchangé (3.27.3 — décision flotte LTS sur 3.27 jusqu'à fin août 2026).

Modifications
- OrganisationResponse : 2 nouveaux champs String referentielComptable + UUID complianceOfficerId
- Tests : 2 tests Jacoco 100% (null par défaut, builder, setter ; pour les 2 nouveaux champs)
- Bump version 1.0.8 → 1.0.9

ACTION USER : `mvn clean install` puis `mvn deploy` pour publier 1.0.9 sur Gitea.
This commit is contained in:
dahoud
2026-04-25 15:22:26 +00:00
parent f263d4f51a
commit 7a596f68bd
3 changed files with 42 additions and 1 deletions

View File

@@ -6,7 +6,7 @@
<groupId>dev.lions.unionflow</groupId> <groupId>dev.lions.unionflow</groupId>
<artifactId>unionflow-server-api</artifactId> <artifactId>unionflow-server-api</artifactId>
<version>1.0.8</version> <version>1.0.9</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>UnionFlow Server API</name> <name>UnionFlow Server API</name>

View File

@@ -91,4 +91,11 @@ public class OrganisationResponse extends BaseResponse {
// ── Paramètres ───────────────────────────── // ── Paramètres ─────────────────────────────
private Boolean organisationPublique; private Boolean organisationPublique;
private Boolean accepteNouveauxMembres; private Boolean accepteNouveauxMembres;
// ── Conformité (Sprint 1 — Instr. BCEAO + OHADA) ─────────────────────
/** Référentiel comptable applicable : SYSCOHADA, SYCEBNL, PCSFD_UMOA. */
private String referentielComptable;
/** UUID du Compliance Officer désigné (Instr. BCEAO 001-03-2025). */
private UUID complianceOfficerId;
} }

View File

@@ -52,4 +52,38 @@ class OrganisationResponseTest {
r.setOrganisationParenteNom("Parent Org"); r.setOrganisationParenteNom("Parent Org");
assertThat(r.getOrganisationParenteNom()).isEqualTo("Parent Org"); assertThat(r.getOrganisationParenteNom()).isEqualTo("Parent Org");
} }
// ── Sprint 13 — Conformité (referentielComptable + complianceOfficerId) ─────
@Test
@DisplayName("referentielComptable null par défaut, builder + setter fonctionnent")
void referentielComptable_nullDefaultAndBuilderSetter() {
OrganisationResponse empty = OrganisationResponse.builder().build();
assertThat(empty.getReferentielComptable()).isNull();
OrganisationResponse builderSet = OrganisationResponse.builder()
.referentielComptable("SYCEBNL").build();
assertThat(builderSet.getReferentielComptable()).isEqualTo("SYCEBNL");
OrganisationResponse setterSet = OrganisationResponse.builder().build();
setterSet.setReferentielComptable("PCSFD_UMOA");
assertThat(setterSet.getReferentielComptable()).isEqualTo("PCSFD_UMOA");
}
@Test
@DisplayName("complianceOfficerId null par défaut, builder + setter fonctionnent")
void complianceOfficerId_nullDefaultAndBuilderSetter() {
OrganisationResponse empty = OrganisationResponse.builder().build();
assertThat(empty.getComplianceOfficerId()).isNull();
java.util.UUID id1 = java.util.UUID.randomUUID();
OrganisationResponse builderSet = OrganisationResponse.builder()
.complianceOfficerId(id1).build();
assertThat(builderSet.getComplianceOfficerId()).isEqualTo(id1);
java.util.UUID id2 = java.util.UUID.randomUUID();
OrganisationResponse setterSet = OrganisationResponse.builder().build();
setterSet.setComplianceOfficerId(id2);
assertThat(setterSet.getComplianceOfficerId()).isEqualTo(id2);
}
} }