CoyoteCredit/src/main/java/nl/andrewl/coyotecredit/ctl/user/NotificationController.java

30 lines
1.1 KiB
Java

package nl.andrewl.coyotecredit.ctl.user;
import lombok.RequiredArgsConstructor;
import nl.andrewl.coyotecredit.model.User;
import nl.andrewl.coyotecredit.service.UserService;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping(path = "/userNotifications")
@RequiredArgsConstructor
public class NotificationController {
private final UserService userService;
@PostMapping(path = "/{notificationId}/dismiss")
public String dismiss(@PathVariable long notificationId, @AuthenticationPrincipal User user) {
userService.dismissNotification(user, notificationId);
return "redirect:/users/" + user.getId();
}
@PostMapping(path = "/dismissAll")
public String dismissAll(@AuthenticationPrincipal User user) {
userService.dismissAllNotifications(user);
return "redirect:/users/" + user.getId();
}
}