From accdab9ed5b216d6f0d1c459f3bd5fe8ecf63e26 Mon Sep 17 00:00:00 2001 From: 212851193 Date: Wed, 20 Dec 2017 13:21:51 +0100 Subject: [PATCH] user edit --- .../hirportal/controller/ArticleController.java | 2 +- .../hirportal/controller/UserController.java | 17 +++++++++++++---- .../alkfejl/hirportal/service/UserService.java | 9 +++++++++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/main/java/hu/elte/alkfejl/hirportal/controller/ArticleController.java b/src/main/java/hu/elte/alkfejl/hirportal/controller/ArticleController.java index 8f497b9..4f25db8 100644 --- a/src/main/java/hu/elte/alkfejl/hirportal/controller/ArticleController.java +++ b/src/main/java/hu/elte/alkfejl/hirportal/controller/ArticleController.java @@ -43,7 +43,7 @@ private ResponseEntity
read(@PathVariable String id) { return ResponseEntity.ok(read.iterator().next()); } - @Role(ADMIN) + @Role({ADMIN, EDITOR}) @PutMapping("/{id}") private ResponseEntity
edit(@PathVariable long id, @RequestBody Article article) { Article updated = articleService.edit(id, article); diff --git a/src/main/java/hu/elte/alkfejl/hirportal/controller/UserController.java b/src/main/java/hu/elte/alkfejl/hirportal/controller/UserController.java index 133754c..9445a35 100644 --- a/src/main/java/hu/elte/alkfejl/hirportal/controller/UserController.java +++ b/src/main/java/hu/elte/alkfejl/hirportal/controller/UserController.java @@ -1,5 +1,7 @@ package hu.elte.alkfejl.hirportal.controller; +import hu.elte.alkfejl.hirportal.annotation.Role; +import hu.elte.alkfejl.hirportal.entity.Article; import hu.elte.alkfejl.hirportal.entity.User; import hu.elte.alkfejl.hirportal.service.UserService; import hu.elte.alkfejl.hirportal.exception.UserNotValidException; @@ -9,6 +11,8 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; +import static hu.elte.alkfejl.hirportal.entity.User.Role.ADMIN; + @RestController @RequestMapping("/api/user") public class UserController { @@ -46,10 +50,8 @@ public ResponseEntity logout(@RequestBody User user) { } @GetMapping("/list") - public String userList(Model model) { - model.addAttribute("title", "User list"); - model.addAttribute("users", userService.userNamesStartingWith("")); - return "userlist"; + public ResponseEntity> list() { + return ResponseEntity.ok(userService.list()); } @GetMapping("/greeting") @@ -61,4 +63,11 @@ public String greeting(@RequestParam(value = "name", required = false, defaultVa private String redirectToGreeting(@ModelAttribute User user) { return "redirect:/user/greeting?name=" + user.getFirstname(); } + + @Role(ADMIN) + @PutMapping("/{id}") + private ResponseEntity edit(@PathVariable long id, @RequestBody User user) { + User updated = userService.edit(id, user); + return ResponseEntity.ok(updated); + } } \ No newline at end of file diff --git a/src/main/java/hu/elte/alkfejl/hirportal/service/UserService.java b/src/main/java/hu/elte/alkfejl/hirportal/service/UserService.java index 0d4aeaa..5286df5 100644 --- a/src/main/java/hu/elte/alkfejl/hirportal/service/UserService.java +++ b/src/main/java/hu/elte/alkfejl/hirportal/service/UserService.java @@ -1,5 +1,6 @@ package hu.elte.alkfejl.hirportal.service; +import hu.elte.alkfejl.hirportal.entity.Article; import hu.elte.alkfejl.hirportal.entity.User; import hu.elte.alkfejl.hirportal.exception.UserNotValidException; import hu.elte.alkfejl.hirportal.repository.UserRepository; @@ -23,6 +24,14 @@ public List userNamesStartingWith(String segment) { return userRepository.findByFirstNameSegment(segment); } + public User edit(long id, User user) { + return this.user = userRepository.save(user); + } + + public Iterable list() { + return userRepository.findAll(); + } + public User register(User user) { user.setRole(User.Role.READER); return this.user = userRepository.save(user);