Refactoring

This commit is contained in:
dahoud
2026-01-31 16:54:46 +00:00
parent ce89face73
commit 9dc9ca591c
85 changed files with 2643 additions and 381 deletions

View File

@@ -90,6 +90,21 @@ public class FriendshipService {
Friendship friendship = new Friendship(user, friend, FriendshipStatus.PENDING);
friendshipRepository.persist(friendship);
// Notification en base pour le destinataire (déclencheur automatique)
try {
String senderName = user.getFirstName() + " " + user.getLastName();
notificationService.createNotification(
"Demande d'amitié",
senderName + " vous a envoyé une demande d'amitié",
"friend",
friend.getId(),
null
);
logger.info("[LOG] Notification demande d'amitié créée pour : " + friend.getId());
} catch (Exception e) {
logger.error("[ERROR] Erreur création notification demande d'amitié : " + e.getMessage());
}
// TEMPS RÉEL: Publier dans Kafka (v2.0)
try {
Map<String, Object> notificationData = new HashMap<>();
@@ -113,7 +128,8 @@ public class FriendshipService {
}
logger.info("[LOG] Demande d'amitié envoyée avec succès.");
return new FriendshipCreateOneResponseDTO(friendship);
// Construire le DTO avec les IDs déjà chargés pour éviter LazyInitializationException
return new FriendshipCreateOneResponseDTO(friendship, user.getId(), friend.getId());
}
/**
@@ -209,8 +225,10 @@ public class FriendshipService {
logger.error("[ERROR] Erreur lors de la création des notifications d'amitié : " + e.getMessage());
}
// Retourner la réponse avec les informations de la relation d'amitié
return new FriendshipCreateOneResponseDTO(friendship);
// Retourner la réponse avec les IDs déjà chargés (évite LazyInitializationException)
Users user = friendship.getUser();
Users friendUser = friendship.getFriend();
return new FriendshipCreateOneResponseDTO(friendship, user.getId(), friendUser.getId());
}
/**