From dc1482c399f8c15cee5b907e2d1ec82f027323f7 Mon Sep 17 00:00:00 2001 From: DahoudG Date: Sun, 1 Sep 2024 04:08:20 +0000 Subject: [PATCH] refactoring --- pom.xml | 5 +- .../java/com/lions/dev/entity/Events.java | 1 - .../lions/dev/resource/EventsResource.java | 49 +++++++++++-------- 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/pom.xml b/pom.xml index 20911ff..1265f5f 100644 --- a/pom.xml +++ b/pom.xml @@ -31,9 +31,8 @@ - org.mindrot - jbcrypt - 0.4 + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 io.quarkiverse.groovy diff --git a/src/main/java/com/lions/dev/entity/Events.java b/src/main/java/com/lions/dev/entity/Events.java index 0441053..3f02fbc 100644 --- a/src/main/java/com/lions/dev/entity/Events.java +++ b/src/main/java/com/lions/dev/entity/Events.java @@ -36,7 +36,6 @@ public class Events extends BaseEntity { @JsonProperty("date") private LocalDateTime eventDate; - @NotNull @Size(max = 100) @Column(name = "location", nullable = false, length = 100) @JsonProperty("location") diff --git a/src/main/java/com/lions/dev/resource/EventsResource.java b/src/main/java/com/lions/dev/resource/EventsResource.java index cc29703..dafe85e 100644 --- a/src/main/java/com/lions/dev/resource/EventsResource.java +++ b/src/main/java/com/lions/dev/resource/EventsResource.java @@ -39,30 +39,36 @@ public class EventsResource { @Operation(summary = "Créer un nouvel événement", description = "Crée un nouvel événement") public Response createEvent(@Valid Events event) { try { - if (event.getCreator() != null) { - UUID creatorId = event.getCreator().getId(); - if (creatorId == null) { - return Response.status(Response.Status.BAD_REQUEST) - .entity("L'ID du créateur est nul.") - .build(); - } - - Users creator = usersRepository.findById(creatorId); - if (creator == null) { - return Response.status(Response.Status.BAD_REQUEST) - .entity("Créateur non trouvé.") - .build(); - } - - event.setCreator(creator); - event.addParticipant(creator); - eventsRepository.persist(event); - return Response.status(Response.Status.CREATED).entity(event).build(); - } else { + // Validation de la date de l'événement + if (event.getEventDate() == null) { return Response.status(Response.Status.BAD_REQUEST) - .entity("Les informations du créateur sont manquantes.") + .entity("La date de l'événement (eventDate) est requise.") .build(); } + + // Validation de l'existence du créateur + if (event.getCreator() == null || event.getCreator().getId() == null) { + return Response.status(Response.Status.BAD_REQUEST) + .entity("Les informations du créateur sont manquantes ou invalides.") + .build(); + } + + UUID creatorId = event.getCreator().getId(); + Users creator = usersRepository.findById(creatorId); + if (creator == null) { + return Response.status(Response.Status.BAD_REQUEST) + .entity("Créateur non trouvé.") + .build(); + } + + // Associer le créateur et l'ajouter en tant que participant par défaut + event.setCreator(creator); + event.addParticipant(creator); + + // Persister l'événement + eventsRepository.persist(event); + + return Response.status(Response.Status.CREATED).entity(event).build(); } catch (Exception e) { e.printStackTrace(); return Response.status(Response.Status.INTERNAL_SERVER_ERROR) @@ -71,6 +77,7 @@ public class EventsResource { } } + @GET @Path("{id}") @Operation(summary = "Récupérer un événement par ID", description = "Retourne un événement par son ID")