From 547d13d793aebc52f34d390842355389b087d175 Mon Sep 17 00:00:00 2001 From: grata Date: Sat, 6 May 2023 11:19:41 +0200 Subject: [PATCH] made method @GetMapping("/{user}/{id}") use username --- .../controller/WaypointVisitedController.java | 12 +++++++++--- .../progetto152/services/WaypointVisitedService.java | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/ch/progetto152/controller/WaypointVisitedController.java b/src/main/java/ch/progetto152/controller/WaypointVisitedController.java index 79ef12a..d5db627 100644 --- a/src/main/java/ch/progetto152/controller/WaypointVisitedController.java +++ b/src/main/java/ch/progetto152/controller/WaypointVisitedController.java @@ -1,6 +1,8 @@ package ch.progetto152.controller; +import ch.progetto152.entity.UserEntity; import ch.progetto152.entity.WaypointsVisitedEntity; +import ch.progetto152.services.UserService; import ch.progetto152.services.WaypointVisitedService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -14,9 +16,12 @@ import java.util.List; public class WaypointVisitedController { private final WaypointVisitedService waypointVisitedService; + private final UserService userService; + @Autowired - public WaypointVisitedController(WaypointVisitedService waypointVisitedService) { + public WaypointVisitedController(WaypointVisitedService waypointVisitedService, UserService userService) { this.waypointVisitedService = waypointVisitedService; + this.userService = userService; } @GetMapping("") @@ -38,8 +43,9 @@ public class WaypointVisitedController { } @GetMapping("/{user}/{id}") - public ResponseEntity getWaypointVisitedByWaypointIdAndUserId(@PathVariable("user") Long userId, @PathVariable("id") Long waypointId) { - Boolean waypointVisited = waypointVisitedService.getWaypointsVisitedByWaypointIdAndUserId(waypointId, userId); + public ResponseEntity getWaypointVisitedByWaypointIdAndUserId(@PathVariable("user") String username, @PathVariable("id") Long waypointId) { + UserEntity user = userService.getUserByUsername(username); + Boolean waypointVisited = waypointVisitedService.getWaypointsVisitedByWaypointIdAndUserId(waypointId, (long) user.getId()); if (waypointVisited == null) { return new ResponseEntity<>(HttpStatus.NOT_FOUND); } else if (!waypointVisited) { diff --git a/src/main/java/ch/progetto152/services/WaypointVisitedService.java b/src/main/java/ch/progetto152/services/WaypointVisitedService.java index ba03c33..35f0dc7 100644 --- a/src/main/java/ch/progetto152/services/WaypointVisitedService.java +++ b/src/main/java/ch/progetto152/services/WaypointVisitedService.java @@ -1,5 +1,6 @@ package ch.progetto152.services; +import ch.progetto152.entity.UserEntity; import ch.progetto152.entity.WaypointsVisitedEntity; import ch.progetto152.repository.WaypointVisitedRepository; import ch.progetto152.utility.ErrorChecking;