diff --git a/시연회_핵심기능_5선.md b/시연회_핵심기능_5선.md index 05fe848..57fa2b1 100644 --- a/시연회_핵심기능_5선.md +++ b/시연회_핵심기능_5선.md @@ -8,35 +8,123 @@ DB 연동 없이 하드코딩으로 구현하여 전체 워크플로우를 효 ## 🚀 핵심 기능 5선 -### 1. **📋 프로젝트 정보 등록** +### 1. **📋 프로젝트 정보 등록 (2단계 시스템)** #### 🎯 **시연 포인트** -- 수주 정보 입력 → 자동 Job No. 생성 -- 외주/자체제작 선택에 따른 워크플로우 분기 +- 1단계: 프로젝트 생성 및 기본 정보 입력 +- 2단계: 킥오프 미팅 후 세부 사양 및 요구사항 입력 -#### 📱 **구현 내용** +--- + +#### **📝 1단계: 프로젝트 생성** + +##### **📱 구현 내용** - **프로젝트 기본 정보**: - 프로젝트명, 고객사, 계약금액 - - 수주일, 납기일, 프로젝트 규모 + - 수주일, **납기일**, 프로젝트 규모 + - **납품방식**: 현장납품/공장인도/부분납품 - **자동 Job No. 생성**: `TK-YYYY-XXX` 형식 - **제작 방식 선택**: 외주 vs 자체제작 - **담당자 배정**: - - 설계팀, 품질팀, 구매팀, 생산팀 - - 각 팀별 담당자 및 팀장 지정 + - 영업담당, PM, 설계팀장, 품질팀장, 구매팀장, 생산팀장 -#### 💡 **하드코딩 데이터** +##### **💡 하드코딩 데이터** ```javascript -const sampleProjects = [ - { - jobNo: "TK-2024-015", - name: "ABC 공장 배관공사", - client: "ABC 케미칼", - contractAmount: "150,000,000", - orderDate: "2024-01-15", - deliveryDate: "2024-03-30", - productionType: "자체제작" - } -]; +const projectBasicInfo = { + jobNo: "TK-2024-015", + name: "ABC 공장 배관공사", + client: "ABC 케미칼", + contractAmount: "150,000,000", + orderDate: "2024-01-15", + deliveryDate: "2024-03-30", + deliveryMethod: "현장납품", // 현장납품/공장인도/부분납품 + productionType: "자체제작", + scale: "중형", // 소형/중형/대형 + status: "기본정보입력완료" +}; +``` + +--- + +#### **🎯 2단계: 세부 사양 입력** + +##### **📱 구현 내용** +- **킥오프 미팅 결과**: + - 미팅 일자, 참석자, 주요 결정사항 + - 고객 요구사항 변경점 +- **기술 사양서 (User Spec)**: + - 설계 기준 (ASME, KS, JIS 등) + - 사용 압력, 온도, 유체 종류 + - 특수 요구사항 (내식성, 내압성 등) +- **프로젝트 세부 일정**: + - 설계 완료일, 자재 발주 완료일 + - 제작 시작일, FAT 일정, 납품 일정 +- **품질 요구사항**: + - 필수 검사 항목, 성적서 요구사항 + - 고객 입회 검사 여부 +- **특이사항 및 리스크**: + - 기술적 난이도, 일정상 제약 + - 고객사 특수 요구사항 + +##### **💡 하드코딩 데이터** +```javascript +const projectDetailInfo = { + jobNo: "TK-2024-015", + kickoffMeeting: { + date: "2024-01-20", + attendees: ["김영업", "이PM", "박설계", "최고객"], + decisions: ["압력등급 150LB로 확정", "재질 SS316L로 변경"] + }, + technicalSpec: { + designStandard: "ASME B31.3", + workingPressure: "10 bar", + workingTemperature: "80°C", + fluid: "화학용매", + specialRequirements: ["내식성 강화", "고온 대응"] + }, + schedule: { + designComplete: "2024-02-15", + procurementComplete: "2024-02-28", + productionStart: "2024-03-01", + fatDate: "2024-03-25", + deliveryDate: "2024-03-30" + }, + qualityRequirements: { + mandatoryTests: ["압력시험", "재질성분분석", "용접검사"], + certificates: ["재질증명서", "압력시험성적서", "용접검사성적서"], + customerWitness: true + }, + risks: [ + { type: "기술", description: "특수 합금 용접 기술 필요", level: "중" }, + { type: "일정", description: "납기 단축 요구", level: "높음" }, + { type: "품질", description: "고객사 높은 품질 기준", level: "중" } + ], + status: "세부사양입력완료" +}; +``` + +--- + +#### **🔄 2단계 워크플로우** + +##### **Step 1: 기본 정보 입력** (영업팀) +``` +수주 확정 → 기본 정보 입력 → Job No. 생성 → 담당자 배정 +``` + +##### **Step 2: 킥오프 미팅** (영업 + PM + 각 팀장) +``` +고객 미팅 → 요구사항 정리 → 내부 검토 → 세부 일정 수립 +``` + +##### **Step 3: 세부 사양 입력** (PM 주도) +``` +기술사양 입력 → 품질요구사항 정리 → 리스크 분석 → 승인 요청 +``` + +##### **Step 4: 프로젝트 승인** (팀장급 이상) +``` +세부사양 검토 → 일정 검토 → 리스크 검토 → 프로젝트 시작 승인 ``` --- @@ -300,10 +388,26 @@ const qualityData = { ### **🎬 시나리오: "ABC 공장 배관공사 프로젝트"** -#### **Scene 1: 프로젝트 시작** (기능 1) -1. 새 프로젝트 "ABC 공장 배관공사" 등록 +#### **Scene 1: 프로젝트 등록** (기능 1) + +##### **1단계: 기본 정보 입력** +1. 영업팀에서 새 프로젝트 "ABC 공장 배관공사" 등록 2. Job No. `TK-2024-015` 자동 생성 -3. 자체제작 선택, 각 팀 담당자 배정 +3. 납기일 2024-03-30, 납품방식 "현장납품" 설정 +4. 자체제작 선택, 각 팀 담당자 배정 + +##### **2단계: 세부 사양 입력** +1. 킥오프 미팅 결과 입력 (2024-01-20) + - 참석자: 김영업, 이PM, 박설계, 최고객 + - 주요 결정: 압력등급 150LB, 재질 SS316L 변경 +2. 기술 사양서 입력 + - 설계기준: ASME B31.3 + - 사용압력: 10 bar, 온도: 80°C + - 유체: 화학용매, 특수요구: 내식성 강화 +3. 품질 요구사항 설정 + - 필수검사: 압력시험, 재질분석, 용접검사 + - 고객 입회검사 필요 +4. 리스크 분석 완료 → 프로젝트 승인 #### **Scene 2: 생산회의** (기능 2) 1. 프로젝트 현황 대시보드 확인