From 64e4e06c40f721b81be1f6dbb0b632e8c51a8f7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gargalovi=C4=8D?= <xgargal@fi.muni.cz> Date: Wed, 12 Apr 2023 21:59:10 +0200 Subject: [PATCH] added api response and implemented getFinished/Enrolled --- .../user/UserController.java | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java index 2bdfb150..1553817e 100644 --- a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java +++ b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java @@ -7,6 +7,7 @@ import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.responses.ApiResponses; import jakarta.persistence.EntityNotFoundException; import org.fuseri.model.dto.common.Result; +import org.fuseri.model.dto.course.CourseDto; import org.fuseri.model.dto.user.UserAddLanguageDto; import org.fuseri.model.dto.user.UserCreateDto; import org.fuseri.model.dto.user.UserDto; @@ -102,30 +103,38 @@ public class UserController { return ResponseEntity.ok(facade.findAll(page)); } - //TODO: add authentication + //TODO: add authentication M3? @PostMapping("/login") public ResponseEntity<String> login(@RequestBody UserLoginDto dto) { return ResponseEntity.ok(String.format("User %s has spawned", dto.getUsername())); } - //TODO: add authentication + //TODO: add authentication M3? @PostMapping("/logout/{id}") public ResponseEntity<String > logout(@PathVariable Long id) { return ResponseEntity.ok("user has logged out"); } - // TODO do according to Course + + @Operation(summary = "get finished courses", description = "retrieves finished courses of user with given Id") + @ApiResponses(value = { + @ApiResponse(responseCode = "200", description = "Successfully retrieved finished courses"), + @ApiResponse(responseCode = "400", description = "Invalid input") + }) @GetMapping("/finished/{id}") - public List<Course> getFinished(@PathVariable Long id) { - return new ArrayList<>(); + public ResponseEntity<List<CourseDto>> getFinished(@PathVariable Long id) { + return ResponseEntity.ok(facade.getFinished(id)); } - // TODO do according to Course - + @Operation(summary = "get enrolled courses", description = "retrieves currently enrolled courses of user with given Id") + @ApiResponses(value = { + @ApiResponse(responseCode = "200", description = "Successfully retrieved enrolled courses"), + @ApiResponse(responseCode = "400", description = "Invalid input") + }) @GetMapping("/enrolled/{id}") - public List<Course> getEnrolled(@PathVariable Long id) { - return new ArrayList<>(); + public ResponseEntity<List<CourseDto>> getEnrolled(@PathVariable Long id) { + return ResponseEntity.ok(facade.getEnrolled(id)); } @Operation(summary = "adds a language", description = "adds a new language and proficiency to user") @@ -142,5 +151,4 @@ public class UserController { return ResponseEntity.notFound().build(); } } - } -- GitLab