feat: 업무 상세 부속·활동 피드·내 업무 집계 + 페이지네이션 (5~8단계)

- 5단계(업무 상세 부속): 체크리스트(상세 읽기전용/수정폼 추가·삭제)·댓글/답글·파일 첨부(서버 로컬 업로드 폴더)·승인 워크플로우(요청/승인/수정요청 노트)
- 6단계(활동 피드): 저장소/멤버/업무 행위를 이벤트로 자동 적재, 저장소 활동 피드·업무 활동 탭 실연동(프론트가 type+payload로 문구 조립)
- 7단계(내 업무): 담당/지시 저장소 횡단 집계, MyTasksPage 실연동, TaskAssigneePage(/view) 제거
- 8단계(진행): 목록 페이지네이션 통일 — 백엔드 전체(공통 유틸 + 5개 목록, 저장소 업무는 세그먼트/검색/카운트) + 프론트 더보기(저장소 목록·내 업무 완료, 멤버·저장소 업무 대기)
- UI 보강: 업무 목록 댓글/첨부 분리표기, 첨부 배지 색상·라벨 통일, 완료 업무 D-Day 배지, 활동 이벤트 점검·보강(업무 수정/삭제·답글·첨부 삭제)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-18 18:13:17 +09:00
parent 875eddf659
commit a056d7f55a
51 changed files with 3437 additions and 1732 deletions
+16
View File
@@ -23,14 +23,20 @@ export interface User {
/** 첨부파일 */
export interface Attachment {
/** 첨부 ID(API 연동 시) */
id?: string
name: string
size: string
/** 파일 아이콘 종류 */
kind: 'pdf' | 'zip' | 'doc' | 'img'
/** 다운로드 URL(API 연동 시) */
url?: string
}
/** 체크리스트 항목 */
export interface ChecklistItem {
/** 항목 ID(API 연동 시) */
id?: string
text: string
done: boolean
}
@@ -76,11 +82,15 @@ export interface RepoTask {
checklist?: [number, number]
/** 코멘트 수 */
comments?: number
/** 첨부 파일 수 */
files?: number
assignees: User[]
}
/** 댓글의 답글 */
export interface Reply {
/** 답글 ID(API 연동 시) */
id?: string
author: User
time: string
text: string
@@ -88,6 +98,8 @@ export interface Reply {
/** 댓글 */
export interface Comment {
/** 댓글 ID(API 연동 시) */
id?: string
author: User
/** 작성자 역할 배지(예: 지시자) */
roleBadge?: string
@@ -135,6 +147,8 @@ export interface TaskDetail {
requestedAgo: string
note: string
}
/** 수정 요청 메시지(수정 요청 상태일 때) */
changesNote?: string
issuedLabel: string
}
@@ -463,6 +477,8 @@ export interface MyTaskRow {
title: string
status: TaskStatus
repoName: string
/** 라우팅용 저장소 식별자(slug) */
repoId?: string
/** 담당자 미니 아바타(지시 뷰) */
assignees?: User[]
/** 보조 텍스트(예: "지시 · 한승우", "정민호", "박지훈님이 2시간 전 승인 요청") */