FlightDetailController
항공편 상세 정보 조회 API를 제공하는 컨트롤러. 항공편 상세, 운임 규정, 카드 혜택 정보를 조회한다.
의존성
| 서비스 | 용도 |
|---|---|
| FlightSearchService | 검색 서비스 |
| FlightDetailService | 항공편 상세 조회 |
| FareRuleService | 운임 규정 조회 |
메서드
getFlightDetail
fun getFlightDetail(
detailKey: String,
adult: Int,
child: Int = 0,
infant: Int = 0,
promotionPrincipleId: Long?
): ResponseEntity<FlightDetailView>detailKey로 항공편 상세 정보를 조회한다. 승객 수와 프로모션 정보를 기반으로 상세 정보를 반환한다.
| Caller | Callee |
|---|---|
HTTP GET /flights/detail/{detailKey} | checkSearchablePassengers |
| FlightDetailService.getFlightDetail | |
| FlightDetailView.of |
getFlightDetailById
fun getFlightDetailById(
listKey: UUID,
id: String,
adult: Int,
child: Int = 0,
infant: Int = 0
): ResponseEntity<FlightDetailView>listKey와 metaId로 항공편 상세 정보를 조회한다. 최저가 프로모션 운임 전략을 사용한다.
| Caller | Callee |
|---|---|
HTTP GET /flights/detail?listKey=&id= | checkSearchablePassengers |
| FlightDetailService.getDetailKeys | |
| FlightDetailService.getFlightDetail | |
| FlightDetailView.of |
getFareRules (Deprecated)
@Deprecated("프론트 폴링 적용 후 삭제 예정")
fun getFareRules(
detailKey: String,
adult: Int,
child: Int = 0,
infant: Int = 0
): ResponseEntity<List<FareRuleView>>항공편의 운임 규정을 조회한다. 프론트 폴링 적용 후 삭제 예정.
| Caller | Callee |
|---|---|
HTTP GET /flights/detail/{detailKey}/fare-rules | destructDetailKey |
| checkMaintenanceTime | |
| checkSearchablePassengers | |
| FareRuleService.getFareRules | |
| FareRuleView.of |
findFreeInstallment
fun findFreeInstallment(detailKey: String): ResponseEntity<CardBenefitView?>항공편에 적용 가능한 무이자 할부 카드 혜택을 조회한다.
| Caller | Callee |
|---|---|
HTTP GET /flights/detail/{detailKey}/benefit/free-installment | FlightDetailService.findFreeInstallment |
| CardBenefitView.of |