Refactoring et Ajouts de nouveaux endpoints

This commit is contained in:
DahoudG
2024-09-16 19:40:48 +00:00
parent b1535d16cb
commit a5743d91af
23 changed files with 557 additions and 191 deletions

View File

@@ -1,9 +1,12 @@
package com.lions.dev.service;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import jakarta.transaction.Transactional;
import com.lions.dev.dto.request.events.EventCreateRequestDTO;
import com.lions.dev.entity.events.Events;
import com.lions.dev.entity.users.Users;
import com.lions.dev.repository.EventsRepository;
import com.lions.dev.dto.request.events.EventRequestDTO;
import com.lions.dev.exception.EventNotFoundException;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
@@ -21,19 +24,27 @@ public class EventService {
@Inject
EventsRepository eventsRepository;
private static final Logger logger = LoggerFactory.getLogger(EventService.class);
/**
* Crée un nouvel événement dans le système.
*
* @param eventRequestDTO Le DTO contenant les informations de l'événement à créer.
* @param eventCreateRequestDTO Le DTO contenant les informations de l'événement à créer.
* @param creator L'utilisateur créateur de l'événement.
* @return L'événement créé.
*/
public Events createEvent(EventRequestDTO eventRequestDTO, Users creator) {
public Events createEvent(EventCreateRequestDTO eventCreateRequestDTO, Users creator) {
Events event = new Events();
event.setTitle(eventRequestDTO.getTitle());
event.setStartDate(eventRequestDTO.getStartDate());
event.setEndDate(eventRequestDTO.getEndDate());
event.setTitle(eventCreateRequestDTO.getTitle());
event.setDescription(eventCreateRequestDTO.getDescription());
event.setStartDate(eventCreateRequestDTO.getStartDate());
event.setEndDate(eventCreateRequestDTO.getEndDate());
event.setLocation(eventCreateRequestDTO.getLocation());
event.setCategory(eventCreateRequestDTO.getCategory());
event.setLink(eventCreateRequestDTO.getLink());
event.setImageUrl(eventCreateRequestDTO.getImageUrl());
event.setCreator(creator);
event.setStatus("en cours");
eventsRepository.persist(event);
System.out.println("[LOG] Événement créé : " + event.getTitle());
return event;
@@ -50,7 +61,7 @@ public class EventService {
Events event = eventsRepository.findById(id);
if (event == null) {
System.out.println("[ERROR] Événement non trouvé avec l'ID : " + id);
throw new EventNotFoundException("Événement non trouvé avec l'ID : " + id);
throw new EventNotFoundException(id);
}
System.out.println("[LOG] Événement trouvé avec l'ID : " + id);
return event;
@@ -74,12 +85,16 @@ public class EventService {
* @param id L'ID de l'événement à supprimer.
* @return true si l'événement a été supprimé, false sinon.
*/
@Transactional
public boolean deleteEvent(UUID id) {
logger.info("[LOG] Tentative de suppression de l'événement avec l'ID : {}", id);
boolean deleted = eventsRepository.deleteById(id);
if (deleted) {
System.out.println("[LOG] Événement supprimé avec succès : " + id);
logger.info("[LOG] Événement avec l'ID {} supprimé avec succès.", id);
} else {
System.out.println("[ERROR] Échec de la suppression de l'événement avec l'ID : " + id);
logger.warn("[LOG] Échec de la suppression : événement avec l'ID {} introuvable.", id);
throw new EventNotFoundException(id);
}
return deleted;
}