archiving
All checks were successful
Build and test backend / Build-backend (pull_request) Successful in 1m28s
Build and test FrontEnd / Build-frontend (pull_request) Successful in 25s

This commit is contained in:
Debucquoy Anthony 2024-04-21 20:15:47 +02:00
parent 0b9227a822
commit 260191d790
Signed by: tonitch
GPG Key ID: A78D6421F083D42E
3 changed files with 12 additions and 10 deletions

View File

@ -1,5 +1,7 @@
package ovh.herisson.Clyde.EndPoints;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.springframework.http.HttpStatus;
@ -34,8 +36,13 @@ public class NotificationController {
if(u == null){
return new UnauthorizedResponse<>(null);
}
List<Notification> n = u.getNotifications();
return new ResponseEntity<>(n, HttpStatus.OK);
ArrayList<Notification> ret = new ArrayList<>();
for (Notification n : u.getNotifications()) {
if(!n.getStatus().equals(Status.Archived)){
ret.add(n);
}
}
return new ResponseEntity<>(ret, HttpStatus.OK);
}
@ -46,7 +53,9 @@ public class NotificationController {
if(u == null || n.getUser() != u){
return new UnauthorizedResponse<>(null);
}
n.setStatus(Status.Archived);
notifRepo.save(n);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@ -39,6 +39,7 @@ public class Notification {
private String link;
@ManyToOne
@JsonIgnore
private User user;
@CreationTimestamp

View File

@ -78,12 +78,4 @@ public class User {
this.password = password;
this.role = Role.Student;
}
public List<Notification> getNotifications(){
for(Notification n: this.notifications){
if(n.getStatus() == Status.Archived)
this.notifications.remove(n);
}
return this.notifications;
}
}