대부분 Post로 진행될 것 같음
-
예약 조회(컨설팅 반환)
- user id를 바탕으로 그 user id와 매칭되는 consulting을 반환하도록
-
예약 신청
- 화면 이동 (디자이너 조회 전 최소한의 정보 받아야함)
- 대면 비대면 선택 (디자이너 목록 반환)
- 디자이너를 조회하기 위해서 최소한 사용자에게 받아야 하는 정보
- 대면/비대면 필드만 post에 필요
- 이후 post에서 가져온 body 정보(대면/비대면 여부)를 바탕으로
body + (대면 비대면 둘 다)인 디자이너를 조회
- 조회되는 디자이너를 사용자 위치정보(feign) or 비용 순으로 정렬
- 이건 선택할 수 있도록
- 오름차순이랑 내림차순 둘 다?
- 디자이너 선택 (타임 테이블 반환)
- 디자이너 id를 body로 보내고 body를 통해서 그 디자이너가 언제 time의 status가 0인지 판단
- 0인 time을 선택할 수 있도록 함
- 시간 선택 (디자이너 id와 time으로 요청)
- time 먼저 0인지 체크하도록
- 이후 결제 api 부르고 결제 완료되면 예약 완료(consulting에 추가)
- consulting에 추가하기 전 비대면 선택한 경우 구글 미트 생성 api로 링크 생성 후 같이 consulting에 추가하도록 진행
-
예약 취소
- 조회한 예약을 바탕으로 취소를 진행 (consulting id 기반)
- 먼저 consulting의 time을 0으로 하고 그 뒤 결제 취소 api를 보내도록
- 결제 취소가 완료되면 결제취소 알림
- 생성된 구글밋 링크도 삭제 처리