FareRuleController
운임 규정 조회 API를 제공하는 컨트롤러. 비동기 폴링 방식으로 운임 규정을 조회한다.
의존성
| 서비스 | 용도 |
|---|---|
| FareRuleService | 운임 규정 조회 |
메서드
getFareRuleKey
fun getFareRuleKey(
flightDetailKey: String,
adult: Int,
child: Int = 0,
infant: Int = 0
): ResponseEntity<Map<String, UUID>>운임 규정 조회를 위한 키를 생성한다. 비동기 처리를 시작하고 폴링용 키를 반환한다.
| Caller | Callee |
|---|---|
HTTP GET /fare-rules?flightDetailKey=&adult= | destructDetailKey |
| checkMaintenanceTime | |
| checkSearchablePassengers | |
| FareRuleService.init |
응답: HTTP 202 Accepted + { "key": UUID }
getFareRule
fun getFareRule(fareRuleKey: UUID): ResponseEntity<FareRuleInfoView>생성된 키로 운임 규정 조회 결과를 폴링한다. 상태에 따라 다른 HTTP 상태 코드를 반환한다.
| Caller | Callee |
|---|---|
HTTP GET /fare-rules/{fareRuleKey} | FareRuleService.getFareRules |
| FareRuleView.of |
응답 상태:
PENDING: HTTP 202 Accepted (재시도 필요)ERROR: 예외 발생 (SOLD_OUT 또는 FARE_RULE_FAILED)COMPLETE: HTTP 200 OK + 운임 규정 데이터