prepared service methods
This commit is contained in:
parent
9b03f34c7a
commit
4a432a7d36
src/main/java/se/su/dsv/scipro/springdata
@ -1,6 +1,7 @@
|
|||||||
package se.su.dsv.scipro.springdata.serviceimpls;
|
package se.su.dsv.scipro.springdata.serviceimpls;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@ -57,11 +58,21 @@ public class ProjectServiceImpl extends AbstractQueryService<Project, Long> impl
|
|||||||
return projectRepo.findAll(titleContains(filterString).or(headSupervisorFirstNameContains(filterString).or(headSupervisorLastNameContains(filterString))), pageable);
|
return projectRepo.findAll(titleContains(filterString).or(headSupervisorFirstNameContains(filterString).or(headSupervisorLastNameContains(filterString))), pageable);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Page<Project> find(Date fromDate, Date toDate, Pageable pageable) {
|
||||||
|
return projectRepo.findAll(projectCreatedAfter(fromDate).and(projectCreatedBefore(toDate)), pageable);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long count(String filterString) {
|
public Long count(String filterString) {
|
||||||
return projectRepo.count(titleContains(filterString));
|
return projectRepo.count(titleContains(filterString));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long count(Date fromDate, Date toDate) {
|
||||||
|
return projectRepo.count(projectCreatedAfter(fromDate).and(projectCreatedBefore(toDate)));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Project> getProjectsByUser(User user) {
|
public List<Project> getProjectsByUser(User user) {
|
||||||
Student student = studentRepo.findByUser(user);
|
Student student = studentRepo.findByUser(user);
|
||||||
@ -137,6 +148,13 @@ public class ProjectServiceImpl extends AbstractQueryService<Project, Long> impl
|
|||||||
return QProject.project.headSupervisor.user.lastName.containsIgnoreCase(searchTerm);
|
return QProject.project.headSupervisor.user.lastName.containsIgnoreCase(searchTerm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private BooleanExpression projectCreatedAfter(Date date){
|
||||||
|
return QProject.project.dateCreated.after(date);
|
||||||
|
}
|
||||||
|
|
||||||
|
private BooleanExpression projectCreatedBefore(Date date){
|
||||||
|
return QProject.project.dateCreated.before(date);
|
||||||
|
}
|
||||||
|
|
||||||
private BooleanExpression hasProjectClass(ProjectClass pc) {
|
private BooleanExpression hasProjectClass(ProjectClass pc) {
|
||||||
if (pc != null)
|
if (pc != null)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package se.su.dsv.scipro.springdata.services;
|
package se.su.dsv.scipro.springdata.services;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.Page;
|
||||||
@ -11,7 +12,9 @@ import se.su.dsv.scipro.data.enums.ProjectTeamMemberRoles;
|
|||||||
public interface ProjectService extends GenericService<Project,Long>, QueryService<Project, Long> {
|
public interface ProjectService extends GenericService<Project,Long>, QueryService<Project, Long> {
|
||||||
|
|
||||||
public Page<Project> find(String filterString, Pageable pageable);
|
public Page<Project> find(String filterString, Pageable pageable);
|
||||||
|
public Page<Project> find(Date fromDate, Date toDate, Pageable pageable);
|
||||||
public Long count(String filterString);
|
public Long count(String filterString);
|
||||||
|
public Long count(Date fromDate, Date toDate);
|
||||||
public List<Project> getProjectsByUser(User user);
|
public List<Project> getProjectsByUser(User user);
|
||||||
public List<Project> getProjectsByUserAndStatus(User author, ProjectStatus status);
|
public List<Project> getProjectsByUserAndStatus(User author, ProjectStatus status);
|
||||||
public List<Project> getSupervisorProjectsForPeer(User supervisor, ProjectClass pc, ProjectStatus status, Student author, String title);
|
public List<Project> getSupervisorProjectsForPeer(User supervisor, ProjectClass pc, ProjectStatus status, Student author, String title);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user