항공권 옵션 선택
# 출발지/도착지 선택 기능
- https://young0105.tistory.com/262
- 반대 취항지에 이미 선택한 공항을 선택하면 alert 메세지를 던지고 실행을 취소함
# 날짜 선택
- datepicker 활용
- 가는 날을 먼저 선택해야 오는 날을 선택할 수 있음
→ 가는 날 이전인 날을 선택하면 실행을 취소함
- 오는 날이 입력된 상태에서 가는 날을 수정할 때, 오는 날 이후인 날을 선택하면 실행을 취소함
- 현재 날짜보다 이전 날짜를 선택하면 실행을 취소함
- 왕복 ↔ 편도 선택을 변경할 때, 가는 날은 그대로 남아서 넘어가도록 함
ex) 왕복 : 가는 날 2023-06-13, 오는 날 2023-06-14
→ 편도 : 가는 날 2023-06-13
# 나이 계산기
- 생년월일, 탑승일을 입력받음
- 입력되지 않은 날짜가 있다면 '날짜가 입력되지 않았습니다.' 출력
- 유효하지 않은 날짜이거나, 형식이 틀렸다면 '유효하지 않은 날짜입니다.' 출력
- 탑승일 이후의 생년월일을 입력했다면 '입력된 생년월일이 탑승일 이후입니다.' 출력
- 제대로 입력했다면, 만 나이를 계산함
· 만 12세 이상 → 성인
· 만 2세 이상 ~ 만 12세 미만 → 소아
· 만 2세 미만 → 유아
# 탑승객 인원 수 선택
- 성인은 최소 1명 필요함
- 유아는 좌석을 차지하지 않으며, 동반 성인의 수보다 많을 수 없음
운항 스케줄 조회
- 선택되지 않은 옵션이 있는지, 잘못된 옵션이 있는지 확인 후 실행
# 좌석 가격 결정
- 해당 스케줄의 운항시간을 확인해서, 그에 따라 이코노미, 성인 기준 기본 가격이 정해짐
→ DB에 저장되어 있는 좌석 등급별 가격 배수에 따라 비즈니스, 퍼스트의 기본 가격이 정해짐
· 비즈니스 : 이코노미의 3배
· 퍼스트 : 이코노미의 6배
# 등급별 좌석 수 확인
- 해당 스케줄에 운항하는 비행기에 해당 등급 좌석이 존재하지 않다면 '미운항' 출력
- 좌석은 존재하지만, 모든 좌석이 예약된 상태면 '매진' 출력
- 예약되지 않은 좌석이 존재한다면 기본 가격과 잔여 좌석 수 출력
→ 잔여 좌석 수가 5개 이하라면 빨간색으로 표시
- 위에서 선택한 인원 수(성인 + 소아)보다 잔여 좌석 수가 적다면 선택할 수 없도록 함 (disabled 속성)
실행
'Team Project > Airlines Web Project' 카테고리의 다른 글
[개발 일지] 항공사 Web 개발 프로젝트 12~13일차 (05/23~05/24) (0) | 2023.05.25 |
---|---|
[개발 일지] 항공사 Web 개발 프로젝트 8~11일차 (05/19~05/22) (0) | 2023.05.23 |
[개발 일지] 항공사 Web 개발 프로젝트 4일차 (05/15) (1) | 2023.05.16 |
[개발 일지] 항공사 Web 개발 프로젝트 2~3일차 (05/13~05/14) (0) | 2023.05.15 |
[개발 일지] 항공사 Web 개발 프로젝트 1일차 (05/12) (0) | 2023.05.14 |