Skip to content

Research-group jobs view: keep evaluation working after professor leaves, add supervisor filter to job management #2445

Description

@az108

Description

Three things to address on the professor / employee side of the research-group experience:

  1. Bug — When a professor with jobs is removed from the system, the evaluation page breaks for any application that referenced one of those jobs. The job is anonymised (its supervising professor is replaced with a sentinel "deleted user" that has no research group), but `ProfessorDTO.fromEntity` then throws `IllegalStateException("Research group is null")`. The applications and the job have to keep loading because they remain part of the research group.

  2. Verification — When a research group has multiple professors, the job-management page should already show every job in that research group, not only the current professor's. Re-confirmed.

  3. Feature — Add a supervisor filter on the job-management page so a professor can filter to their own jobs (or to any specific colleague's).

Tasks

  • Stop `ProfessorDTO.fromEntity` from throwing on missing research group; route evaluation/interview flows through a new `ProfessorDTO.fromJob(Job)` factory that uses the job's research group (which survives anonymisation).
  • Confirm `/api/jobs/research-group` returns every job for the research group.
  • Add a `supervisor` multi-select to the job-management filter bar, populated from `/api/research-groups/professors`. Filter the query by supervisor user ids.

Acceptance Criteria

  • Loading the evaluation page for a job whose original supervising professor was deleted works without errors.
  • All professors of a research group see every job in their group on the job-management page.
  • A supervisor multi-select filter is available; picking yourself shows only your jobs.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions