Goal & Task에서 time duration feature update #28
Labels
backend
documentation
Improvements or additions to documentation
enhancement
New feature or request
frontend
UI/UX
현재는 goal이나 task를 만든 날짜가 자동으로 goal / task의 시작 날짜로 설정이 되었지만,
사용자가 미래의 goal이나 task를 미리 만들고 싶을 수 있는 등 시간 설정에서 사용자에게 좀더 유동성을 주기 위해 backend goal/task에 'start_at' feature를 추가했고 아래와 같은 feature update를 진행했습니다.
Goal feature update
즉 현재 날짜가 11/29일이어도, 12/21-2/20 (겨울방학 때 할일 goal을 미리 만든다던지) duration을 가진 goal을 만들 수 있습니다.
이때 달력에서 11/29일을 선택하면 해당 goal이 시작 전이므로 안 뜨지만 12/22를 선택하면 해당 goal이 뜹니다.
start_at는 유저가 아무 설정도 안할 경우 default로 오늘 날짜 00:00:00 값으로 timestamp 형태로 백엔드에 보내집니다. 즉 start_at가 none이 될 일은 없습니다.
Task feature update - date
예를 들어 12/21-2/20 goal 내에서 12/21-30에만 해당하는 task를 만들고 싶다고 할 때, add task form에서 start date 12/21을 고르고 deadline에서 12/30을 고르면 됩니다. 이때 달력에서 12/31을 선택하면 해당 task는 뜨지 않습니다.
Recurrent한 경우 (매주 월요일에만 한다던지) 에만 deadline이 있고 일시적인 task는 deadline이 없는 걸로 처음에 스프린트 때 합의가 되었었는데 이 합의를 반영해서 day_of_week가 비어 있으면 start date가 '일시적인 날' 이 되고 deadline은 자동으로 start date와 같아집니다. 이때 day_of_week가 비어 있으면 자동으로 설정된 deadline은 readOnly가 되어 유저가 프론트에서 임의로 바꿀 수 없습니다. day of week를 추가하면 readonly가 해제되어 유저가 데드라인을 설정할 수 있고요.
그리고 task start date가 goal start date보다 앞지른다거나 (12/21에 시작된 goal이면 그 goal의 task는 12/21부터 가능) task deadline을 goal deadline보다 늦게 유저가 고를 경우 alert 창이 뜨고 자동으로 goal deadline으로 설정되도록 해 놓았습니다.
Task feature update - weekday
Task가 12/21-30, 매주 토요일과 일요일로 설정되어 있다면 해당 기간이어도 요일이 다르면 task가 메인 페이지에서 보여지지 않습니다. 예를 들어 오늘 날짜가 12/21-30 사이에 있지만 금요일이면 토, 일 설정된 task는 안 보이게 해 놓았습니다.
-> 이 부분은 요일이 다르면 안보이게 할지 아니면 색을 연한 회색 등으로 다르게 할지 좀더 고민해볼게요.
-> taskbar에 해당 task가 언제 시작해서 언제 끝나는지, 그리고 무슨무슨 요일에 반복되는지 뜨게 할 예정입니다. 이건 아마 오늘 할 거 같네요.
프론트와 백엔드 모두 이 feature를 반영해서 수정하였으며 프론트 상에서 잘 작동하는지 확인하였습니다.
다만 기존의 goal들을 get할때 start_at이 없으므로 에러가 날 수 있으니 먼저 django admin으로 예전에 추가한 goal들을 삭제한 후 테스트 해보시길 바랍니다.
테스팅이 꼬일 것 같아 일단 develop에는 푸시하지 않고 jiye-frontend-dateChanges 브랜치에 푸시해 두었습니다.
The text was updated successfully, but these errors were encountered: