내일배움캠프 TypeScript
typeORM 사용 [https://typeorm.io/]
- 회원가입
- 로그인
- 이메일 인증
- 유저 정보 조회
- 로그아웃
- 공연 등록
- 공연 목록 조회
- 공연 타이틀순 조회
- 공연 상세 조회
- 공연 검색
- 좌석없이 공연예매
- 공연 예매 조회
- email, password, confirmPWD, name, nickname, phone, is_admin, authCode 를 필수로 입력
- validation 적용
- 테이블을 user와 userInfo로 나눈 이유는 user는 로그인만 관여해두고 싶어서입니다.
- email, password 필수 입력
- validation 적용
- refreshToken, accessToken 적용
- email 필수 입력
- nodemailer 사용
- 구글의 앱 비밀번호 사용
- 구글 계정 - 보안 - 2단계 인증 - 앱 비밀번호 생성
- validation 적용
- 로그인한 user_id를 사용
- user_id, isAdmin, name, nickname, phone, point 조회
- 로그인한 user_id를 사용
- user_id, title, content, date, time, place, seatCount, category 필수 입력
- image는 필수입력이 아님
- multer-s3를 사용
- html을 만들어놓진 않아 잘 되는지는 몰라요.
- date와 time을 따로 입력받은 후 dateAndTime이라는 변수에 JSON.stringinfy로 배열을 변환한 값을 넣음
- validation 적용
- 로그인하지 않아도 조회 가능
- performanceId, userId, image, category, director, title, place, price, date 값을 보내줌
- 로그인하지 않아도 조회 가능
- performanceId, userId, image, category, director, title, content, seat, reservationAvailability, price, date 값을 보내줌
- search, searchType 필수 입력
- searchType(0: title, 1: content, 2: category)
- validation 적용
- performanceId, userId, image, category, director, title, place, price, date 값을 보내줌
- reserveCount 필수 입력
- 몇개의 좌석을 예매할껀지 숫자 입력
- performance_id는 param에서, user_id는 로그인한 정보에서 가져옴
- validation 적용
- 예매한 정보 최신순으로 조회
- performance_id, title, director, point, seat, date 값을 보내줌줌