Entity 정리
hegunhee opened this issue · comments
현재 Date, Review, Routine 세가지의 Entity만 존재함
-
Date
날짜를 저장해두는 Entity
프로퍼티는 date만 존재함
해당 날짜를 저장하기때문에 이 날짜는 하나밖에 존재하지 않으므로
날짜가 primaryKey
기록을 열람할때도 Date를 전부 불러와서
좌 우 버튼으로 날짜를 변경할때 존재하는 날짜로만 이동 가능
6월 24일에 루틴이 존재하지 않을경우 6월 24일로 이동하는 일은 없음
-
Review
지나간 날짜에 한해서 한개의 코멘트만 작성 가능
ex) 이 날은 무슨무슨 일때문에 이러한 루틴을 하지 못했다
날짜에따라 하나만 존재 가능하므로
날짜가 PrimaryKey
-
Routine
하나하나의 기록물인 Routine
date -> 저장한 날짜, 같은날짜에 여러가지 Routine 가능
text -> 기록하는 내용 ex) 영어단어 공부하기, 아침 산책하기
isFinished -> 완료한 루틴인지 체크
category -> 카테고리를 설정 가능 (추후 업데이트 예정)
id -> Primary Key값 autoGenerate임
기타 사항들
날짜 저장은 어떻게 되는가
일단 앱을 켰을때 날짜가 저장이 됨 (SharedPreference)
오늘 앱을 켰을때 가장 최근 앱을 켠 날짜가 다를 경우
이전에 저장된 날짜가 Room DB에 저장이 됨
하지만 만약 가장 최근 앱을 켠 날짜에 등록된 Routine가 없다면
그날에 등록한 Routine이 없기때문에 이전 날짜가 Room DB에 저장되지 않음
추후 추가될 수 있는 Entity
CoreRoutine -> 매일 등록해놓고싶은 Routine이 존재할 수 있음
ex) 영양제 챙겨먹기
그럴경우에 오늘 처음 앱을 켰을때 오늘자 Routine에 등록되게 만듦
그래서 새로운 Entity를 만들어 CoreRoutine을 등록 가능
물론 앱을 키지 않은 날짜에는 Routine이 등록되지 않음
위의 기타사항과 맥락이 같음