Skip to content

[feat] 하위 태스크 날짜별 순서 변경 API #223

Open

Description

@laura-jung

Feature Issue 📌

TODO처럼 하위 태스크도 드래그앤드랍으로 순서를 바꿀 수 있게 합니다. 변경한 순서는 해당 날짜에만 적용됩니다.

  • 날짜별 순서는 subtask_completions에 sort_order(nullable) 컬럼을 추가해 저장합니다. 값이 없으면 subtasks.sort_order(기본 순서)를 따릅니다.
  • 새 API: PATCH /api/v1/todos/{todoId}/subtasks/{subtaskId}/order ({ newIndex, date })
  • 완료된 하위 태스크는 순서를 변경할 수 없고, 조회 시 미완료 항목 아래에 정렬됩니다.
  • PATCH /api/v1/todos/{todoId}는 하위 태스크의 내용 수정·추가·삭제만 처리하고 기존 순서는 바꾸지 않습니다. 새 항목은 맨 끝에 추가됩니다.

Todo ✔️

  • SubtaskCompletion에 nullable sort_order 컬럼 추가
  • SubtaskReorderer로 날짜별 순서 재정렬 로직 구현 (인스턴스·하위 태스크 행 확보, 완료 항목 순서 변경 차단)
  • 하위 태스크 순서 변경 API, 요청·응답 DTO, 성공·에러 코드, TodoControllerDocs 추가
  • TODO 상세·홈·포커스 조회에 날짜별 하위 태스크 순서 반영
  • Todo.subtasks 기본 순서 정렬(@OrderBy) 보장
  • TODO 수정 API에서 하위 태스크 배열 순서로 기본 순서를 덮어쓰지 않도록 변경
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions