Skip to content
Snippets Groups Projects

Resolve "Forwarded requests visible even for people it is not forwarded too"

4 files
+ 25
2
Compare changes
  • Side-by-side
  • Inline

Files

@@ -20,6 +20,7 @@ package nl.tudelft.queue.controller;
import static nl.tudelft.labracore.api.dto.RolePersonDetailsDTO.TypeEnum.*;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.Set;
import java.util.function.Predicate;
@@ -43,6 +44,7 @@ import nl.tudelft.queue.model.LabRequest;
import nl.tudelft.queue.model.QueueSession;
import nl.tudelft.queue.model.Request;
import nl.tudelft.queue.model.SelectionRequest;
import nl.tudelft.queue.model.enums.RequestStatus;
import nl.tudelft.queue.model.labs.Lab;
import nl.tudelft.queue.repository.LabRequestRepository;
import nl.tudelft.queue.repository.ProfileRepository;
@@ -148,7 +150,13 @@ public class RequestController {
model.addAttribute("showName", false);
model.addAttribute("showOnlyRelevant", true);
setRequestTableAttributes(model, pageable, assistant,
"/requests", r -> r.getEventInfo().getStatus().isPending(), false, true);
"/requests",
r -> r.getEventInfo().getStatus() == RequestStatus.PENDING ||
(r.getEventInfo().getStatus() == RequestStatus.FORWARDED &&
!Objects.equals(r.getEventInfo().getForwardedBy(), assistant.getId()) &&
(r.getEventInfo().getForwardedTo() == null ||
r.getEventInfo().getForwardedTo().equals(assistant.getId()))),
false, true);
return "request/list";
}
Loading