From e1b136ea4240040139382b4cea5dc5c95701032e Mon Sep 17 00:00:00 2001 From: anto-gom <anto-gom@dsv.su.se> Date: Fri, 2 Mar 2012 09:13:29 +0100 Subject: [PATCH] Added reviewer as a filterable Param to ProjectIdeaDao and its implementation class. --- .../scipro/match/dao/interfaces/ProjectIdeaDao.java | 10 ++++++++++ .../dsv/scipro/match/dao/jpa/ProjectIdeaDaoJPAImp.java | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/main/java/se/su/dsv/scipro/match/dao/interfaces/ProjectIdeaDao.java b/src/main/java/se/su/dsv/scipro/match/dao/interfaces/ProjectIdeaDao.java index 1c7946cf00..5b85249149 100644 --- a/src/main/java/se/su/dsv/scipro/match/dao/interfaces/ProjectIdeaDao.java +++ b/src/main/java/se/su/dsv/scipro/match/dao/interfaces/ProjectIdeaDao.java @@ -43,6 +43,8 @@ public interface ProjectIdeaDao extends Dao<ProjectIdea> { private Employee supervisor; + private Employee reviewer; + private Student author; private Boolean projectCreated; @@ -96,6 +98,14 @@ public interface ProjectIdeaDao extends Dao<ProjectIdea> { return supervisor; } + public void setReviewer(Employee reviewer) { + this.reviewer = reviewer; + } + + public Employee getReviewer() { + return reviewer; + } + public void setAuthor(Student author) { this.author = author; } diff --git a/src/main/java/se/su/dsv/scipro/match/dao/jpa/ProjectIdeaDaoJPAImp.java b/src/main/java/se/su/dsv/scipro/match/dao/jpa/ProjectIdeaDaoJPAImp.java index a9d9172d3f..50e336136a 100644 --- a/src/main/java/se/su/dsv/scipro/match/dao/jpa/ProjectIdeaDaoJPAImp.java +++ b/src/main/java/se/su/dsv/scipro/match/dao/jpa/ProjectIdeaDaoJPAImp.java @@ -119,6 +119,7 @@ public class ProjectIdeaDaoJPAImp extends AbstractDaoJPAImp<ProjectIdea> .projectCreated(params.isProjectCreated()) .author(params.getAuthor()) .supervisor(params.getSupervisor()) + .reviewer(params.getReviewer()) .sortAndPaginate(params); } @@ -154,6 +155,15 @@ public class ProjectIdeaDaoJPAImp extends AbstractDaoJPAImp<ProjectIdea> } return this; } + + public QuerySet reviewer(Employee reviewer) { + if (reviewer != null) { + getQuery().combine( + new Query().where("_.reviewer = :reviewer") + .parameter("reviewer", reviewer)); + } + return this; + } public QuerySet matchDateAfter(Date matchDateAfter) { if (matchDateAfter != null) {