Interface SemesterService

All Known Implementing Classes:
SemesterServiceImpl

public interface SemesterService
  • Method Details

    • getSemester

      Semester getSemester(Integer id)
      依据非业务主键查询对应的教学日历. 若id为空或不存在返回null.
      Parameters:
      id -
      Returns:
    • getSemestersOfOverlapped

      List<Semester> getSemestersOfOverlapped(Semester semester)
      查找在指定的日历时间范围内,时间有重叠的其他学期
      前置条件:semester中的id/开始日期和截止日期不能为null;
      包含自身.
      Parameters:
      semester -
      Returns:
    • getSemester

      Semester getSemester(Calendar calendar, String year, String term)
      根据学期、学年度、学生类型返回一个Semester对象
      没有直接对应的,凡返回上级对象的日历
      Parameters:
      calendarId -
      year -
      term -
      Returns:
    • getSemester

      Semester getSemester(Project project, String schoolYear, String term)
      根据学期、学年度、学生类型返回一个Semester对象
      没有直接对应的,凡返回上级对象的日历
      Parameters:
      project -
      schoolYear -
      term -
      Returns:
    • getSemester

      Semester getSemester(Calendar calendar, Date date)
      查询对应培养类型的当前日历设置
      Parameters:
      calendarId -
      Returns:
    • getCurSemester

      Semester getCurSemester(Calendar calendar)
      查询对应培养类型的当前日历设置
      Parameters:
      calendarId -
      Returns:
    • getCurSemester

      Semester getCurSemester(Integer calendarId)
      查询对应培养类型的当前日历设置
      Parameters:
      calendarId -
      Returns:
    • getNearestSemester

      Semester getNearestSemester(Calendar calendar)
      查询对应培养类型的距离当前时间最近的日历设置
      Parameters:
      calendarId -
      Returns:
    • getPreviousSemester

      @Deprecated Semester getPreviousSemester(Calendar calendar)
      Deprecated.
      查询对应培养类型的上个学期日历设置
      Parameters:
      calendarId -
      Returns:
    • getNextSemester

      Semester getNextSemester(Semester semester)
      查询个学期日历
      Parameters:
      calendarId -
      Returns:
    • getCurSemester

      Semester getCurSemester(Project project)
      通过培养类型找到当前学年学期
      Parameters:
      project -
    • getNearestSemester

      Semester getNearestSemester(Project project)
      查询对应培养类型的距离当前时间最近的日历设置
      Parameters:
      project -
      Returns:
    • getTermsBetween

      int getTermsBetween(Semester first, Semester second, boolean omitSmallTerm)
      计算first到second教学日历之间的学期数.
      first在second之前则返回正整数,否则返回1或负整数.
      [first,second]包含两段的学期数.
      如果给出两个教学日历中的培养类型不一致,则返回null
      相同教学日历,则返回1
      Parameters:
      first -
      second -
      omitSmallTerm - 计算学期间隔中,是否忽略小学期
      Returns:
    • checkDateCollision

      boolean checkDateCollision(Semester semester)
      检查同培养类型和学年度中的学期设置是否存在日期冲突现象.
      Parameters:
      semester -
    • removeSemester

      void removeSemester(Semester semester)
      删除教学日历. 将该教学日历删除,并将该日历的前后日历传接起来
    • saveSemester

      void saveSemester(Semester semester)
      更新已有的教学日历,更新空对象将直接返回.
    • getCalendar

      Calendar getCalendar(Project project)
      根据培养类型找到日历方案
      Parameters:
      project -
      Returns:
    • getCalendars

      List<Calendar> getCalendars(List<Project> projects)
      根据培养类型找到日历方案
      Parameters:
      projects -
      Returns:
    • getSemesters

      List<Semester> getSemesters(Integer semesterStartId, Integer semesterEndId)
      根据开始学年学期和结束学年学期查询出之间的所有学年学期
      注意:为有效时间范围内的
      Parameters:
      semester -
      Returns:
    • getSemester

      Semester getSemester(Calendar calendar, Date begOn, Date endOn)
      给出指定日期相交的学期
      Parameters:
      calendar -
      begOn -
      endOn -
      Returns:
    • getPrevSemester

      Semester getPrevSemester(Semester semester)
      获取当前学期的上一个学期
      Parameters:
      semester -
      Returns: