- Docker Compose 개발 환경 설정 (PostgreSQL, pgAdmin, Redis) - 데이터베이스 스키마 초기 설계 (projects, files, materials 테이블) - Python requirements.txt 작성 (FastAPI, SQLAlchemy, Pandas 등) - .gitignore 설정 완료 (Python, Docker, 개발 도구 제외 파일) - README.md 작성 (프로젝트 개요, 기술 스택, 개발 로드맵) - Phase 1 기반 시스템 구축 준비 완료
124 lines
4.1 KiB
Markdown
124 lines
4.1 KiB
Markdown
아! 이해했습니다! 😅
|
|
cat > README.md << 'EOF' 명령어에서 EOF까지의 모든 내용을 한 번에 입력하라는 뜻이에요.
|
|
즉, 이 전체 부분을 한 번에 복사해서 터미널에 붙여넣기하면 됩니다:
|
|
bashcat > README.md << 'EOF'
|
|
# 🚀 TK-MP-Project: BOM 시스템 개발 프로젝트
|
|
|
|
## 📋 프로젝트 개요
|
|
BOM (Bill of Materials) 시스템의 기능 이상을 해결하고, 도면 완성 후 자재 관리의 모든 프로세스를 자동화하는 종합 시스템 개발 프로젝트입니다.
|
|
|
|
## 🎯 프로젝트 목표
|
|
|
|
### 핵심 미션
|
|
**"도면 완성 후 자재 관리의 모든 번거로움을 해결"**
|
|
|
|
### 주요 해결 과제
|
|
- 📄 **파일 분석 자동화**: 엑셀/CSV 자재 목록의 자동 분류 및 정제
|
|
- 🔍 **정확한 분류 체계**: 파이프/피팅/볼트/밸브/계기류의 4단계 자동 분류
|
|
- 💾 **체계적 데이터 관리**: 프로젝트별 버전 관리 및 이력 추적
|
|
- 📊 **업무별 맞춤 출력**: 구매/생산/품질 각 팀의 필요에 맞는 자료 생성
|
|
- 🔄 **리비전 변화 추적**: 도면 변경 시 자재 변경사항 자동 비교
|
|
|
|
## 💻 기술 스택
|
|
|
|
### Backend
|
|
- **Language**: Python 3.9+
|
|
- **Framework**: FastAPI (고성능 API 서버)
|
|
- **Database**: PostgreSQL 15 (복잡한 관계형 데이터 처리)
|
|
- **ORM**: SQLAlchemy (데이터베이스 모델링)
|
|
- **Data Processing**: Pandas, openpyxl (파일 처리)
|
|
|
|
### DevOps & Tools
|
|
- **Containerization**: Docker & Docker Compose
|
|
- **Version Control**: Git (Gitea 호스팅)
|
|
- **Development**: VS Code + Python 확장
|
|
|
|
## 🌐 개발 환경 설정
|
|
|
|
### Git 저장소 접속
|
|
```bash
|
|
# VPN 연결 필요: vpn.hyungi.net:21194
|
|
git clone http://192.168.1.227:10300/hyungi/TK-MP-Project.git
|
|
cd TK-MP-Project
|
|
데이터베이스 실행
|
|
bash# PostgreSQL 및 pgAdmin 실행
|
|
docker-compose up -d postgres pgadmin redis
|
|
|
|
# 접속 확인
|
|
# pgAdmin: http://localhost:5050 (admin@tkmp.local / admin2025)
|
|
Python 개발 환경
|
|
bash# 가상환경 생성
|
|
python -m venv venv
|
|
source venv/bin/activate # macOS/Linux
|
|
|
|
# 의존성 설치
|
|
pip install -r backend/requirements.txt
|
|
|
|
# 개발 서버 실행
|
|
cd backend
|
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
|
|
📁 프로젝트 구조
|
|
TK-MP-Project/
|
|
├── README.md
|
|
├── docker-compose.yml
|
|
├── backend/ # FastAPI 백엔드
|
|
│ ├── app/
|
|
│ │ ├── models/ # SQLAlchemy 모델
|
|
│ │ ├── schemas/ # Pydantic 스키마
|
|
│ │ ├── api/ # API 라우터
|
|
│ │ ├── core/ # 설정 및 유틸리티
|
|
│ │ ├── services/ # 비즈니스 로직
|
|
│ │ └── database/ # DB 연결 설정
|
|
│ └── requirements.txt
|
|
├── database/ # DB 스키마 및 초기 데이터
|
|
│ └── init/
|
|
│ └── 01_schema.sql
|
|
└── docs/ # 프로젝트 문서
|
|
🚀 개발 로드맵
|
|
Phase 1: 기반 시스템 구축 (진행중)
|
|
|
|
Git 환경 구축 ✅
|
|
데이터베이스 스키마 설계 ✅
|
|
Docker 개발 환경 설정 ✅
|
|
FastAPI 기본 구조 구현
|
|
파일 업로드 및 파싱 기능
|
|
|
|
Phase 2: 핵심 기능 개발
|
|
|
|
자재 분류 알고리즘 구현
|
|
웹 인터페이스 구축
|
|
구매 BOM 생성 기능
|
|
|
|
Phase 3: 고도화
|
|
|
|
리비전 비교 기능
|
|
파이프 cutting 자료 생성
|
|
사용자 테스트 및 최적화
|
|
|
|
🗄️ 데이터베이스 스키마
|
|
핵심 테이블
|
|
|
|
projects: 프로젝트 관리 (코드 매칭, 버전 관리)
|
|
files: 업로드된 자재 목록 파일들
|
|
materials: 개별 자재 상세 정보 (분류 결과 포함)
|
|
|
|
주요 기능
|
|
|
|
프로젝트별 파일 버전 관리 (Rev.0, Rev.1, Rev.2)
|
|
자재 자동 분류 시스템 (카테고리, 재질, 사이즈)
|
|
분류 신뢰도 및 사용자 검증 시스템
|
|
|
|
📞 개발팀
|
|
|
|
Lead Developer: hyungi
|
|
Gitea Repository: http://192.168.1.227:10300/hyungi/TK-MP-Project
|
|
|
|
🎯 다음 단계
|
|
|
|
데이터베이스 실행: docker-compose up -d postgres pgadmin
|
|
Python 환경 구축: 가상환경 생성 및 패키지 설치
|
|
FastAPI 구조 구현: 기본 API 서버 및 모델 생성
|
|
|
|
|
|
Last Updated: 2025.07.14
|