diff --git a/src/main/java/de/avatic/lcc/controller/users/GroupController.java b/src/main/java/de/avatic/lcc/controller/users/GroupController.java index 314ff35..c9af699 100644 --- a/src/main/java/de/avatic/lcc/controller/users/GroupController.java +++ b/src/main/java/de/avatic/lcc/controller/users/GroupController.java @@ -1,5 +1,6 @@ package de.avatic.lcc.controller.users; +import de.avatic.lcc.dto.users.GroupContainerDTO; import de.avatic.lcc.dto.users.GroupDTO; import de.avatic.lcc.repositories.pagination.SearchQueryResult; import de.avatic.lcc.service.users.GroupService; @@ -34,16 +35,19 @@ public class GroupController { */ @GetMapping({"/", ""}) @PreAuthorize("hasAnyRole('RIGHT-MANAGEMENT', 'SERVICE')") - public ResponseEntity> listGroups(@RequestParam(defaultValue = "20") @Min(1) int limit, - @RequestParam(defaultValue = "1") @Min(1) int page) { + public ResponseEntity listGroups(@RequestParam(defaultValue = "20") @Min(1) int limit, + @RequestParam(defaultValue = "1") @Min(1) int page) { SearchQueryResult groups = groupService.listGroups(page, limit); + var container = new GroupContainerDTO(); + container.setGroups(groups.toList()); + return ResponseEntity.ok() .header("X-Total-Count", String.valueOf(groups.getTotalElements())) .header("X-Page-Count", String.valueOf(groups.getTotalPages())) .header("X-Current-Page", String.valueOf(page)) - .body(groups.toList()); + .body(container); } } diff --git a/src/main/java/de/avatic/lcc/controller/users/UserController.java b/src/main/java/de/avatic/lcc/controller/users/UserController.java index 674f98c..6db709d 100644 --- a/src/main/java/de/avatic/lcc/controller/users/UserController.java +++ b/src/main/java/de/avatic/lcc/controller/users/UserController.java @@ -1,19 +1,17 @@ package de.avatic.lcc.controller.users; +import de.avatic.lcc.dto.users.UserContainerDTO; import de.avatic.lcc.dto.users.UserDTO; import de.avatic.lcc.repositories.pagination.SearchQueryResult; import de.avatic.lcc.service.users.UserService; import jakarta.validation.Valid; import jakarta.validation.constraints.Min; -import jakarta.validation.constraints.NotNull; -import org.hibernate.validator.constraints.Length; import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import java.util.List; import java.util.Optional; /** @@ -41,17 +39,20 @@ public class UserController { */ @GetMapping({"/", ""}) @PreAuthorize("hasRole('RIGHT-MANAGEMENT')") - public ResponseEntity> listUsers( + public ResponseEntity listUsers( @RequestParam(defaultValue = "20") @Min(1) int limit, @RequestParam(defaultValue = "1") @Min(1) int page) { SearchQueryResult users = userService.listUsers(page, limit); + var container = new UserContainerDTO(); + container.setUsers( users.toList()); + return ResponseEntity.ok() .header("X-Total-Count", String.valueOf(users.getTotalElements())) .header("X-Page-Count", String.valueOf(users.getTotalPages())) .header("X-Current-Page", String.valueOf(page)) - .body(users.toList()); + .body(container); } diff --git a/src/main/java/de/avatic/lcc/dto/users/GroupContainerDTO.java b/src/main/java/de/avatic/lcc/dto/users/GroupContainerDTO.java new file mode 100644 index 0000000..73db58e --- /dev/null +++ b/src/main/java/de/avatic/lcc/dto/users/GroupContainerDTO.java @@ -0,0 +1,16 @@ +package de.avatic.lcc.dto.users; + +import java.util.List; + +public class GroupContainerDTO { + + private List groups; + + public List getGroups() { + return groups; + } + + public void setGroups(List groups) { + this.groups = groups; + } +} diff --git a/src/main/java/de/avatic/lcc/dto/users/UserContainerDTO.java b/src/main/java/de/avatic/lcc/dto/users/UserContainerDTO.java new file mode 100644 index 0000000..f8c694f --- /dev/null +++ b/src/main/java/de/avatic/lcc/dto/users/UserContainerDTO.java @@ -0,0 +1,16 @@ +package de.avatic.lcc.dto.users; + +import java.util.List; + +public class UserContainerDTO { + + private List users; + + public List getUsers() { + return users; + } + + public void setUsers(List users) { + this.users = users; + } +}