리포트 템플릿 저장 구현

This commit is contained in:
dohyeons
2025-10-01 15:03:52 +09:00
parent 2ee4dd0b58
commit 62d36abb65
9 changed files with 852 additions and 104 deletions

View File

@@ -119,95 +119,110 @@
- `frontend/components/report/designer/ReportPreviewModal.tsx`
### 9. 템플릿 시스템
- [x] 시스템 템플릿 적용 (발주서, 청구서, 기본)
- [x] 템플릿별 기본 컴포넌트 자동 배치
- [x] 템플릿별 기본 쿼리 자동 생성
- [x] 사용자 정의 템플릿 저장 기능
- [x] 사용자 정의 템플릿 목록 조회
- [x] 사용자 정의 템플릿 삭제
- [x] 사용자 정의 템플릿 적용 (백엔드 연동)
**파일**:
- `frontend/contexts/ReportDesignerContext.tsx` (템플릿 적용 로직)
- `frontend/components/report/designer/TemplatePalette.tsx`
- `frontend/components/report/designer/SaveAsTemplateModal.tsx`
- `backend-node/src/services/reportService.ts` (createTemplateFromLayout)
### 10. 외부 DB 연동
- [x] 쿼리별 외부 DB 연결 선택
- [x] 외부 DB 연결 목록 조회 API
- [x] 쿼리 실행 시 외부 DB 지원
- [x] 내부/외부 DB 선택 UI
**파일**:
- `frontend/components/report/designer/QueryManager.tsx`
- `backend-node/src/services/reportService.ts` (executeQuery with external DB)
### 11. 컴포넌트 스타일링
- [x] 폰트 크기 설정
- [x] 폰트 색상 설정 (컬러피커)
- [x] 폰트 굵기 (보통/굵게)
- [x] 텍스트 정렬 (좌/중/우)
- [x] 배경색 설정 (투명 옵션 포함)
- [x] 테두리 설정 (두께, 색상)
- [x] 캔버스 및 미리보기에 스타일 반영
**파일**:
- `frontend/components/report/designer/ReportDesignerRightPanel.tsx`
- `frontend/components/report/designer/CanvasComponent.tsx`
---
## 진행 중인 작업 🚧
### 템플릿 적용 기능 (현재 작업)
- [ ] 템플릿 선택 시 컴포넌트 자동 배치
- [ ] 템플릿별 기본 쿼리 생성
- [ ] 발주서 템플릿 구현
- [ ] 청구서 템플릿 구현
- [ ] 기본 템플릿 구현
없음 (현재 모든 핵심 기능 구현 완료)
---
## 남은 작업 (우선순위순) 📋
### Phase 1: 핵심 기능 완성
### Phase 1: 사용성 개선 (권장)
1. **템플릿 적용 기능** ⬅️ 다음 작업
1. **PDF/WORD 내보내기** ⬅️ 다음 권장 작업
- 템플릿 팔레트 클릭 이벤트 처리
- 템플릿별 레이아웃 정의
- 컴포넌트 자동 배치 로직
- 기본 쿼리 자동 생성
2. **스타일링 속성 추가**
- 폰트 크기, 색상, 굵기, 정렬
- 배경색, 테두리 (색상, 두께, 스타일)
- 패딩, 마진
- 조건부 서식 (선택사항)
3. **리포트 복사/삭제 기능 완성**
- 복사 기능 테스트 및 개선
- 삭제 확인 다이얼로그
- 삭제 API 연결
### Phase 2: 고급 기능
4. **사용자 정의 템플릿 저장**
- 현재 레이아웃을 템플릿으로 저장
- 템플릿 이름/설명 입력
- 템플릿 목록에 추가
- 시스템 템플릿과 구분
5. **외부 DB 연동**
- 외부 DB 연결 정보 관리
- 쿼리 실행 시 DB 선택
- 연결 테스트 기능
6. **PDF/WORD 내보내기**
- jsPDF 또는 pdfmake 라이브러리 사용
- HTML to DOCX 변환
- 다운로드 기능 구현
- 미리보기 모달에 버튼 추가
### Phase 3: 사용성 개선
7. **레이아웃 도구**
2. **레이아웃 도구**
- 격자 스냅 (Grid Snap)
- 정렬 가이드라인
- 컴포넌트 그룹화
- 실행 취소/다시 실행 (Undo/Redo)
8. **쿼리 관리 개선**
3. **쿼리 관리 개선**
- 쿼리 미리보기 개선 (테이블 형태)
- 쿼리 저장/불러오기
- 쿼리 템플릿
9. **성능 최적화**
### Phase 2: 추가 컴포넌트
4. **다양한 컴포넌트 추가**
- 이미지 컴포넌트
- 차트 컴포넌트 (막대, 선, 원형)
- 바코드/QR코드 (선택사항)
- 구분선 (Divider)
- 체크박스/라디오 버튼
5. **조건부 서식**
- 특정 조건에 따른 스타일 변경
- 값 범위에 따른 색상 표시
- 수식 기반 표시/숨김
### Phase 3: 성능 및 보안
6. **성능 최적화**
- 쿼리 결과 캐싱
- 대용량 데이터 페이징
- 렌더링 최적화
- 이미지 레이지 로딩
### Phase 4: 추가 기능
10. **다양한 컴포넌트 추가**
- 이미지 컴포넌트
- 차트 컴포넌트 (막대, 선, 원형)
- 바코드/QR코드 (선택사항)
11. **권한 관리**
- 리포트별 접근 권한
- 수정 권한 분리
- 템플릿 공유
7. **권한 관리**
- 리포트별 접근 권한
- 수정 권한 분리
- 템플릿 공유
- 사용자별 리포트 목록 필터링
---
@@ -300,4 +315,4 @@
**최종 업데이트**: 2025-10-01
**작성자**: AI Assistant
**상태**: 복사/삭제 기능 구현 완료, 테스트 대기 중 (75% 완료)
**상태**: 핵심 기능 구현 완료 (90% 완료)