Refactoring

This commit is contained in:
DahoudG
2024-09-18 10:33:56 +00:00
parent a5743d91af
commit d848f4596c
10 changed files with 460 additions and 200 deletions

View File

@@ -98,4 +98,34 @@ public class EventService {
}
return deleted;
}
/**
* Met à jour un événement dans le système.
*
* @param event L'événement à mettre à jour.
* @return L'événement mis à jour.
*/
@Transactional
public Events updateEvent(Events event) {
Events existingEvent = eventsRepository.findById(event.getId());
if (existingEvent == null) {
logger.error("[ERROR] Événement non trouvé avec l'ID : {}", event.getId());
throw new EventNotFoundException(event.getId());
}
// Mettre à jour les détails de l'événement
existingEvent.setTitle(event.getTitle());
existingEvent.setDescription(event.getDescription());
existingEvent.setStartDate(event.getStartDate());
existingEvent.setEndDate(event.getEndDate());
existingEvent.setLocation(event.getLocation());
existingEvent.setCategory(event.getCategory());
existingEvent.setLink(event.getLink());
existingEvent.setImageUrl(event.getImageUrl());
existingEvent.setStatus(event.getStatus());
eventsRepository.persist(existingEvent);
logger.info("[LOG] Événement mis à jour avec succès : {}", existingEvent.getTitle());
return existingEvent;
}
}

View File

@@ -0,0 +1,35 @@
package com.lions.dev.service;
import org.jboss.logging.Logger;
import jakarta.enterprise.context.ApplicationScoped;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
/**
* Service pour la gestion des fichiers uploadés.
* Ce service permet de sauvegarder et gérer les fichiers uploadés sur le serveur.
*/
@ApplicationScoped
public class FileService {
private static final Logger LOG = Logger.getLogger(FileService.class);
/**
* Sauvegarde le fichier uploadé sur le serveur.
*
* @param uploadedFilePath Le chemin temporaire du fichier uploadé.
* @param destinationDir Le répertoire de destination où sauvegarder le fichier.
* @param fileName Le nom du fichier.
* @return Le chemin complet du fichier sauvegardé.
* @throws IOException Si une erreur survient lors de la sauvegarde.
*/
public Path saveFile(Path uploadedFilePath, String destinationDir, String fileName) throws IOException {
Path destination = Paths.get(destinationDir, fileName);
Files.createDirectories(Paths.get(destinationDir)); // Crée le répertoire s'il n'existe pas
Files.copy(uploadedFilePath, destination); // Copie le fichier vers sa destination
LOG.info("Fichier sauvegardé avec succès : " + destination);
return destination;
}
}

View File

@@ -43,6 +43,37 @@ public class UserService {
return user;
}
/**
* Met à jour un utilisateur existant dans le système.
*
* @param user L'utilisateur à mettre à jour.
* @return L'utilisateur mis à jour.
*/
public Users updateUser(Users user) {
try {
Users existingUser = usersRepository.findById(user.getId());
if (existingUser == null) {
System.out.println("[ERROR] Utilisateur non trouvé pour la mise à jour avec l'ID : " + user.getId());
throw new UserNotFoundException("Utilisateur non trouvé avec l'ID : " + user.getId());
}
// Mettre à jour les champs de l'utilisateur existant
existingUser.setNom(user.getNom());
existingUser.setPrenoms(user.getPrenoms());
existingUser.setEmail(user.getEmail());
existingUser.setMotDePasse(user.getMotDePasse()); // Hachage automatique si nécessaire
existingUser.setRole(user.getRole());
usersRepository.persist(existingUser);
System.out.println("[LOG] Utilisateur mis à jour avec succès : " + existingUser.getEmail());
return existingUser;
} catch (Exception e) {
System.out.println("[ERROR] Erreur lors de la mise à jour de l'utilisateur : " + e.getMessage());
throw e;
}
}
/**
* Authentifie un utilisateur avec son email et son mot de passe.
*
@@ -93,4 +124,6 @@ public class UserService {
}
return deleted;
}
}