refactoring

This commit is contained in:
DahoudG
2024-09-01 04:08:20 +00:00
parent 4ccf1b0349
commit dc1482c399
3 changed files with 30 additions and 25 deletions

View File

@@ -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")