Package org.openurp.edu.service.impl
Class TeachResourceServiceImpl
java.lang.Object
org.beangle.commons.dao.impl.BaseServiceImpl
org.openurp.edu.service.impl.TeachResourceServiceImpl
- All Implemented Interfaces:
TeachResourceService
public class TeachResourceServiceImpl
extends org.beangle.commons.dao.impl.BaseServiceImpl
implements TeachResourceService
-
Field Summary
Fields inherited from class org.beangle.commons.dao.impl.BaseServiceImpl
entityDao, eventMulticaster, logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetClassrooms(Integer[] roomIds) getClassrooms(String roomIdSeq) 返回指定id串的教室,按照教学楼和教室代码排序.getClassrooms(Collection roomIds) 返回指定id的教室getElectCountRoomUtilizationOfCourse(List<Department> departments, Semester semester, Float ratio) 根据教学班学生人数统计课程教室利用率getFreeRoomsIn(Collection roomIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Room room) 在已有的教室中查找空闲的教室org.beangle.commons.dao.query.builder.OqlBuilder<Classroom>getFreeRoomsOf(org.beangle.commons.dao.query.builder.OqlBuilder<Classroom> query, Map<String, Object> params, List<Department> departs, org.beangle.orm.hibernate.udt.WeekTime unit, List<Classroom> rooms) 查询指定的教学活动类型中特定部门的符合条件的空闲教室getFreeRoomsOf(Project project, Long[] departIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Room room, org.beangle.commons.collection.page.PageLimit limit, org.beangle.commons.collection.Order order) 根据时间得到空余教室getFreeTeachersIn(Collection teacherIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Teacher teacher) 返回指定部门管理的在times上空闲的教师getFreeTeachersOf(Project project, org.beangle.orm.hibernate.udt.WeekTime[] times, Teacher teacher, Teacher replaceTeacher, org.beangle.commons.collection.page.PageLimit pageLimit, String order) getRoomActivities(Serializable roomId, org.beangle.orm.hibernate.udt.WeekTime time, Class activityClass, Semester semester) getRoomActivities(Classroom room, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) getRoomActivities(Classroom room, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester, List<Department> departments, Project project) getRoomOccupyInfos(Integer roomId, Long weekStateNum, Integer year) getRoomUtilizationOfCourse(List<Department> departments, Semester semester, Float ratio) 根据教学班人数上限统计课程教室利用率getSquadActivities(Squad squad, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) getSquadOccupyInfos(Long adminClassId, Long weekStateNum, Integer year) getStdActivities(Long stdId, org.beangle.orm.hibernate.udt.WeekTime time, Class activityClass, Semester semester) 查询所有给定时间段内的排课教学活动.
时间段中的weekId/startUnit/units可以为null
前置条件:std.id不为空.
time中的weekStateNum必须设置.getStdActivities(Student student, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) getTeacherActivities(Teacher teacher, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) getTeacherOccupyInfos(Long teacherId, Long weekStateNum, Integer year) intgetTeacherPeriod(Clazz clazz, Teacher teacher) getTeachers(Collection teacherIds) 返回指定id数组的教师列表booleanisRoomOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Serializable roomId) 查询指定id的教室在该时间点上是否被占用booleanisSessionRoomOccupied(ClazzActivity activity) 查询指定的Session上设置的教室的时间是否被占用booleanisSquadesOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Collection adminClasses) 查询一组行政班级在给定的时间上是否被占用booleanisSquadOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Long adminClassId) 查询指定id的行政班级在给定的时间上是否被占用booleanisStdOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Long stdId) 学生在该时间是否被占用booleanisStdsOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Collection stdIds) 学生在该时间是否被占用booleanisStdsOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Collection stdIds, Clazz expect) 学生在该时间是否被占用,除指定的任务外booleanisTeacherOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Long teacherId) 查询指定id的教师在给定的时间上是否被占用querySquadByOccupyInfo(Semester semester, Integer startWeek, Integer endWeek, Integer startWeekDay, Integer endWeekDay, Integer startUnit, Integer endUnit, boolean busy, DataRealm dataRealm) 根据占用信息来详细查询班级protected voidsetTimeQuery(org.beangle.orm.hibernate.udt.WeekTime time, org.beangle.commons.dao.query.builder.OqlBuilder<ClazzActivity> builder) Methods inherited from class org.beangle.commons.dao.impl.BaseServiceImpl
getEntityDao, getEventMulticaster, publish, setEntityDao, setEventMulticaster
-
Constructor Details
-
TeachResourceServiceImpl
public TeachResourceServiceImpl()
-
-
Method Details
-
isStdOccupied
Description copied from interface:TeachResourceService学生在该时间是否被占用- Specified by:
isStdOccupiedin interfaceTeachResourceService- Returns:
-
isStdsOccupied
Description copied from interface:TeachResourceService学生在该时间是否被占用- Specified by:
isStdsOccupiedin interfaceTeachResourceService- Returns:
-
isStdsOccupied
public boolean isStdsOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Collection stdIds, Clazz expect) Description copied from interface:TeachResourceService学生在该时间是否被占用,除指定的任务外- Specified by:
isStdsOccupiedin interfaceTeachResourceService- Returns:
-
isRoomOccupied
Description copied from interface:TeachResourceService查询指定id的教室在该时间点上是否被占用- Specified by:
isRoomOccupiedin interfaceTeachResourceService- Returns:
-
isSessionRoomOccupied
Description copied from interface:TeachResourceService查询指定的Session上设置的教室的时间是否被占用- Specified by:
isSessionRoomOccupiedin interfaceTeachResourceService- Returns:
-
isTeacherOccupied
Description copied from interface:TeachResourceService查询指定id的教师在给定的时间上是否被占用- Specified by:
isTeacherOccupiedin interfaceTeachResourceService- Returns:
-
isSquadOccupied
Description copied from interface:TeachResourceService查询指定id的行政班级在给定的时间上是否被占用- Specified by:
isSquadOccupiedin interfaceTeachResourceService- Returns:
-
isSquadesOccupied
public boolean isSquadesOccupied(org.beangle.orm.hibernate.udt.WeekTime time, Collection adminClasses) Description copied from interface:TeachResourceService查询一组行政班级在给定的时间上是否被占用- Specified by:
isSquadesOccupiedin interfaceTeachResourceServiceadminClasses- 班级对象集合- Returns:
-
getFreeRoomsIn
public Collection getFreeRoomsIn(Collection roomIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Room room) Description copied from interface:TeachResourceService在已有的教室中查找空闲的教室- Specified by:
getFreeRoomsInin interfaceTeachResourceService- Returns:
-
getFreeRoomsOf
public org.beangle.commons.dao.query.builder.OqlBuilder<Classroom> getFreeRoomsOf(org.beangle.commons.dao.query.builder.OqlBuilder<Classroom> query, Map<String, Object> params, List<Department> departs, org.beangle.orm.hibernate.udt.WeekTime unit, List<Classroom> rooms) Description copied from interface:TeachResourceService查询指定的教学活动类型中特定部门的符合条件的空闲教室- Specified by:
getFreeRoomsOfin interfaceTeachResourceService
-
getFreeRoomsOf
public Collection getFreeRoomsOf(Project project, Long[] departIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Room room, org.beangle.commons.collection.page.PageLimit limit, org.beangle.commons.collection.Order order) 根据时间得到空余教室- Specified by:
getFreeRoomsOfin interfaceTeachResourceService
-
getFreeTeachersIn
public Collection getFreeTeachersIn(Collection teacherIds, org.beangle.orm.hibernate.udt.WeekTime[] times, Teacher teacher) Description copied from interface:TeachResourceService返回指定部门管理的在times上空闲的教师- Specified by:
getFreeTeachersInin interfaceTeachResourceService- Returns:
-
getFreeTeachersOf
public Collection<Teacher> getFreeTeachersOf(Project project, org.beangle.orm.hibernate.udt.WeekTime[] times, Teacher teacher, Teacher replaceTeacher, org.beangle.commons.collection.page.PageLimit pageLimit, String order) - Specified by:
getFreeTeachersOfin interfaceTeachResourceService
-
getSquadActivities
public List<ClazzActivity> getSquadActivities(Squad squad, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) - Specified by:
getSquadActivitiesin interfaceTeachResourceService
-
setTimeQuery
protected void setTimeQuery(org.beangle.orm.hibernate.udt.WeekTime time, org.beangle.commons.dao.query.builder.OqlBuilder<ClazzActivity> builder) -
getTeacherActivities
public List<ClazzActivity> getTeacherActivities(Teacher teacher, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) - Specified by:
getTeacherActivitiesin interfaceTeachResourceService
-
getRoomActivities
public List<ClazzActivity> getRoomActivities(Classroom room, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) - Specified by:
getRoomActivitiesin interfaceTeachResourceService
-
getRoomActivities
public List<ClazzActivity> getRoomActivities(Classroom room, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester, List<Department> departments, Project project) - Specified by:
getRoomActivitiesin interfaceTeachResourceService
-
getStdActivities
public List<ClazzActivity> getStdActivities(Student student, org.beangle.orm.hibernate.udt.WeekTime time, Semester semester) - Specified by:
getStdActivitiesin interfaceTeachResourceService
-
getRoomActivities
public List getRoomActivities(Serializable roomId, org.beangle.orm.hibernate.udt.WeekTime time, Class activityClass, Semester semester) -
getStdActivities
public List getStdActivities(Long stdId, org.beangle.orm.hibernate.udt.WeekTime time, Class activityClass, Semester semester) Description copied from interface:TeachResourceService查询所有给定时间段内的排课教学活动.
时间段中的weekId/startUnit/units可以为null
前置条件:std.id不为空.
time中的weekStateNum必须设置.- Specified by:
getStdActivitiesin interfaceTeachResourceService- Returns:
-
getRoomOccupyInfos
- Specified by:
getRoomOccupyInfosin interfaceTeachResourceService
-
getTeacherOccupyInfos
- Specified by:
getTeacherOccupyInfosin interfaceTeachResourceService
-
getSquadOccupyInfos
- Specified by:
getSquadOccupyInfosin interfaceTeachResourceService
-
getClassrooms
Description copied from interface:TeachResourceService返回指定id的教室- Specified by:
getClassroomsin interfaceTeachResourceService- Parameters:
roomIds- allocate scope- Returns:
-
getTeachers
Description copied from interface:TeachResourceService返回指定id数组的教师列表- Specified by:
getTeachersin interfaceTeachResourceService- Returns:
-
getClassrooms
Description copied from interface:TeachResourceService返回指定id串的教室,按照教学楼和教室代码排序.- Specified by:
getClassroomsin interfaceTeachResourceService- Returns:
-
getClassrooms
- Specified by:
getClassroomsin interfaceTeachResourceService
-
getElectCountRoomUtilizationOfCourse
public Map<ClazzActivity,Object[]> getElectCountRoomUtilizationOfCourse(List<Department> departments, Semester semester, Float ratio) Description copied from interface:TeachResourceService根据教学班学生人数统计课程教室利用率- Specified by:
getElectCountRoomUtilizationOfCoursein interfaceTeachResourceService- Returns:
-
getRoomUtilizationOfCourse
public Map<ClazzActivity,Object[]> getRoomUtilizationOfCourse(List<Department> departments, Semester semester, Float ratio) Description copied from interface:TeachResourceService根据教学班人数上限统计课程教室利用率- Specified by:
getRoomUtilizationOfCoursein interfaceTeachResourceService- Returns:
-
querySquadByOccupyInfo
public Collection<Squad> querySquadByOccupyInfo(Semester semester, Integer startWeek, Integer endWeek, Integer startWeekDay, Integer endWeekDay, Integer startUnit, Integer endUnit, boolean busy, DataRealm dataRealm) Description copied from interface:TeachResourceService根据占用信息来详细查询班级- Specified by:
querySquadByOccupyInfoin interfaceTeachResourceService- Parameters:
semester- 学期startWeek- 起始周endWeek- 结束周startWeekDay- 起始星期endWeekDay- 结束星期startUnit- 起始小节endUnit- 结束小节busy- 在以上提供的上课信息上是否有课dataRealm- 数据级权限,如果为null,则不做权限控制- Returns:
-
getTeacherPeriod
- Specified by:
getTeacherPeriodin interfaceTeachResourceService
-