fixed merge problems and project dao may now filter on both dateCreated and daisyStartDate

This commit is contained in:
Emil Siverhall 2012-02-21 15:03:18 +01:00
parent 273b5900d6
commit 84732a41c0
3 changed files with 45 additions and 5 deletions
src/main/java/se/su/dsv/scipro

@ -69,6 +69,10 @@ public interface ProjectDao extends Dao<Project>{
private Date startedBefore;
private Date createdAfter;
private Date createdBefore;
private Collection<ProjectClass> projectClasses;
private Collection<ProjectStatus> projectStatuses;
@ -82,6 +86,22 @@ public interface ProjectDao extends Dao<Project>{
// TODO: private Collection<DSVUnit> units;
// TODO: private Collection<DSVField> fields;
public Date getCreatedBefore() {
return createdBefore;
}
public Date getCreatedAfter() {
return createdAfter;
}
public void setCreatedBefore(Date createdBefore) {
this.createdBefore = createdBefore;
}
public void setCreatedAfter(Date createdAfter) {
this.createdAfter = createdAfter;
}
public Date getStartedBefore() {
return startedBefore;

@ -522,8 +522,10 @@ public class ProjectDaoJPAImp extends AbstractDaoJPAImp<Project> implements Proj
.projectClasses(params.getProjectClasses())
.projectStatuses(params.getProjectStatuses())
.authors(params.getAuthors())
.createdAfter(params.getStartedAfter())
.createdBefore(params.getStartedBefore())
.createdAfter(params.getCreatedAfter())
.createdBefore(params.getCreatedBefore())
.startedAfter(params.getStartedAfter())
.startedBefore(params.getStartedBefore())
// .creator(params.getCreator())
.sortField(params.getSortField(), params.getDirection())
.limit(params.getLimit())
@ -535,7 +537,25 @@ public class ProjectDaoJPAImp extends AbstractDaoJPAImp<Project> implements Proj
super(Project.class);
}
public QuerySet createdAfter(Date startDate) {
public QuerySet createdBefore(Date createdBefore) {
if (createdBefore != null) {
getQuery().combine(
new Query().where("_.dateCreated <= :endDate")
.parameter("endDate", createdBefore));
}
return this;
}
public QuerySet createdAfter(Date createdAfter) {
if (createdAfter != null) {
getQuery().combine(
new Query().where("_.dateCreated >= :startDate")
.parameter("startDate", createdAfter));
}
return this;
}
public QuerySet startedAfter(Date startDate) {
if (startDate != null) {
getQuery().combine(
new Query().where("_.daisyStartDate >= :startDate")
@ -544,7 +564,7 @@ public class ProjectDaoJPAImp extends AbstractDaoJPAImp<Project> implements Proj
return this;
}
public QuerySet createdBefore(Date endDate) {
public QuerySet startedBefore(Date endDate) {
if (endDate != null) {
getQuery().combine(
new Query().where("_.daisyStartDate <= :endDate")

@ -164,7 +164,7 @@ public class ProjectManagementPanel extends Panel {
@Override
public void onUpdateFilter(AjaxRequestTarget target) {
params.setCreatedAfter(getFromDate());
params.setcreatedBefore(getToDate());
params.setCreatedBefore(getToDate());
ajaxRefresh(target);
}