CombinedFlightItem

조합된 항공편 모델. 왕복/MIX 항공편 통합 표현.

클래스 정의

data class CombinedFlightItem(
    val listKey: UUID,
    override val schedules: List<Schedule>,
    val fares: List<CombinedFlightFare>,
    var score: BigDecimal?,
    var tags: List<RecommendationTag>?,
    val isMix: Boolean,
    val hidden: Boolean = false,
    val groupKey: String = ""
) : CommonFlightItem

필드

필드타입설명
listKeyUUID목록 키
schedulesList스케줄 목록
faresList운임 목록
scoreBigDecimal?추천 점수
tagsList?추천 태그
isMixBooleanMIX 항공권 여부
hiddenBoolean숨김 여부
groupKeyString그룹 키

프로퍼티

  • lowestFare: 최저가 운임
  • recommendationId: 추천 ID
  • recommendationPrice: 추천 가격
  • recommendationPassengerFareMap: 승객별 운임 맵

팩토리 메서드

ofRoundTrip(flightItem)

fun ofRoundTrip(flightItem: FlightItem): CombinedFlightItem

왕복 FlightItem을 CombinedFlightItem으로 변환.

ofMix(outbound, inbound, fares)

fun ofMix(outbound: FlightItem, inbound: FlightItem, fares: List<CombinedFlightFare>): CombinedFlightItem

가는편/오는편 조합하여 MIX CombinedFlightItem 생성.

확장 함수

pickOptimalFlight(strategy)

fun List<CombinedFlightItem>.pickOptimalFlight(strategy: FareDecisionStrategy): CombinedFlightItem

전략에 따른 최적 항공편 선택.

관련 클래스

사용처

  • MIX 항공권 검색 결과
  • 메타 검색 응답