# πŸ“‹ 주간업무보고 μ‹œμŠ€ν…œ (Weekly Report) SI ν”„λ‘œμ νŠΈ νŒ€μ„ μœ„ν•œ 주간업무보고 μž‘μ„± 및 μ·¨ν•© μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. ## ✨ μ£Όμš” κΈ°λŠ₯ ### πŸ“ 주간보고 μž‘μ„± - ν”„λ‘œμ νŠΈλ³„ 금주 싀적 / μ°¨μ£Ό κ³„νš μž‘μ„± - Task λ‹¨μœ„λ‘œ μž‘μ—… λ‚΄μš©, μ‹œκ°„, μ™„λ£Œ μ—¬λΆ€ 관리 - 이슈/리슀크, νœ΄κ°€μΌμ •, 기타사항 μž…λ ₯ - μž‘μ„± β†’ 제좜 β†’ μ·¨ν•© μ›Œν¬ν”Œλ‘œμš° ### πŸ€– PMO AI 리뷰 - OpenAI 기반 주간보고 μžλ™ ν”Όλ“œλ°± - 싀적/κ³„νšμ˜ ꡬ체성 κ²€ν†  - 일정 λͺ…ν™•μ„± 및 μ‹œκ°„ μ‚°μ • μ μ ˆμ„± 평가 - ꡬ체적인 μž‘μ„± μ˜ˆμ‹œμ™€ κ°œμ„  κ°€μ΄λ“œ 제곡 ### πŸ“Š μ·¨ν•© λ³΄κ³ μ„œ - 주차별 전체 λ³΄κ³ μ„œ μ·¨ν•© - ν”„λ‘œμ νŠΈλ³„ 싀적/κ³„νš AI μš”μ•½ (OpenAI) - 인원별 νˆ¬μž… μ‹œκ°„ ν˜„ν™© - 원문 보기 κΈ°λŠ₯ ### πŸ‘₯ 직원/ν”„λ‘œμ νŠΈ 관리 - 직원 등둝 및 관리 - ν”„λ‘œμ νŠΈ 생성 및 μƒνƒœ 관리 - ν”„λ‘œμ νŠΈλ³„ νˆ¬μž… 인λ ₯ ν˜„ν™© ## πŸ›  기술 μŠ€νƒ | ꡬ뢄 | 기술 | |------|------| | Frontend | Vue 3, Nuxt 3 | | Backend | Nitro (Nuxt Server) | | Database | PostgreSQL | | AI | OpenAI GPT-4o-mini | | UI | Bootstrap 5, Bootstrap Icons | ## πŸ“ ν”„λ‘œμ νŠΈ ꡬ쑰 ``` weeklyreport/ β”œβ”€β”€ frontend/ # ν”„λ‘ νŠΈμ—”λ“œ νŽ˜μ΄μ§€ β”‚ β”œβ”€β”€ components/ # 곡톡 μ»΄ν¬λ„ŒνŠΈ β”‚ β”œβ”€β”€ composables/ # Vue Composables β”‚ β”œβ”€β”€ report/ # 주간보고 κ΄€λ ¨ β”‚ β”‚ β”œβ”€β”€ weekly/ # 개인 주간보고 β”‚ β”‚ └── summary/ # μ·¨ν•© λ³΄κ³ μ„œ β”‚ β”œβ”€β”€ employee/ # 직원 관리 β”‚ β”œβ”€β”€ project/ # ν”„λ‘œμ νŠΈ 관리 β”‚ └── admin/ # κ΄€λ¦¬μž κΈ°λŠ₯ β”œβ”€β”€ backend/ β”‚ β”œβ”€β”€ api/ # API μ—”λ“œν¬μΈνŠΈ β”‚ β”‚ β”œβ”€β”€ auth/ # 인증 β”‚ β”‚ β”œβ”€β”€ employee/ # 직원 API β”‚ β”‚ β”œβ”€β”€ project/ # ν”„λ‘œμ νŠΈ API β”‚ β”‚ └── report/ # λ³΄κ³ μ„œ API β”‚ └── utils/ # μœ ν‹Έλ¦¬ν‹° (DB λ“±) β”œβ”€β”€ nuxt.config.ts # Nuxt μ„€μ • └── package.json ``` ## πŸ—„ λ°μ΄ν„°λ² μ΄μŠ€ μŠ€ν‚€λ§ˆ ### μ£Όμš” ν…Œμ΄λΈ” | ν…Œμ΄λΈ”λͺ… | μ„€λͺ… | |----------|------| | `wr_employee_info` | 직원 정보 | | `wr_project_info` | ν”„λ‘œμ νŠΈ 정보 | | `wr_weekly_report` | 주간보고 λ§ˆμŠ€ν„° | | `wr_weekly_report_task` | 주간보고 Task (싀적/κ³„νš) | | `wr_aggregated_report_summary` | μ·¨ν•© λ³΄κ³ μ„œ | ## πŸš€ μ„€μΉ˜ 및 μ‹€ν–‰ ### μš”κ΅¬μ‚¬ν•­ - Node.js 18+ - PostgreSQL 14+ - OpenAI API Key ### ν™˜κ²½ λ³€μˆ˜ (.env) ```env DATABASE_URL=postgresql://user:pass@host:port/weeklyreport OPENAI_API_KEY=sk-xxx ``` ### μ„€μΉ˜ ```bash npm install ``` ### 개발 μ„œλ²„ μ‹€ν–‰ ```bash npm run dev # http://localhost:2026 ``` ### ν”„λ‘œλ•μ…˜ λΉŒλ“œ ```bash npm run build npm run preview ``` ## πŸ“‘ μ£Όμš” API ### 인증 | Method | Endpoint | μ„€λͺ… | |--------|----------|------| | POST | `/api/auth/login` | 둜그인 | | POST | `/api/auth/logout` | λ‘œκ·Έμ•„μ›ƒ | | GET | `/api/auth/me` | ν˜„μž¬ μ‚¬μš©μž 정보 | ### 주간보고 | Method | Endpoint | μ„€λͺ… | |--------|----------|------| | GET | `/api/report/weekly/list` | 주간보고 λͺ©λ‘ | | POST | `/api/report/weekly/save` | 주간보고 μ €μž₯ | | GET | `/api/report/weekly/[id]/detail` | 주간보고 상세 | | POST | `/api/report/review` | PMO AI 리뷰 μš”μ²­ | ### μ·¨ν•© λ³΄κ³ μ„œ | Method | Endpoint | μ„€λͺ… | |--------|----------|------| | GET | `/api/report/summary/weekly-list` | 주차별 μ·¨ν•© λͺ©λ‘ | | POST | `/api/report/summary/aggregate` | μ·¨ν•© μ‹€ν–‰ | | GET | `/api/report/summary/week/detail` | 주차별 상세 | ### 직원/ν”„λ‘œμ νŠΈ | Method | Endpoint | μ„€λͺ… | |--------|----------|------| | GET | `/api/employee/list` | 직원 λͺ©λ‘ | | POST | `/api/employee/create` | 직원 등둝 | | GET | `/api/project/list` | ν”„λ‘œμ νŠΈ λͺ©λ‘ | | POST | `/api/project/create` | ν”„λ‘œμ νŠΈ 생성 | ## πŸ“Έ ν™”λ©΄ ꡬ성 ### 주간보고 μž‘μ„± - ν”„λ‘œμ νŠΈ 선택 ν›„ Task μΆ”κ°€ - 금주 싀적: μž‘μ—…λ‚΄μš©, μ‹œκ°„, μ™„λ£Œμ—¬λΆ€ - μ°¨μ£Ό κ³„νš: κ³„νšλ‚΄μš©, μ˜ˆμƒμ‹œκ°„ - PMO AI 리뷰 μžλ™ 생성 ### μ·¨ν•© λ³΄κ³ μ„œ - 주차별 ν”„λ‘œμ νŠΈ ν˜„ν™© - AI 기반 싀적/κ³„νš μš”μ•½ - 인원별 νˆ¬μž… μ‹œκ°„ ν…Œμ΄λΈ” - 원문 보기 (λͺ¨λ‹¬) ## πŸ“„ λΌμ΄μ„ μŠ€ Private - ν„°λ³΄μ†Œν”„νŠΈ λ‚΄λΆ€μš© --- Β© 2026 TurboSoft