https://lucid.app/lucidchart/206868d1-f324-4421-81e7-21dabd689e72/edit?viewport_loc=-1626%2C-356%2C1778%2C1273%2C0_0&invitationId=inv_642d7865-4d91-4b52-8975-c0327b1ed357
- Event v1 -시간을 인덱스로 나눈 방식 (0 과 1로 스케쥴의 유무를 판단)
| 날짜 |
시간 |
0 |
1 |
2 |
3 |
4 |
5 |
| 2023-01-02 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
- Event v1 - 시작 시간과 종료시간과으로 나눔
| 유저 |
날짜 |
이벤트 |
시작시간 |
종료시간 |
상세설명 |
중복갯수 |
| rhrudwnszoq |
2024-03-06 |
달리기 |
10:00 |
10:30 |
동네 한바퀴 |
3 |
- Event v3 - 시작시간을 Key로 가지고 value에 상세 메세지
| 유저 |
날짜 |
이벤트 배열 |
|
|
| rhrudwnszoq |
2024-03-06 |
시작시간(Key) |
종료시간 |
10:00 |
|
|
|
이벤트이름 |
달리기 |
|
|
|
상세설명 |
동네 한바퀴 |
|
|
|
완료여부 |
False |
|
|
|
color |
#d9d9d9 |
{
_id: ObjectId("event_id"),
userId: ObjectId("user_id"), // 해당 이벤트를 소유한 사용자의 ID
date: ISODate("2024-03-06T00:00:00Z"), // 해당 이벤트의 날짜
timeSlots: {
"08:00": {
event: "Event A",
description: "Description for Event A",
// 다른 필드들...
},
}
User
| 이름 |
아이디 |
비밀번호 |
이메일 sub |
| 홍길동 |
rhrudwnszoq |
Jesusdfm!@ |
|
|
|
|
|
Weekly
| 아이디 |
날짜 |
주 |
|
|
| rhrudwnzoq |
2024-03 |
Week1 |
목표 |
제목 |
|
|
|
|
세부설명 |
|
|
|
|
달성여부 |
|
|
Week2 |
목표 |
제목 |
|
|
|
|
세부설명 |
|
|
|
|
달성여부 |
- db에 저장하는 주기
- 어떤 회원이 로그인 했을때 그 회원에 해당하는 다이어리
내용을 몽땅 들고와서 전역 상태에 저장한다.
- 그리고 그 회원이 다이어리에 무언가 글을 쓸때마다
저장 버튼을 누르면 - 저장 모달이 뜨면서 저장중입니다. - 저장 되었습니다. 모달이 사라지고 다시 글을 입력할 수 있게된다.
- 그리고 시간 주기마다 저장을 한다. 시간 주기마다 저장을 하는 경우 하단에 모달이 뜬다. 현재시간 저장되었습니다.
- 지연저장한다.