From f67c28a768b1db6cda9fbcc43f11a53b359ad64f Mon Sep 17 00:00:00 2001 From: hskwon Date: Wed, 17 Dec 2025 20:47:39 +0900 Subject: [PATCH] =?UTF-8?q?docs:=202.2=20=EA=B7=BC=EB=AC=B4/=EC=B6=9C?= =?UTF-8?q?=ED=87=B4=EA=B7=BC=20=EC=84=A4=EC=A0=95=20API=20=EA=B0=9C?= =?UTF-8?q?=EB=B0=9C=20=EC=99=84=EB=A3=8C=20=ED=91=9C=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plans/erp-api-development-plan.md | 55 +++++++++++++++++++------------ 1 file changed, 34 insertions(+), 21 deletions(-) diff --git a/plans/erp-api-development-plan.md b/plans/erp-api-development-plan.md index 392799b..b6553f5 100644 --- a/plans/erp-api-development-plan.md +++ b/plans/erp-api-development-plan.md @@ -2,7 +2,7 @@ > **작성일**: 2025-12-17 > **기준 문서**: SAM_ERP_Storyboard_D0.8_251216 -> **상태**: 🟢 Phase 1 진행 중 (휴가 관리 완료) +> **상태**: 🟢 Phase 1 진행 중 (2/6 완료: 휴가 관리, 근무/출퇴근 설정) --- @@ -53,7 +53,7 @@ | 구분 | 항목수 | 작업 | 상태 | |------|--------|------|------| | 기존 API 활용 | 12개 | 프론트엔드 연동만 | ⬜ 대기 | -| 확장 개발 | 6개 | 기존 구조 활용, API 추가 | 🟢 1/6 완료 | +| 확장 개발 | 6개 | 기존 구조 활용, API 추가 | 🟢 2/6 완료 | | 신규 개발 | 8개 | 테이블 + API 신규 생성 | ⬜ 대기 | --- @@ -101,31 +101,44 @@ --- -### 2.2 근무/출퇴근 설정 +### 2.2 근무/출퇴근 설정 ✅ > 참조: [99-gap-analysis.md#22-근무출퇴근-설정](../specs/erp-analysis/99-gap-analysis.md) +> **완료일**: 2025-12-17 | **커밋**: `ca5618b` -- [ ] **테이블 생성** - - [ ] `work_settings` 마이그레이션 - - [ ] `attendance_settings` 마이그레이션 - - [ ] `sites` (현장) 마이그레이션 +- [x] **테이블 생성** + - [x] `work_settings` 마이그레이션 + - [x] `attendance_settings` 마이그레이션 + - [x] `sites` (현장) 마이그레이션 + - [ ] 마이그레이션 실행 및 검증 -- [ ] **모델 생성** - - [ ] `WorkSetting` 모델 - - [ ] `AttendanceSetting` 모델 - - [ ] `Site` 모델 +- [x] **모델 생성** + - [x] `WorkSetting` 모델 (BelongsToTenant) + - [x] `AttendanceSetting` 모델 (BelongsToTenant, GPS 거리 계산) + - [x] `Site` 모델 (BelongsToTenant, SoftDeletes) -- [ ] **서비스 구현** - - [ ] `WorkSettingService` 생성 - - [ ] `SiteService` 생성 +- [x] **서비스 구현** + - [x] `WorkSettingService` 생성 (자동 기본값 생성) + - [x] `SiteService` 생성 (페이지네이션, 검색, 활성 목록) -- [ ] **API 엔드포인트** - - [ ] `GET/PUT /v1/settings/work` - 근무 설정 - - [ ] `GET/PUT /v1/settings/attendance` - 출퇴근 설정 - - [ ] `GET/POST/PUT/DELETE /v1/sites` - 현장 CRUD +- [x] **API 엔드포인트** (10개) + - [x] `GET /v1/settings/work` - 근무 설정 조회 + - [x] `PUT /v1/settings/work` - 근무 설정 수정 + - [x] `GET /v1/settings/attendance` - 출퇴근 설정 조회 + - [x] `PUT /v1/settings/attendance` - 출퇴근 설정 수정 + - [x] `GET /v1/sites` - 현장 목록 + - [x] `POST /v1/sites` - 현장 등록 + - [x] `GET /v1/sites/active` - 활성 현장 목록 (셀렉트박스용) + - [x] `GET /v1/sites/{id}` - 현장 상세 + - [x] `PUT /v1/sites/{id}` - 현장 수정 + - [x] `DELETE /v1/sites/{id}` - 현장 삭제 -- [ ] **Swagger 문서** - - [ ] `WorkSettingApi.php` 작성 - - [ ] `SiteApi.php` 작성 +- [x] **Swagger 문서** + - [x] `WorkSettingApi.php` 작성 + - [x] `SiteApi.php` 작성 + +- [ ] **테스트** + - [ ] Feature 테스트 작성 + - [ ] 수동 API 테스트 ---