- 미사용 코드 삭제: ThemeContext, itemStore, utils/date.ts, utils/formatAmount.ts - 유틸리티 이동: date, formatAmount → src/lib/utils/ (중앙 집중화) - 다수 page.tsx 클라이언트 컴포넌트 패턴 통일 - DateRangeSelector 리팩토링 및 date-range-picker UI 컴포넌트 추가 - ThemeSelect/themeStore Zustand 직접 연동으로 전환 - 건설/회계/영업/품목/출하 등 전반적 컴포넌트 개선 - UniversalListPage, IntegratedListTemplateV2 타입 확장 - 프론트엔드 종합 리뷰 문서 및 개선 체크리스트 추가 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
343 lines
20 KiB
Markdown
343 lines
20 KiB
Markdown
# SAM ERP TODO/FIXME 이슈 트래커
|
|
|
|
> 자동 생성: 2026-02-19
|
|
> 총 건수: 102건
|
|
> 분류: A~F 카테고리
|
|
> 검색 범위: `src/` 디렉토리 내 `*.ts`, `*.tsx` 파일
|
|
|
|
---
|
|
|
|
## 요약
|
|
|
|
| 카테고리 | 건수 | 담당 | 비고 |
|
|
|----------|------|------|------|
|
|
| A. 백엔드 API 연동 대기 | 55 | 백엔드팀 | API 완성 시 해결 |
|
|
| B. 백엔드 필드 추가 대기 | 10 | 백엔드팀 | DB/API 스키마 추가 |
|
|
| C. UI/기능 구현 대기 | 16 | 프론트팀 | 백로그 |
|
|
| D. Phase 2 / 장기 과제 | 10 | 전체 | 로드맵 반영 |
|
|
| E. CEO 대시보드 목업 데이터 | 4 | 프론트팀 | 대시보드 API 연동 시 |
|
|
| F. 기타 | 7 | - | - |
|
|
|
|
---
|
|
|
|
## A. 백엔드 API 연동 대기 (55건)
|
|
|
|
### 모듈별 분류
|
|
|
|
#### 품목기준관리 (Item Master Store) - 16건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 97 | `// TODO: API 호출` (createPage - 페이지 생성) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 160 | `// TODO: API 호출` (updatePage - 페이지 수정) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 214 | `// TODO: API 호출` (deletePage - 페이지 삭제) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 289 | `// TODO: API 호출` (createSection - 섹션 생성) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 335 | `// TODO: API 호출` (updateSection - 섹션 수정) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 370 | `// TODO: API 호출` (deleteSection - 섹션 삭제) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 423 | `// TODO: API 호출하여 서버에도 순서 저장` (reorderSections) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 460 | `// TODO: API 호출` (createField - 필드 생성) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 522 | `// TODO: API 호출` (updateField - 필드 수정) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 552 | `// TODO: API 호출` (deleteField - 필드 삭제) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 587 | `// TODO: API 호출` (updateFieldOptions - 필드 옵션 수정) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 640 | `// TODO: API 호출하여 서버에도 순서 저장` (reorderFields) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 677 | `// TODO: API 호출` (createTab - 탭 생성) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 707 | `// TODO: API 호출` (updateTab - 탭 수정) |
|
|
| `src/stores/item-master/useItemMasterStore.ts` | 726 | `// TODO: API 호출` (deleteTab - 탭 삭제) |
|
|
| `src/components/items/ItemMasterDataManagement/hooks/usePageManagement.ts` | 157 | `// TODO: 원본 페이지의 섹션들도 복제 필요 (별도 API 호출)` |
|
|
|
|
#### 회계 (Accounting) - 19건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 32 | `// TODO: 실제 API 연동 시 교체` (getGiftCertificates) |
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 45 | `// TODO: 실제 API 연동 시 교체` (getGiftCertificateDetail) |
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 58 | `// TODO: 실제 API 연동 시 교체` (createGiftCertificate) |
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 86 | `// TODO: 실제 API 연동 시 교체` (updateGiftCertificate) |
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 113 | `// TODO: 실제 API 연동 시 교체` (deleteGiftCertificate) |
|
|
| `src/components/accounting/GiftCertificateManagement/actions.ts` | 136 | `// TODO: 실제 API 연동 시 교체` (useGiftCertificate) |
|
|
| `src/components/accounting/TaxInvoiceManagement/actions.ts` | 24 | `// TODO: 실제 API 연동 시 Mock 제거` (Mock 데이터) |
|
|
| `src/components/accounting/TaxInvoiceManagement/actions.ts` | 44 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (getTaxInvoices) |
|
|
| `src/components/accounting/TaxInvoiceManagement/actions.ts` | 66 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (getTaxInvoiceDetail) |
|
|
| `src/components/accounting/TaxInvoiceManagement/actions.ts` | 99 | `// TODO: 실제 API 연동 시 Mock 제거` (세금계산서 상세) |
|
|
| `src/components/accounting/TaxInvoiceManagement/actions.ts` | 115 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (deleteTaxInvoice) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/actions.ts` | 36 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (getTaxInvoices) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/actions.ts` | 59 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (getTaxInvoiceDetail) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/actions.ts` | 86 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (issueTaxInvoice) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/actions.ts` | 112 | `// TODO: 실제 API 연동 시 아래 코드로 교체` (sendEmail) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/actions.ts` | 127 | `// TODO: 실제 API 연동 시 교체` (cancelTaxInvoice) |
|
|
| `src/components/accounting/TaxInvoiceIssuance/index.tsx` | 184 | `// TODO: 실제 API 연동 시 필터 조건으로 getTaxInvoices 호출` |
|
|
| `src/components/accounting/PurchaseManagement/index.tsx` | 232 | `// TODO: API 호출로 저장` |
|
|
| `src/components/accounting/SalesManagement/index.tsx` | 270 | `// TODO: API 호출로 저장` |
|
|
|
|
#### 건설/사업 (Construction/Business) - 9건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/business/construction/progress-billing/actions.ts` | 196 | `// TODO: 실제 API 호출로 대체` (getProgressBillings) |
|
|
| `src/components/business/construction/progress-billing/actions.ts` | 230 | `// TODO: 실제 API 호출로 대체` (getProgressBillingDetail) |
|
|
| `src/components/business/construction/progress-billing/actions.ts` | 263 | `// TODO: 실제 API 호출로 대체` (saveProgressBilling) |
|
|
| `src/components/business/construction/progress-billing/actions.ts` | 292 | `// TODO: 실제 API 호출로 대체` (deleteProgressBilling) |
|
|
| `src/components/business/construction/progress-billing/actions.ts` | 300 | `// TODO: 매출 자동 등록 API 호출` |
|
|
| `src/components/business/construction/progress-billing/hooks/useProgressBillingDetailForm.ts` | 92 | `// TODO: API 호출` (handleSave) |
|
|
| `src/components/business/construction/progress-billing/hooks/useProgressBillingDetailForm.ts` | 111 | `// TODO: API 호출` (handleDelete) |
|
|
| `src/components/business/construction/progress-billing/ProgressBillingDetailForm.tsx` | 77 | `// TODO: API 호출` (handleDelete) |
|
|
| `src/components/business/construction/management/actions.ts` | 20 | `// TODO: 실제 API 연동 시 구현` (프로젝트 관리 전체) |
|
|
|
|
#### 건설/현장관리 (Site Management) - 4건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/business/construction/structure-review/StructureReviewDetailForm.tsx` | 154 | `// TODO: API 연동` (handleSave) |
|
|
| `src/components/business/construction/structure-review/StructureReviewDetailClientV2.tsx` | 76 | `// TODO: API 연동` (handleSave) |
|
|
| `src/components/business/construction/site-management/SiteDetailForm.tsx` | 156 | `// TODO: API 연동` (handleSave) |
|
|
| `src/components/business/construction/site-management/SiteDetailClientV2.tsx` | 68 | `// TODO: API 연동` (handleSave) |
|
|
|
|
#### HR (인사관리) - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/app/[locale]/(protected)/hr/documents/page.tsx` | 73 | `// TODO: 백엔드 API 구현 필요` (인사서류함) |
|
|
| `src/app/[locale]/(protected)/hr/documents/new/page.tsx` | 91 | `// TODO: 백엔드 API 구현 필요` (인사서류 신규등록) |
|
|
|
|
#### 생산 (Production) - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/production/WorkOrders/WipProductionModal.tsx` | 106 | `// TODO: API 연동` (WIP 생산 모달) |
|
|
| `src/app/[locale]/(protected)/quality/qms/components/InspectionModal.tsx` | 340 | `// TODO: 실제 저장 API 연동` (품질검사 저장) |
|
|
|
|
#### 게시판 (Board) - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/board/BoardDetail/index.tsx` | 85 | `// TODO: 댓글 API 연동 (별도 작업)` |
|
|
| `src/app/[locale]/(protected)/board/[boardCode]/[postId]/page.tsx` | 45 | `// TODO: 댓글 API 호출 추가` |
|
|
|
|
#### 설정 (Settings) - 1건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/settings/AttendanceSettingsManagement/index.tsx` | 18 | `// TODO: API 연동 시 작업 사항 - GET/PUT /api/settings/attendance` |
|
|
|
|
---
|
|
|
|
## B. 백엔드 필드 추가 대기 (10건)
|
|
|
|
### 모듈별 분류
|
|
|
|
#### 대시보드 트랜스포머 - 3건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/lib/api/dashboard/transformers.ts` | 261 | `// TODO: 백엔드 daily_change 필드 제공 시 더미값 제거` |
|
|
| `src/lib/api/dashboard/transformers.ts` | 427 | `// TODO: 백엔드 per-card sub_label/count 제공 시 더미값 제거` |
|
|
| `src/lib/api/dashboard/transformers.ts` | 654 | `// TODO: 백엔드 sub_label 필드 제공 시 더미값 제거` |
|
|
|
|
#### 공정관리 (Process Management) - 3건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/process-management/actions.ts` | 486 | `// TODO: API 응답에 process_name, process_category 필드 추가 후 활성화` |
|
|
| `src/components/process-management/RuleModal.tsx` | 285 | `// TODO: API에서 process_name, process_category 필드 지원 후 실제 데이터 표시` |
|
|
| `src/components/process-management/RuleModal.tsx` | 322 | `// TODO: API 지원 후 item.processName / item.processCategory 표시` |
|
|
|
|
#### 생산 (Production) - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/production/WorkOrders/WorkOrderList.tsx` | 181 | `// TODO: API에서 긴급 건수 제공 시 연동` |
|
|
| `src/components/production/WorkOrders/WorkOrderList.tsx` | 187 | `// TODO: API에서 지연 건수 제공 시 연동` |
|
|
|
|
#### 게시판 (Board) - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/board/BoardManagement/BoardForm.tsx` | 24 | `// TODO: API에서 부서 목록 가져오기` |
|
|
| `src/components/board/BoardManagement/BoardForm.tsx` | 33 | `// TODO: API에서 권한 목록 가져오기` |
|
|
|
|
---
|
|
|
|
## C. UI/기능 구현 대기 (16건)
|
|
|
|
### 모듈별 분류
|
|
|
|
#### 다운로드/출력 기능 - 4건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/accounting/BadDebtCollection/BadDebtDetail.tsx` | 268 | `// TODO: 실제 다운로드 로직` |
|
|
| `src/app/[locale]/(protected)/quality/qms/components/Day1DocumentSection.tsx` | 149 | `// TODO: 다운로드 기능` |
|
|
| `src/app/[locale]/(protected)/quality/qms/components/InspectionModal.tsx` | 472 | `// 다운로드 핸들러 (TODO: 실제 구현)` |
|
|
| `src/components/material/ReceivingManagement/ReceivingReceiptDialog.tsx` | 23 | `// TODO: PDF 다운로드 기능` |
|
|
|
|
#### 품목 (Items) - 4건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/items/ItemForm/BOMSection.tsx` | 115 | `// TODO: 실제 itemMasters 데이터로 교체 필요` |
|
|
| `src/components/items/ItemForm/BOMSection.tsx` | 196 | `// TODO: 품목 선택 시 데이터 채우기 로직` |
|
|
| `src/components/items/ItemForm/BOMSection.tsx` | 209 | `// TODO: pricing에서 가져오기` (unitPrice) |
|
|
| `src/components/items/ItemForm/hooks/useBOMManagement.ts` | 89 | `// TODO: pricing에서 가져오기` (unitPrice) |
|
|
|
|
#### 생산 (Production) - 3건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/production/WorkOrders/WorkOrderEdit.tsx` | 277 | `// TODO: API 호출로 서버에 상태 저장` |
|
|
| `src/components/production/WorkOrders/WorkOrderEdit.tsx` | 310 | `// TODO: API 호출로 서버에 저장` |
|
|
| `src/components/production/WorkOrders/WorkOrderEdit.tsx` | 327 | `// TODO: API 호출로 서버에서 삭제` |
|
|
|
|
#### 기타 기능 - 5건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/approval/DocumentDetail/index.tsx` | 161 | `// TODO: 공유 기능 추가 예정 - PDF 다운로드, 이메일, 팩스, 카카오톡 공유` |
|
|
| `src/components/pricing/PricingListClient.tsx` | 177 | `// TODO: 이력 다이얼로그 열기` |
|
|
| `src/components/pricing/PricingListClient.tsx` | 335 | `// TODO: API 연동 시 품목 마스터 동기화 로직 구현` |
|
|
| `src/components/hr/SalaryManagement/index.tsx` | 253 | `// TODO: 지급항목 추가 다이얼로그 또는 로직 구현` |
|
|
| `src/components/production/WorkResults/WorkResultList.tsx` | 70 | `// TODO: 상세 보기 기능 구현` |
|
|
|
|
---
|
|
|
|
## D. Phase 2 / 장기 과제 (10건)
|
|
|
|
### 모듈별 분류
|
|
|
|
#### 품목코드 생성 로직 개선 - 3건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/items/DynamicItemForm/utils/itemCodeGenerator.ts` | 11 | `// TODO: 추후 백엔드 API 또는 품목기준관리에서 설정 가능하도록 변경` |
|
|
| `src/components/items/DynamicItemForm/utils/itemCodeGenerator.ts` | 52 | `// TODO: 추후 품목기준관리에서 설정 가능하도록 변경` |
|
|
| `src/components/items/DynamicItemForm/utils/itemCodeGenerator.ts` | 98 | `// TODO: 추후 품목기준관리에서 설정 가능하도록 변경` |
|
|
|
|
#### 품목기준관리 하드코딩 대체 - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/items/ItemMasterDataManagement/hooks/useTabManagement.ts` | 104 | `// TODO: 나중에 백엔드에서 기준값 로드로 대체 예정` |
|
|
| `src/components/items/ItemMasterDataManagement/hooks/useAttributeManagement.ts` | 80 | `// TODO: 나중에 백엔드 API로 대체` (속성 옵션 하드코딩) |
|
|
|
|
#### 프로덕션 배포 준비 - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/lib/api/toast-utils.ts` | 14 | `// TODO: 프로덕션 배포 시 false로 변경하거나 환경변수 사용` (SHOW_ERROR_CODE) |
|
|
| `src/lib/api/error-handler.ts` | 112 | `// TODO: 프로덕션 배포 시 false로 변경하거나 환경변수 사용` (SHOW_ERROR_CODE) |
|
|
|
|
#### Phase 2 명시 - 2건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/lib/api/item-master.ts` | 99 | `// TODO: Phase 2에서 구현` |
|
|
| `src/components/document-system/viewer/DocumentViewer.tsx` | 314 | `// TODO: BlockRenderer 구현 시 연결` (Phase 2 블록 렌더링) |
|
|
|
|
#### 기타 장기 - 1건
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/lib/api/items.ts` | 26 | `// TODO: 실제 인증 구현에 맞게 수정 필요` (getAuthToken) |
|
|
|
|
---
|
|
|
|
## E. CEO 대시보드 목업 데이터 (4건)
|
|
|
|
| 파일 | 라인 | TODO 내용 |
|
|
|------|------|----------|
|
|
| `src/components/business/CEODashboard/mockData.ts` | 5 | `// TODO: API 연동 시 이 파일을 API 호출로 대체` |
|
|
| `src/components/business/CEODashboard/CEODashboard.tsx` | 253 | `// TODO: API 호출하여 일정 저장` |
|
|
| `src/components/business/CEODashboard/CEODashboard.tsx` | 260 | `// TODO: API 호출하여 일정 삭제` |
|
|
| `src/components/business/CEODashboard/sections/TodayIssueSection.tsx` | 411 | `// TODO: 버튼 - API 구현 후 활성화` (승인/반려 버튼) |
|
|
|
|
---
|
|
|
|
## F. 기타 (7건)
|
|
|
|
| 파일 | 라인 | TODO 내용 | 비고 |
|
|
|------|------|----------|------|
|
|
| `src/contexts/ItemMasterContext.tsx` | 1894 | `// TODO: 전체 init 데이터 새로고침 기능 구현 필요` | 리팩토링 |
|
|
| `src/components/document-system/configs/index.ts` | 10 | `// TODO: Orders Configs` | 설정 추가 대기 |
|
|
| `src/components/quotes/types.ts` | 737 | `// TODO: 동적으로 결정` (productCategory) | 로직 개선 |
|
|
| `src/components/quotes/types.ts` | 875 | `// TODO: 동적으로 결정` (product_category) | 로직 개선 |
|
|
| `src/components/production/WorkOrders/types.ts` | 516 | `// TODO: 실제 단계 추적 필요` (in_progress 상태) | 로직 개선 |
|
|
| `src/components/items/ItemListClient.tsx` | 328 | `// TODO: 실제 API 호출로 데이터 저장` | API 연동 겸 로직 |
|
|
| `src/components/business/construction/management/ProjectListClient.tsx` | 127 | `// TODO: 실제 API 연동 시 new Date()로 변경` (목업 데이터 임시 설정) | 목업 제거 |
|
|
| `src/components/accounting/BadDebtCollection/BadDebtDetail.tsx` | 53 | `// TODO: API에서 조회` (담당자 목록 하드코딩) | API 연동 겸 데이터 |
|
|
| `src/components/settings/CompanyInfoManagement/AddCompanyDialog.tsx` | 60 | `// TODO: 바로빌 API 연동` (외부 API) | 외부 서비스 연동 |
|
|
| `src/components/accounting/SalesManagement/SalesDetail.tsx` | 500 | `// TODO: 거래명세서 조회 기능 연결` | 기능 연결 |
|
|
| `src/app/[locale]/(protected)/hr/employee-management/csv-upload/page.tsx` | 8 | `// TODO: API 연동` (CSV 업로드) | API 연동 |
|
|
| `src/app/[locale]/(protected)/hr/attendance/page.tsx` | 67 | `// TODO: 주소/좌표 설정 UI 추가 후 아래 주석 해제` | UI 추가 후 |
|
|
| `src/components/business/construction/estimates/sections/EstimateDetailTableSection.tsx` | 224 | `// TODO: 견적 상세 기획서 수정 후 초기화 버튼 및 테이블 항목/데이터 재작업 필요` | 기획 대기 |
|
|
| `src/components/material/ReceivingManagement/InspectionCreate.tsx` | 164 | `// TODO: API 호출` (검사 생성) | API 연동 |
|
|
| `src/components/process-management/actions.ts` | 503 | `// TODO: 백엔드 API 수정 요청 - process_name, process_category 필드 추가` | 백엔드 요청 문서 |
|
|
|
|
> 참고: F 카테고리는 A~E에 명확히 분류되지 않는 항목을 포함합니다. 일부는 API 연동과 겹치지만 외부 서비스, 기획 대기, 로직 개선 등 복합적인 성격을 가집니다.
|
|
|
|
---
|
|
|
|
## 백엔드 팀 전달 요약 (A + B = 65건)
|
|
|
|
### 우선순위별 정리
|
|
|
|
#### 즉시 필요 (Critical) - 완전 Mock 상태
|
|
|
|
아래 모듈은 **전체 API가 Mock/로컬로 구현**되어 있어 백엔드 API 완성 즉시 교체 필요:
|
|
|
|
| 모듈 | 건수 | actions.ts 파일 |
|
|
|------|------|-----------------|
|
|
| 상품권 관리 | 6 | `accounting/GiftCertificateManagement/actions.ts` |
|
|
| 세금계산서 관리 | 5 | `accounting/TaxInvoiceManagement/actions.ts` |
|
|
| 세금계산서 발행 | 6 | `accounting/TaxInvoiceIssuance/actions.ts` |
|
|
| 기성관리 | 5+3 | `construction/progress-billing/actions.ts` + hooks |
|
|
| 프로젝트관리 | 1 | `construction/management/actions.ts` (전체 Mock) |
|
|
| 품목기준관리 스토어 | 16 | `stores/item-master/useItemMasterStore.ts` |
|
|
|
|
**소계: 42건** - 이 모듈들은 프론트엔드 UI는 완성되었으나 백엔드 API 미구현 상태
|
|
|
|
#### 필드 추가 요청 (Important)
|
|
|
|
| 요청 대상 | 추가 필드 | 관련 파일 |
|
|
|-----------|----------|----------|
|
|
| CEO 대시보드 API | `daily_change`, `sub_label`, `count` | `lib/api/dashboard/transformers.ts` |
|
|
| 공정관리 품목 API | `process_name`, `process_category` | `process-management/actions.ts`, `RuleModal.tsx` |
|
|
| 작업지시 API | 긴급 건수, 지연 건수 | `WorkOrders/WorkOrderList.tsx` |
|
|
| 게시판 관리 API | 부서 목록, 권한 목록 | `board/BoardManagement/BoardForm.tsx` |
|
|
|
|
**소계: 10건**
|
|
|
|
#### 신규 API 필요 (Normal)
|
|
|
|
| API | 용도 | 관련 파일 |
|
|
|-----|------|----------|
|
|
| 인사서류함 CRUD | HR 문서 관리 | `hr/documents/page.tsx`, `new/page.tsx` |
|
|
| 댓글 CRUD | 게시판 댓글 | `BoardDetail/index.tsx`, `[postId]/page.tsx` |
|
|
| 출퇴근 설정 | GET/PUT | `AttendanceSettingsManagement/index.tsx` |
|
|
| 건설 현장관리 저장 | 현장/구조검토 | `SiteDetailForm.tsx`, `StructureReviewDetailForm.tsx` |
|
|
| WIP 생산 | 생산 모달 | `WipProductionModal.tsx` |
|
|
| 품질검사 저장 | 검사 결과 | `InspectionModal.tsx` |
|
|
|
|
**소계: 13건**
|
|
|
|
---
|
|
|
|
## 통계 요약
|
|
|
|
```
|
|
전체 TODO: 102건
|
|
├── 백엔드 의존: 65건 (63.7%) ← A + B
|
|
├── 프론트 백로그: 16건 (15.7%) ← C
|
|
├── 장기 과제: 10건 (9.8%) ← D
|
|
├── 대시보드 목업: 4건 (3.9%) ← E
|
|
└── 기타: 7건 (6.9%) ← F
|
|
|
|
프론트 독립 해결 가능: 26건 (C + D 일부)
|
|
백엔드 완성 필요: 69건 (A + B + E)
|
|
```
|
|
|
|
---
|
|
|
|
> **주의사항**
|
|
> - `src/app/[locale]/(protected)/dev/dashboard/_components/AIPoweredDashboard.tsx`의 `TODO_ITEMS`는 변수명이며 실제 TODO 주석이 아니므로 제외
|
|
> - 일부 항목은 복합 성격(API 연동 + UI 구현)을 가지며, 주된 블로커 기준으로 분류
|
|
> - 이 문서는 2026-02-19 기준 스냅샷이며, 코드 변경에 따라 갱신 필요
|