refactoring
This commit is contained in:
5
pom.xml
5
pom.xml
@@ -31,9 +31,8 @@
|
|||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.mindrot</groupId>
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||||
<artifactId>jbcrypt</artifactId>
|
<artifactId>jackson-datatype-jsr310</artifactId>
|
||||||
<version>0.4</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.quarkiverse.groovy</groupId>
|
<groupId>io.quarkiverse.groovy</groupId>
|
||||||
|
|||||||
@@ -36,7 +36,6 @@ public class Events extends BaseEntity {
|
|||||||
@JsonProperty("date")
|
@JsonProperty("date")
|
||||||
private LocalDateTime eventDate;
|
private LocalDateTime eventDate;
|
||||||
|
|
||||||
@NotNull
|
|
||||||
@Size(max = 100)
|
@Size(max = 100)
|
||||||
@Column(name = "location", nullable = false, length = 100)
|
@Column(name = "location", nullable = false, length = 100)
|
||||||
@JsonProperty("location")
|
@JsonProperty("location")
|
||||||
|
|||||||
@@ -39,30 +39,36 @@ public class EventsResource {
|
|||||||
@Operation(summary = "Créer un nouvel événement", description = "Crée un nouvel événement")
|
@Operation(summary = "Créer un nouvel événement", description = "Crée un nouvel événement")
|
||||||
public Response createEvent(@Valid Events event) {
|
public Response createEvent(@Valid Events event) {
|
||||||
try {
|
try {
|
||||||
if (event.getCreator() != null) {
|
// Validation de la date de l'événement
|
||||||
UUID creatorId = event.getCreator().getId();
|
if (event.getEventDate() == null) {
|
||||||
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 {
|
|
||||||
return Response.status(Response.Status.BAD_REQUEST)
|
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();
|
.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) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR)
|
return Response.status(Response.Status.INTERNAL_SERVER_ERROR)
|
||||||
@@ -71,6 +77,7 @@ public class EventsResource {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
@Path("{id}")
|
@Path("{id}")
|
||||||
@Operation(summary = "Récupérer un événement par ID", description = "Retourne un événement par son ID")
|
@Operation(summary = "Récupérer un événement par ID", description = "Retourne un événement par son ID")
|
||||||
|
|||||||
Reference in New Issue
Block a user