This commit is contained in:
2024-04-17 12:00:52 +02:00
parent 61eac8959a
commit 881b30e5c9
3 changed files with 86 additions and 72 deletions

View File

@ -0,0 +1,44 @@
package ovh.herisson.Clyde.EndPoints;
import java.util.List;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
import lombok.AllArgsConstructor;
import ovh.herisson.Clyde.Responses.UnauthorizedResponse;
import ovh.herisson.Clyde.Services.AuthenticatorService;
import ovh.herisson.Clyde.Tables.Notification;
import ovh.herisson.Clyde.Tables.User;
@RestController
@AllArgsConstructor
@CrossOrigin(originPatterns = "*", allowCredentials = "true")
public class NotificationController {
private AuthenticatorService authServ;
@GetMapping("/notifications")
public ResponseEntity<List<Notification>> getNotifications(@RequestHeader("Authorization") String token){
User u = authServ.getUserFromToken(token);
if(u == null){
return new UnauthorizedResponse<>(null);
}
List<Notification> n = u.getNotifications();
return new ResponseEntity<>(n, HttpStatus.OK);
}
@PostMapping("/notifications/{id}")
public ResponseStatus archiveNotification(@RequestHeader("Authorization") String token, @PathVariable long id){
return null;
}
}