diff --git a/sam/docs/features/documents/mng-document-template.md b/sam/docs/features/documents/mng-document-template.md index 5ced3e0..5570865 100644 --- a/sam/docs/features/documents/mng-document-template.md +++ b/sam/docs/features/documents/mng-document-template.md @@ -11,10 +11,12 @@ 문서관리 시스템에서 사용하는 **서식(Template)**을 생성, 편집, 복제, 관리하는 기능. 검사 성적서, 작업지시서 등 다양한 문서 양식을 정의하며, 2가지 빌더 타입을 지원한다. -| 빌더 | builder_type | 설명 | -|------|-------------|------| -| **Legacy Builder** | `legacy` 또는 null | 탭 기반 폼 UI (순수 JavaScript) | -| **Block Builder** | `block` | WYSIWYG 캔버스 편집기 (Alpine.js + SortableJS) | +| 빌더 | builder_type | UI 명칭 | 설명 | +|------|-------------|---------|------| +| **Legacy Builder** | `legacy` 또는 null | 새 양식 | 탭 기반 폼 UI (순수 JavaScript) | +| **Block Builder** | `block` | 양식 디자이너 | WYSIWYG 캔버스 편집기 (Alpine.js + SortableJS) | + +> **명칭 변경 이력**: Block Builder의 UI 표시 명칭이 '블록 빌더' → '양식 디자이너'로 변경됨 (2026-02-28) **핵심 기능:** - 결재선, 기본필드, 검사 기준서, 테이블 컬럼 정의 @@ -32,9 +34,9 @@ ``` GET /document-templates → index (목록) GET /document-templates/create → create (Legacy 신규 생성) -GET /document-templates/block-create → blockCreate (Block Builder 신규 생성) +GET /document-templates/block-create → blockCreate (양식 디자이너 신규 생성) GET /document-templates/{id}/edit → edit (Legacy 편집) -GET /document-templates/{id}/block-edit → blockEdit (Block Builder 편집) +GET /document-templates/{id}/block-edit → blockEdit (양식 디자이너 편집) ``` ### 2.2 API 라우트 (CRUD + 기능) @@ -220,9 +222,9 @@ if (!empty($template->linked_item_ids)) { |--------|------| | `index()` | HTMX 요청 → HX-Redirect 반환 (전체 페이지 로드 강제) | | `create()` | Legacy 신규 생성 폼 렌더링 | -| `edit($id)` | Legacy 편집. Block Builder 타입이면 `blockEdit`으로 자동 리다이렉트 | -| `blockCreate()` | Block Builder 신규 생성 (빈 캔버스) | -| `blockEdit($id)` | Block Builder 편집 (스키마 로드) | +| `edit($id)` | Legacy 편집. 양식 디자이너 타입이면 `blockEdit`으로 자동 리다이렉트 | +| `blockCreate()` | 양식 디자이너 신규 생성 (빈 캔버스) | +| `blockEdit($id)` | 양식 디자이너 편집 (스키마 로드) | **공통 데이터 준비:** @@ -369,7 +371,7 @@ foreach ($data['sections'] as $section) { ``` ┌─────────────────────────────────────────────────┐ │ 문서양식관리 │ -│ [+ 새 양식 (Legacy)] [+ 양식 디자이너 (Block)] │ +│ [+ 새 양식] [+ 양식 디자이너] │ ├─────────────────────────────────────────────────┤ │ 필터: [검색어] [분류 ▼] [활성/비활성/휴지통 ▼] │ ├─────────────────────────────────────────────────┤ @@ -391,7 +393,7 @@ foreach ($data['sections'] as $section) { ``` **액션 버튼:** -- **편집**: Legacy → `/document-templates/{id}/edit`, Block → `/document-templates/{id}/block-edit` +- **편집**: 새 양식 → `/document-templates/{id}/edit`, 양식 디자이너 → `/document-templates/{id}/block-edit` - **복제**: `duplicateTemplate(id)` — 이름 입력 모달 후 POST - **삭제**: `confirmDelete(id)` — 확인 후 DELETE - **미리보기**: `previewTemplate(id)` — 모달 표시 @@ -484,7 +486,7 @@ foreach ($data['sections'] as $section) { measurement_type에 따라 컬럼 타입 결정 ``` -### 6.3 Block Builder 편집 화면 (`block-editor.blade.php`) +### 6.3 양식 디자이너 편집 화면 (`block-editor.blade.php`) **3패널 레이아웃:** @@ -579,7 +581,7 @@ buildDocumentPreviewHtml(data) └── 비고/종합판정 섹션 ``` -### 7.2 Block Builder 미리보기 +### 7.2 양식 디자이너 미리보기 ```javascript buildBlockPreviewHtml(data) @@ -732,9 +734,9 @@ htmx.trigger('#template-table', 'filterSubmit') → 테이블 새로고침 --- -## 12. Block Builder vs Legacy Builder 비교 +## 12. 양식 디자이너(Block Builder) vs 새 양식(Legacy Builder) 비교 -| 항목 | Block Builder | Legacy Builder | +| 항목 | 양식 디자이너 | 새 양식 | |------|:------------:|:-------------:| | builder_type | `block` | `legacy` 또는 null | | 편집 UI | WYSIWYG 캔버스 (Alpine.js) | 탭 폼 (순수 JavaScript) | @@ -805,7 +807,7 @@ GET /v1/document-templates/{id} → show (상세) | 모델 (8개) | `mng/app/Models/DocumentTemplate*.php` | | 뷰 - 목록 | `mng/resources/views/document-templates/index.blade.php` | | 뷰 - Legacy 편집 | `mng/resources/views/document-templates/edit.blade.php` | -| 뷰 - Block Builder | `mng/resources/views/document-templates/block-editor.blade.php` | +| 뷰 - 양식 디자이너 | `mng/resources/views/document-templates/block-editor.blade.php` | | 뷰 - 테이블 | `mng/resources/views/document-templates/partials/table.blade.php` | | 뷰 - 미리보기 | `mng/resources/views/document-templates/partials/preview-modal.blade.php` | | API 서비스 | `api/app/Services/DocumentTemplateService.php` |