feat: 품목관리 기능 개선 및 문서화 업데이트

- 품목 상세/수정 페이지 파일 다운로드 기능 개선
- DynamicItemForm 파일 업로드 UI/UX 개선 (시방서, 인정서)
- BendingDiagramSection 조립/절곡 부품 전개도 통합
- API proxy route 품목 타입별 라우팅 개선
- ItemListClient 파일 다운로드 유틸리티 적용
- 품목코드 중복 체크 및 다이얼로그 추가

문서화:
- DynamicItemForm 훅 분리 계획서 추가 (2161줄 → 900줄 목표)
- 백엔드 API 마이그레이션 문서 추가
- 대용량 파일 처리 전략 가이드 추가
- 테넌트 데이터 격리 감사 문서 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
byeongcheolryu
2025-12-16 11:01:25 +09:00
parent 8457dba0fc
commit b1587071f2
25 changed files with 3905 additions and 183 deletions

View File

@@ -99,7 +99,7 @@ export interface ItemRevision {
/**
* 품목 개별 파일 정보
* API 응답: files.specification[0], files.certification[0] 등
* API 응답: files.specification_files[0], files.certification_files[0] 등
*/
export interface ItemFile {
id: number; // 파일 ID (file_id로 사용)
@@ -113,8 +113,8 @@ export interface ItemFile {
*/
export interface ItemFiles {
bending_diagram?: ItemFile[]; // 전개도 파일들
specification?: ItemFile[]; // 시방서 파일들
certification?: ItemFile[]; // 인정서 파일들
specification_files?: ItemFile[]; // 시방서 파일들
certification_files?: ItemFile[]; // 인정서 파일들
}
// ===== 품목 마스터 (메인) =====
@@ -174,6 +174,7 @@ export interface ItemMaster {
// 절곡품 관련
bendingDiagram?: string; // 전개도 이미지 URL
bendingDiagramFileId?: number; // 전개도 파일 ID (다운로드/미리보기용)
bendingDetails?: BendingDetail[]; // 전개도 상세 데이터
material?: string; // 재질 (EGI 1.55T, SUS 1.2T)
length?: string; // 길이/목함 (mm)
@@ -192,8 +193,10 @@ export interface ItemMaster {
certificationEndDate?: string; // 인정 유효기간 종료일
specificationFile?: string; // 시방서 파일 URL
specificationFileName?: string; // 시방서 파일명
specificationFileId?: number; // 시방서 파일 ID (다운로드용)
certificationFile?: string; // 인정서 파일 URL
certificationFileName?: string; // 인정서 파일명
certificationFileId?: number; // 인정서 파일 ID (다운로드용)
// === 파일 정보 (새 API 구조) ===
files?: ItemFiles; // 파일 목록 (타입별 배열)