FareRuleController

운임 규정 조회 API를 제공하는 컨트롤러. 비동기 폴링 방식으로 운임 규정을 조회한다.

의존성

서비스용도
FareRuleService운임 규정 조회

메서드

getFareRuleKey

fun getFareRuleKey(
    flightDetailKey: String,
    adult: Int,
    child: Int = 0,
    infant: Int = 0
): ResponseEntity<Map<String, UUID>>

운임 규정 조회를 위한 키를 생성한다. 비동기 처리를 시작하고 폴링용 키를 반환한다.

CallerCallee
HTTP GET /fare-rules?flightDetailKey=&adult=destructDetailKey
checkMaintenanceTime
checkSearchablePassengers
FareRuleService.init

응답: HTTP 202 Accepted + { "key": UUID }


getFareRule

fun getFareRule(fareRuleKey: UUID): ResponseEntity<FareRuleInfoView>

생성된 키로 운임 규정 조회 결과를 폴링한다. 상태에 따라 다른 HTTP 상태 코드를 반환한다.

CallerCallee
HTTP GET /fare-rules/{fareRuleKey}FareRuleService.getFareRules
FareRuleView.of

응답 상태:

  • PENDING: HTTP 202 Accepted (재시도 필요)
  • ERROR: 예외 발생 (SOLD_OUT 또는 FARE_RULE_FAILED)
  • COMPLETE: HTTP 200 OK + 운임 규정 데이터