service methods properly hooked, some cleanup, works fine now

This commit is contained in:
fred-fri 2012-05-30 16:40:22 +09:00
parent d841975875
commit 72ae7fdb3d
3 changed files with 17 additions and 19 deletions
src/main/java/se/su/dsv/scipro

@ -175,22 +175,20 @@ public class ProjectManagementPage extends AbstractAdminPage {
@Override
public Iterator<Project> getIterator() {
return projectService.find(datesPanel.getFromDate(), datesPanel.getToDate(), new PageRequest(getTable().getCurrentPage(), getTable().getRowsPerPage(), getSort())).iterator();
// if (filterStringPanel.getFilterString() == null || filterStringPanel.getFilterString().isEmpty()) {
// return projectService.findAll(new PageRequest(getTable().getCurrentPage(), getTable().getRowsPerPage(), getSort())).iterator();
// } else {
// return projectService.find(filterStringPanel.getFilterString(), new PageRequest(getTable().getCurrentPage(), getTable().getRowsPerPage(), getSort())).iterator();
// }
if (filterStringPanel.getFilterString() == null || filterStringPanel.getFilterString().isEmpty()) {
return projectService.find(datesPanel.getFromDate(), datesPanel.getToDate(), new PageRequest(getTable().getCurrentPage(), getTable().getRowsPerPage(), getSort())).iterator();
} else {
return projectService.find(filterStringPanel.getFilterString(), datesPanel.getFromDate(), datesPanel.getToDate(), new PageRequest(getTable().getCurrentPage(), getTable().getRowsPerPage(), getSort())).iterator();
}
}
@Override
public int getSize() {
return safeLongToInt(projectService.count(datesPanel.getFromDate(), datesPanel.getToDate()));
// if (filterStringPanel.getFilterString() == null || filterStringPanel.getFilterString().isEmpty()) {
// return safeLongToInt(projectService.count());
// } else {
// return safeLongToInt(projectService.count(filterStringPanel.getFilterString()));
// }
if (filterStringPanel.getFilterString() == null || filterStringPanel.getFilterString().isEmpty()) {
return safeLongToInt(projectService.count(datesPanel.getFromDate(), datesPanel.getToDate()));
} else {
return safeLongToInt(projectService.count(filterStringPanel.getFilterString(), datesPanel.getFromDate(), datesPanel.getToDate()));
}
}
});
}

@ -53,9 +53,9 @@ public class ProjectServiceImpl extends AbstractQueryService<Project, Long> impl
}
@Override
public Page<Project> find(String filterString, Pageable pageable) {
// return projectRepo.findAll(titleContains(filterString), pageable);
return projectRepo.findAll(titleContains(filterString).or(headSupervisorFirstNameContains(filterString).or(headSupervisorLastNameContains(filterString))), pageable);
public Page<Project> find(String filterString, Date fromDate, Date toDate, Pageable pageable) {
return projectRepo.findAll((titleContains(filterString).or(headSupervisorFirstNameContains(filterString).or(headSupervisorLastNameContains(filterString)))).and(projectCreatedAfter(fromDate)).and(projectCreatedBefore(toDate)), pageable);
}
@Override
@ -64,8 +64,8 @@ public class ProjectServiceImpl extends AbstractQueryService<Project, Long> impl
}
@Override
public Long count(String filterString) {
return projectRepo.count(titleContains(filterString));
public Long count(String filterString, Date fromDate, Date toDate) {
return projectRepo.count((titleContains(filterString).or(headSupervisorFirstNameContains(filterString)).or(headSupervisorLastNameContains(filterString))).and(projectCreatedAfter(fromDate)).and(projectCreatedBefore(toDate)));
}
@Override

@ -11,9 +11,9 @@ import se.su.dsv.scipro.data.enums.ProjectTeamMemberRoles;
public interface ProjectService extends GenericService<Project,Long>, QueryService<Project, Long> {
public Page<Project> find(String filterString, Pageable pageable);
public Page<Project> find(String filterString, Date fromDate, Date toDate, Pageable pageable);
public Page<Project> find(Date fromDate, Date toDate, Pageable pageable);
public Long count(String filterString);
public Long count(String filterString, Date fromDate, Date toDate);
public Long count(Date fromDate, Date toDate);
public List<Project> getProjectsByUser(User user);
public List<Project> getProjectsByUserAndStatus(User author, ProjectStatus status);