# 공통코드 관리 시스템 설계 문서 ## 📋 목차 1. [시스템 개요](#🎯-시스템-개요) 2. [아키텍처 구조](#🏗️-아키텍처-구조) 3. [핵심 기능](#🚀-핵심-기능) 4. [데이터베이스 설계](#🗄️-데이터베이스-설계) 5. [화면 구성 요소](#🎨-화면-구성-요소) 6. [API 설계](#🌐-api-설계) 7. [프론트엔드 구현](#🎭-프론트엔드-구현) 8. [백엔드 구현](#⚙️-백엔드-구현) 9. [사용 시나리오](#🎬-사용-시나리오) 10. [개발 계획](#📅-개발-계획-및-진행상황) ## 🎯 시스템 개요 ### 공통코드 관리 시스템이란? 공통코드 관리 시스템은 **시스템에서 사용하는 공통적인 코드값들을 중앙에서 관리하는 기능**입니다. 드롭다운, 선택박스 등에서 반복적으로 사용되는 코드-값 쌍을 체계적으로 관리하여 데이터 일관성을 보장하고 개발 효율성을 높입니다. ### 주요 특징 - **중앙 집중 관리**: 모든 공통코드를 한 곳에서 통합 관리 - **카테고리 기반 분류**: 코드를 카테고리별로 체계적 분류 - **다국어 지원**: 한국어/영어 코드명 지원 - **화면관리 시스템 연계**: 웹 타입 'code'와 완벽 연동 - **실시간 반영**: 코드 변경사항 즉시 시스템 전체 반영 - **관리자 전용**: 관리자 메뉴에서만 접근 가능 ### 🎯 **필수 요구사항** - ✅ **관리자 메뉴 접근**: 관리자 메뉴에서만 접근 가능 - ✅ **코드 카테고리 관리**: 카테고리 생성/수정/삭제 - ✅ **코드 상세 관리**: 코드값과 코드명 매핑 관리 - ✅ **정렬 순서 관리**: 코드 표시 순서 조정 - ✅ **활성/비활성 관리**: 코드 사용 여부 제어 - ✅ **검색 및 필터링**: 대량 코드 효율적 관리 - ✅ **화면관리 연계**: column_labels.code_category와 연동 ## 🏗️ 아키텍처 구조 ### 전체 구조도 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ Frontend │ │ Backend │ │ Database │ │ │ │ │ │ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ │ CodeCategory│ │ │ │ CommonCode │ │ │ │ code_ │ │ │ │ Management │ │ │ │ Controller │ │ │ │ category │ │ │ │ (React) │ │ │ │ │ │ │ │ Table │ │ │ └─────────────┘ │ │ └─────────────┘ │ │ └─────────────┘ │ │ │ │ │ │ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ │ CodeDetail │ │ │ │ CommonCode │ │ │ │ code_info │ │ │ │ Management │ │ │ │ Service │ │ │ │ Table │ │ │ │ (React) │ │ │ │ │ │ │ │ │ │ │ └─────────────┘ │ │ └─────────────┘ │ │ └─────────────┘ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ ``` ### 화면관리 시스템 연계 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 화면관리 시스템 │ │ 공통코드 관리 │ │ 실제 화면 │ │ │ │ │ │ │ │ column_labels │───▶│ code_category │───▶│ Select Widget │ │ web_type='code' │ │ code_info │ │