<aside>
🤖 공통 사항
- createdAt, updatedAt : Mongoose의 타임스탬프로 자동 생성
</aside>
User (회원)
항목 |
내용 |
type |
required |
default |
unique |
비고 |
oauthProvider |
OAuth 공급자 |
String |
true |
null |
- |
enum: 구글, 네이버, 카카오 중 1개 |
email |
이메일 주소 |
String |
true |
- |
- |
|
password |
비밀번호 |
String |
- |
- |
- |
API 테스트용 |
우리 서버에서 가입한 경우만 |
|
|
|
|
|
|
profileImage |
프로필 이미지 url |
String |
- |
- |
- |
가입 후 등록없으면 FE에서 등록한 기본 이미지 |
nickname |
닉네임 |
String |
- |
- |
- |
가입 후 등록초기에는 사이트에서 제공한 회원 닉네임 (없는 경우 실명)6자 이하,한글 또는 영어 1글자 필수, 숫자 가능 |
createdAt |
생성일 |
Date |
- |
Date.now |
|
mongoose |
deletedAt |
삭제일 |
Date |
- |
null |
|
mongoose |
updatedAt |
최종 수정일 |
Date |
- |
Date.now |
|
mongoose |
- 우리 서버에서 회원가입 시 입력 : email, password (API 테스트용)
- 소셜로그인으로 가입 시 토큰 payload에 들어가는 것 : oauthProvider, email, nickname
- default-profile-image-url : 프론트엔드에서 등록한 기본 프로필 이미지
- default-cover-image-url : 프론트엔드에서 등록한 기본 커버 배경 이미지
- 탈퇴한 회원은 재가입 불가능함. (deleteAt이 null로 바뀌면 같은 이메일이 조회가 됨)
TravelPlan(여행 계획)
항목 |
내용 |
type |
required |
default |
unique |
비고 |
title |
제목 |
String |
true |
- |
- |
|
startDate |
시작일 |
Date |
true |
- |
- |
|
endDate |
종료일 |
Date |
true |
- |
- |
|
numberOfPeople |
인원 |
Number |
true |
- |
- |
min: 1max: 10 |
totalExpense |
총 지출 |
Number |
true |
0 |
- |
min : 0 |
region |
지역 |
string |
true |
null |
- |
enum |
DailySchedules |
|
StringArray |
- |
null |
|
|
DailyExpenses |
|
StringArray |
- |
null |
|
|
createdAt |
작성일 |
Date |
- |
Date.now |
|
mongoose |
updatedAt |
최종 수정일 |
Date |
- |
Date.now |
|
mongoose |
deletedAt |
삭제일 |
Date |
- |
- |
|
mongoose |
- 시작일, 종료일을 통해서 그 기간에 해당하는 날짜 싹 다 배열에 넣어두기
- 모든 여행 날짜들 (ex. 3월 1일, 3월 2일, 3월 3일) 담아줘야 일별 일정 불러올 수 있음.
// name
// 'Seoul', // 서울
// 'Gangwon', // 강원
// 'GyeonggiIncheon', // 경기·인천
// 'ChungcheongDaejeon', // 충청·대전
// 'GyeongsangDaeguUlsan', // 경상·대구·울산
// 'Busan', // 부산
// 'JeollaGwangju', // 전라·광주
// 'Jeju', // 제주
DailySchedule(일별 일정 (일정관리))