Bon checkpoint + Refactoring
This commit is contained in:
@@ -6,6 +6,7 @@ import com.lions.dev.dto.request.friends.FriendshipReadStatusRequestDTO;
|
||||
import com.lions.dev.dto.response.friends.FriendshipCreateOneResponseDTO;
|
||||
import com.lions.dev.dto.response.friends.FriendshipReadFriendDetailsResponseDTO;
|
||||
import com.lions.dev.dto.response.friends.FriendshipReadStatusResponseDTO;
|
||||
import com.lions.dev.exception.UserNotFoundException;
|
||||
import com.lions.dev.service.FriendshipService;
|
||||
import jakarta.inject.Inject;
|
||||
import jakarta.validation.Valid;
|
||||
@@ -215,35 +216,39 @@ public class FriendshipResource {
|
||||
summary = "Récupérer la liste des amis",
|
||||
description = "Retourne la liste des amis d'un utilisateur avec pagination")
|
||||
@APIResponses({
|
||||
@APIResponse(
|
||||
responseCode = "200",
|
||||
description = "Liste des amis récupérée avec succès",
|
||||
content =
|
||||
@Content(
|
||||
mediaType = MediaType.APPLICATION_JSON,
|
||||
schema = @Schema(implementation = FriendshipReadFriendDetailsResponseDTO.class))),
|
||||
@APIResponse(responseCode = "404", description = "Utilisateur non trouvé"),
|
||||
@APIResponse(responseCode = "500", description = "Erreur lors de la récupération des amis")
|
||||
@APIResponse(
|
||||
responseCode = "200",
|
||||
description = "Liste des amis récupérée avec succès",
|
||||
content = @Content(
|
||||
mediaType = MediaType.APPLICATION_JSON,
|
||||
schema = @Schema(implementation = FriendshipReadFriendDetailsResponseDTO.class))),
|
||||
@APIResponse(responseCode = "404", description = "Utilisateur non trouvé"),
|
||||
@APIResponse(responseCode = "500", description = "Erreur lors de la récupération des amis")
|
||||
})
|
||||
public Response listFriends(
|
||||
@PathParam("userId") UUID userId,
|
||||
@QueryParam("page") @DefaultValue("0") int page,
|
||||
@QueryParam("size") @DefaultValue("10") int size) {
|
||||
logger.info(
|
||||
"[LOG] Reçu une demande pour récupérer la liste des amis de l'utilisateur avec l'ID : "
|
||||
+ userId);
|
||||
logger.info("[LOG] Reçu une demande pour récupérer la liste des amis de l'utilisateur avec l'ID : " + userId);
|
||||
|
||||
try {
|
||||
List<FriendshipReadFriendDetailsResponseDTO> friendships =
|
||||
friendshipService.listFriends(userId, page, size);
|
||||
logger.info("[LOG] Liste des amis récupérée avec succès.");
|
||||
List<FriendshipReadFriendDetailsResponseDTO> friendships = friendshipService.listFriends(userId, page, size)
|
||||
.stream()
|
||||
.distinct() // Assure qu'il n'y a pas de doublons
|
||||
.toList();
|
||||
|
||||
logger.info("[LOG] Liste des amis récupérée avec succès, nombre d'amis : " + friendships.size());
|
||||
return Response.ok(friendships).build();
|
||||
} catch (UserNotFoundException e) {
|
||||
logger.error("[ERROR] Utilisateur non trouvé : " + e.getMessage());
|
||||
return Response.status(Response.Status.NOT_FOUND)
|
||||
.entity("{\"message\": \"Utilisateur non trouvé.\"}")
|
||||
.build();
|
||||
} catch (Exception e) {
|
||||
logger.error(
|
||||
"[ERROR] Erreur lors de la récupération de la liste des amis : " + e.getMessage(), e);
|
||||
logger.error("[ERROR] Erreur lors de la récupération de la liste des amis : " + e.getMessage(), e);
|
||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR)
|
||||
.entity("{\"message\": \"Erreur lors de la récupération des amis.\"}")
|
||||
.build();
|
||||
.entity("{\"message\": \"Erreur lors de la récupération des amis.\"}")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user