From 1f2d5ff113b2c35d9ba6ddd945cc5759269ae487 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B6=8C=ED=98=81=EC=84=B1?= Date: Sat, 31 Jan 2026 04:43:15 +0900 Subject: [PATCH] =?UTF-8?q?docs:=EB=AC=B8=EC=84=9C=EA=B4=80=EB=A6=AC=20?= =?UTF-8?q?=EA=B3=84=ED=9A=8D=20Phase=202.2=20=EC=99=84=EB=A3=8C=20?= =?UTF-8?q?=EB=B0=98=EC=98=81=20(=EC=A7=84=ED=96=89=EB=A5=A0=2035%)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Phase 2.2 완료 표시 (동적 검사 테이블 + EAV 저장) - changelog에 Phase 2.2 상세 이력 추가 Co-Authored-By: Claude Opus 4.5 --- plans/document-management-system-changelog.md | 3 ++- plans/document-management-system-plan.md | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/plans/document-management-system-changelog.md b/plans/document-management-system-changelog.md index 7730821..0399a98 100644 --- a/plans/document-management-system-changelog.md +++ b/plans/document-management-system-changelog.md @@ -15,4 +15,5 @@ | 2026-01-31 | Phase 1.3 완료 | IncomingInspectionTemplateSeeder 생성. EGI(ID:7), SUS(ID:8) 2종 시드 완료. 결재2+기본필드10+섹션+항목+컬럼 전체 | 섹션 3.1 | - | | 2026-01-31 | Phase 1.4 완료 | 미리보기 기능 기존 구현 확인. 모달로 결재란+기본정보+검사이미지+검사테이블(complex)+Footer 모두 렌더링 | 섹션 3.1 | - | | 2026-01-31 | Phase 1.5 완료 | 양식 복제 기능. duplicate() 메서드 + 라우트 + 테이블 버튼 + JS 함수 추가 | 섹션 3.1 | - | -| 2026-01-31 | Phase 2.1 완료 | 문서 생성 기능 보완. ①문서번호 카테고리별 prefix(IQC/PRD/SLS/PUR, YYMMDD-순번) ②결재라인 초기화(template.approvalLines→document_approvals) ③기본필드 뷰 속성 불일치 수정(field_type/label/default_value 매핑, Str::slug로 field_key 생성) ④섹션 title 참조 수정 | 섹션 3.2 | - | \ No newline at end of file +| 2026-01-31 | Phase 2.1 완료 | 문서 생성 기능 보완. ①문서번호 카테고리별 prefix(IQC/PRD/SLS/PUR, YYMMDD-순번) ②결재라인 초기화(template.approvalLines→document_approvals) ③기본필드 뷰 속성 불일치 수정(field_type/label/default_value 매핑, Str::slug로 field_key 생성) ④섹션 title 참조 수정 | 섹션 3.2 | - | +| 2026-01-31 | Phase 2.2 완료 | 문서 데이터 입력 UI. ①섹션별 동적 검사 테이블 렌더링(complex/select/check/measurement/text 컬럼 타입 지원) ②서브 라벨 행(complex 컬럼의 n1/n2/n3) ③정적 컬럼 자동 매핑(NO/검사항목/검사기준/검사방식/검사주기→item속성) ④종합판정+비고 Footer ⑤JS 폼 데이터 수집(기본필드+섹션데이터+체크박스) ⑥백엔드 saveDocumentData() 공통 메서드(section_id/column_id/row_index EAV 저장) | 섹션 3.2 | - | \ No newline at end of file diff --git a/plans/document-management-system-plan.md b/plans/document-management-system-plan.md index a69c95a..5de7da2 100644 --- a/plans/document-management-system-plan.md +++ b/plans/document-management-system-plan.md @@ -105,9 +105,9 @@ Route::resource('documents', DocumentController::class); // /d | 항목 | 내용 | |------|------| -| **마지막 완료 작업** | Phase 2.1 - 문서 생성 (양식 선택 → 빈 문서 생성, 문서번호 자동 채번, 결재라인 초기화) | -| **다음 작업** | Phase 2.2 - 문서 데이터 입력 UI (양식 columns/sections 기반 동적 폼) | -| **진행률** | 6/20 (30%) - Phase 1 ✅, Phase 2.1 ✅ | +| **마지막 완료 작업** | Phase 2.2 - 문서 데이터 입력 UI (섹션 테이블 동적 렌더링 + EAV 저장) | +| **다음 작업** | Phase 2.3 - 결재 워크플로우 (DRAFT→PENDING→APPROVED/REJECTED) | +| **진행률** | 7/20 (35%) - Phase 1 ✅, Phase 2.1~2.2 ✅ | | **마지막 업데이트** | 2026-01-31 | --- @@ -275,7 +275,7 @@ documents # 문서 인스턴스 | # | 작업 항목 | 상태 | 완료 기준 | 비고 | |---|----------|:----:|----------|------| | 2.1 | 문서 생성 (양식 선택 -> 빈 문서 생성) | ✅ | 양식 선택 후 빈 문서(DRAFT)가 documents 테이블에 생성됨. 문서번호 자동 채번 | 카테고리별 prefix (IQC/PRD/SLS/PUR), 결재라인 초기화, 기본필드 뷰 수정 완료 | -| 2.2 | 문서 데이터 입력 UI | ⏳ | 양식의 columns/sections 기반 동적 폼에서 검사값 입력 가능. 저장 시 document_data에 EAV로 저장 | Blade + HTMX | +| 2.2 | 문서 데이터 입력 UI | ✅ | 양식의 columns/sections 기반 동적 테이블 렌더링. complex/select/check/measurement/text 컬럼 타입 지원. EAV 저장 (section_id, column_id, row_index) | field_key 패턴: s{섹션}_r{행}_c{컬럼}_sub{인덱스} | | 2.3 | 결재 워크플로우 (제출/승인/반려) | ⏳ | DRAFT→PENDING(제출)→APPROVED/REJECTED. document_approvals에 결재 이력 기록 | 기존 상태 ENUM 활용 | | 2.4 | 문서 목록/검색/필터 | ⏳ | 상태별(DRAFT/PENDING/APPROVED), 양식별, 날짜별 필터 동작. 페이징 포함 | | | 2.5 | 문서 PDF 출력 | ⏭️ | **추후 고려** - react에 이미 html2pdf.js 구현됨 (6.2 결정사항 #1 참고) | |