diff --git a/src/main/java/fr/titionfire/ffsaf/data/model/AffiliationRequestModel.java b/src/main/java/fr/titionfire/ffsaf/data/model/AffiliationRequestModel.java index 9e4ce1b..622d883 100644 --- a/src/main/java/fr/titionfire/ffsaf/data/model/AffiliationRequestModel.java +++ b/src/main/java/fr/titionfire/ffsaf/data/model/AffiliationRequestModel.java @@ -24,6 +24,7 @@ public class AffiliationRequestModel { long siret; String RNA; String address; + String contact; String m1_lname; String m1_fname; diff --git a/src/main/java/fr/titionfire/ffsaf/domain/service/AffiliationService.java b/src/main/java/fr/titionfire/ffsaf/domain/service/AffiliationService.java index 63f1121..87b3e69 100644 --- a/src/main/java/fr/titionfire/ffsaf/domain/service/AffiliationService.java +++ b/src/main/java/fr/titionfire/ffsaf/domain/service/AffiliationService.java @@ -118,6 +118,7 @@ public class AffiliationService { origine.setName(model.getName()); origine.setRNA(model.getRNA()); origine.setAddress(model.getAddress()); + origine.setContact(model.getContact()); origine.setM1_lname(model.getM1_lname()); origine.setM1_fname(model.getM1_fname()); origine.setM1_lincence(model.getM1_lincence()); @@ -159,6 +160,7 @@ public class AffiliationService { model.setSiret(form.getSiret()); model.setRNA(form.getRna()); model.setAddress(form.getAddress()); + model.setContact(form.getContact()); if (form.getM1_mode() == 2) { model.setM1_lname(form.getM1_lname()); @@ -285,6 +287,7 @@ public class AffiliationService { club.setSIRET(form.getSiret()); club.setRNA(form.getRna()); club.setAddress(form.getAddress()); + club.setContact_intern(form.getContact()); club.setAffiliations(new ArrayList<>()); return Panache.withTransaction(() -> clubRepository.persist(club) .chain(c -> sequenceRepository.getNextValueInTransaction(SequenceType.Affiliation) @@ -321,6 +324,7 @@ public class AffiliationService { club.setSIRET(form.getSiret()); club.setRNA(form.getRna()); club.setAddress(form.getAddress()); + club.setContact_intern(form.getContact()); return Panache.withTransaction(() -> clubRepository.persist(club) .chain(() -> repository.persist(new AffiliationModel(null, club, model.getSaison()))) .chain(() -> repositoryRequest.delete(model))); diff --git a/src/main/java/fr/titionfire/ffsaf/rest/data/SimpleReqAffiliation.java b/src/main/java/fr/titionfire/ffsaf/rest/data/SimpleReqAffiliation.java index 30d683f..ea0ef71 100644 --- a/src/main/java/fr/titionfire/ffsaf/rest/data/SimpleReqAffiliation.java +++ b/src/main/java/fr/titionfire/ffsaf/rest/data/SimpleReqAffiliation.java @@ -31,6 +31,8 @@ public class SimpleReqAffiliation { String RNA; @Schema(description = "Adresse de l'association", example = "1 rue de l'exemple, 75000 Paris") String address; + @Schema(description = "Email de contact de l'association", example = "test@test.fr") + String contact; @Schema(description = "Liste des membres pour la demande d'affiliation") List members; @Schema(description = "Saison de l'affiliation", example = "2025") @@ -47,6 +49,7 @@ public class SimpleReqAffiliation { .RNA(model.getRNA()) .address(model.getAddress()) .saison(model.getSaison()) + .contact(model.getContact()) .members(List.of( new AffiliationMember(model.getM1_lname(), model.getM1_fname(), model.getM1_email(), model.getM1_lincence(), model.getM1_role()), diff --git a/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestForm.java b/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestForm.java index 494acad..961033c 100644 --- a/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestForm.java +++ b/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestForm.java @@ -33,6 +33,10 @@ public class AffiliationRequestForm { @FormParam("adresse") private String adresse = null; + @Schema(description = "Email de contact de l'association", example = "test@test.fr") + @FormParam("contact") + private String contact = null; + @Schema(description = "La saison de l'affiliation.", example = "2025", required = true) @FormParam("saison") private int saison = -1; @@ -114,6 +118,7 @@ public class AffiliationRequestForm { model.setRNA(this.getRna()); model.setAddress(this.getAdresse()); model.setSaison(this.getSaison()); + model.setContact(this.getContact()); model.setM1_lname(this.getM1_lname()); model.setM1_fname(this.getM1_fname()); diff --git a/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestSaveForm.java b/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestSaveForm.java index ac3012b..409fd45 100644 --- a/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestSaveForm.java +++ b/src/main/java/fr/titionfire/ffsaf/rest/from/AffiliationRequestSaveForm.java @@ -31,6 +31,10 @@ public class AffiliationRequestSaveForm { @FormParam("address") private String address = null; + @Schema(description = "Email de contact de l'association", example = "test@test.fr") + @FormParam("contact") + private String contact = null; + @Schema(description = "Le statut de l'association.") @FormParam("status") @PartType(MediaType.APPLICATION_OCTET_STREAM) diff --git a/src/main/webapp/src/pages/DemandeAff.jsx b/src/main/webapp/src/pages/DemandeAff.jsx index 33d3ea7..151d238 100644 --- a/src/main/webapp/src/pages/DemandeAff.jsx +++ b/src/main/webapp/src/pages/DemandeAff.jsx @@ -208,6 +208,7 @@ function AssoInfo({initData, needFile}) { const [rnaEnable, setRnaEnable] = useState(false) const [adresse, setAdresse] = useState(initData.address ? initData.address : "") const [saison, setSaison] = useState(initData.saison ? initData.saison : getSaison()) + const [contact, setContact] = useState(initData.contact ? initData.contact : "") const fetchSiret = () => { if (siret.length < 14) { @@ -298,6 +299,15 @@ function AssoInfo({initData, needFile}) { +
+
+ Contact administratif* + setContact(e.target.value)}/> +
+
+
diff --git a/src/main/webapp/src/pages/admin/affiliation/AffiliationReqPage.jsx b/src/main/webapp/src/pages/admin/affiliation/AffiliationReqPage.jsx index d931b6b..c245db8 100644 --- a/src/main/webapp/src/pages/admin/affiliation/AffiliationReqPage.jsx +++ b/src/main/webapp/src/pages/admin/affiliation/AffiliationReqPage.jsx @@ -180,6 +180,7 @@ function Content({data, refresh}) { + Status