Refactoring
This commit is contained in:
@@ -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());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user