Class SemesterServiceImpl

java.lang.Object
inha.git.semester.service.SemesterServiceImpl
All Implemented Interfaces:
SemesterService

@Service @Transactional(readOnly=true) public class SemesterServiceImpl extends Object implements SemesterService
학기 관련 비즈니스 로직을 처리하는 서비스 구현체입니다. 학기의 조회, 생성, 수정, 삭제 기능을 제공합니다.
  • Constructor Details

    • SemesterServiceImpl

      public SemesterServiceImpl()
  • Method Details

    • getSemesters

      public List<SearchSemesterResponse> getSemesters()
      활성화된 모든 학기를 조회합니다.
      Specified by:
      getSemesters in interface SemesterService
      Returns:
      학기 정보 목록 (SearchSemesterResponse)
    • createSemester

      @Transactional public String createSemester(User admin, CreateSemesterRequest createSemesterRequest)
      새로운 학기를 생성합니다.
      Specified by:
      createSemester in interface SemesterService
      Parameters:
      admin - 생성을 요청한 관리자 정보
      createSemesterRequest - 생성할 학기 정보
      Returns:
      학기 생성 완료 메시지
    • updateSemesterName

      @Transactional public String updateSemesterName(User admin, Integer semesterIdx, UpdateSemesterRequest updateSemesterRequest)
      학기명을 수정합니다.
      Specified by:
      updateSemesterName in interface SemesterService
      Parameters:
      admin - 수정을 요청한 관리자 정보
      semesterIdx - 수정할 학기의 식별자
      updateSemesterRequest - 새로운 학기명 정보
      Returns:
      학기명 수정 완료 메시지
      Throws:
      BaseException - SEMESTER_NOT_FOUND: 학기를 찾을 수 없는 경우
    • deleteSemester

      @Transactional public String deleteSemester(User admin, Integer semesterIdx)
      학기를 삭제(비활성화) 처리합니다.
      Specified by:
      deleteSemester in interface SemesterService
      Parameters:
      admin - 삭제를 요청한 관리자 정보
      semesterIdx - 삭제할 학기의 식별자
      Returns:
      학기 삭제 완료 메시지
      Throws:
      BaseException - SEMESTER_NOT_FOUND: 학기를 찾을 수 없는 경우