diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java index e724e2d89e..94c81c97d6 100644 --- a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java +++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java @@ -5,6 +5,6 @@ import se.su.dsv.scipro.data.dataobjects.Event; * @author Richard Wilkinson - richard.wilkinson@jweekend.com * */ -public interface EventDao extends Dao<Event> { +public interface EventDao extends LazyDeleteDao<Event> { -} +} \ No newline at end of file diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java new file mode 100644 index 0000000000..9d4b244482 --- /dev/null +++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java @@ -0,0 +1,15 @@ +package se.su.dsv.scipro.data.dao.interfaces; + +import java.util.List; + +import se.su.dsv.scipro.data.dataobjects.Project; +import se.su.dsv.scipro.data.dataobjects.User; +import se.su.dsv.scipro.data.enums.ProjectStatus; +import se.su.dsv.scipro.data.enums.ProjectTeamMemberRoles; + +public interface ProjectDao extends Dao<Project>{ + public List<Project> getProjectsByParticipant(final User user, final ProjectStatus projectStatus); + public int countProjectsByParticipant(final User user, final ProjectStatus projectStatus); + public List<Project> getProjectsByHeadSupervisor(final User user, final ProjectStatus projectStatus); + public List<Project> getProjectsByProjectTeamMember(final User user, final ProjectStatus projectStatus, final ProjectTeamMemberRoles teamRole); +} diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java new file mode 100644 index 0000000000..cc24d423c9 --- /dev/null +++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java @@ -0,0 +1,7 @@ +package se.su.dsv.scipro.data.dao.interfaces; + +import se.su.dsv.scipro.data.dataobjects.ProjectFollower; + +public interface ProjectFollowerDao extends Dao<ProjectFollower> { + +} diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java new file mode 100644 index 0000000000..1e63360fee --- /dev/null +++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java @@ -0,0 +1,23 @@ +package se.su.dsv.scipro.data.dao.interfaces; + +import java.util.List; + +import se.su.dsv.scipro.data.dataobjects.Event; +import se.su.dsv.scipro.data.dataobjects.ProjectSchedule; + +public interface ProjectScheduleDao extends Dao<ProjectSchedule>{ + + public List<Event> getAllEventsByProjectSchedule(final ProjectSchedule ps); + public List<Event> getUpcomingEventsByProjectSchedule(final ProjectSchedule ps, boolean includeOldNotDoneEvents); + + /** + * + * @param ps + * @param eventIsDone true/false or null if you don't care + * @return + */ + public List<Event> getOldEventsByProjectSchedule(final ProjectSchedule ps, final Boolean eventIsDone); + + public int countOverDueEvents(final ProjectSchedule ps); + +}