- getCompanyInfo() API 함수 추가 (GET /api/v1/tenants)
- EstimateDocumentModal에 회사정보 API 연동
- 하드코딩된 회사명/주소/연락처 제거
- 결재란 견적자명 동적 표시
- constants.ts 모듈 유효성 수정
Phase 5 완료 (5개 페이지):
- 입금관리, 출금관리, 단가관리(건설): Pattern A (기존 V2 컴포넌트 활용)
- 판매수주관리, 품목관리: Pattern B (View/Edit 컴포넌트 분리)
신규 컴포넌트:
- OrderSalesDetailView.tsx, OrderSalesDetailEdit.tsx
- ItemDetailView.tsx, ItemDetailEdit.tsx
기타 정리:
- backup 파일 삭제 (Dashboard, ItemMasterDataManagement 등)
- 타입 정의 개선 (건설 도메인 types.ts)
- useAuthGuard 훅 정리
Co-Authored-By: Claude <noreply@anthropic.com>
신규 기능:
- 작업지시 수정 페이지 추가 (/production/work-orders/[id]/edit)
- WorkOrderEdit 컴포넌트 신규 생성
- bulk-actions.ts 일괄 작업 유틸리티 추가
- toast-utils.ts 알림 유틸리티 추가
기능 개선:
- ProductionDashboard 대시보드 액션 및 표시 개선
- WorkOrderCreate 생성 화면 개선
- WorkResultList 작업 결과 목록 타입 및 표시 개선
- EstimateDetailForm 견적 폼 개선
- QuoteRegistration 견적 등록 개선
- client-management-sales-admin 거래처 관리 개선
- error-handler.ts 에러 처리 개선
UniversalListPage 전체 마이그레이션 머지
- 충돌 해결: VendorManagement, WorkResultList, tsconfig.tsbuildinfo
- feature 브랜치의 UniversalListPage 마이그레이션 버전으로 통일
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- UniversalListPage/IntegratedListTemplateV2 컴포넌트 기능 개선
- 회계, HR, 건설, 고객센터, 결재, 설정 등 전체 리스트 컴포넌트 마이그레이션
- 테스트 페이지 및 미사용 API 라우트 정리 (board-test, order-management-test 등)
- 미들웨어 토큰 갱신 로직 개선
- AuthenticatedLayout 구조 개선
- claudedocs 문서 업데이트
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ApiItem 인터페이스: code → item_code 변경 (API 응답 구조 반영)
- transformItem: item_code 필드 사용하도록 수정
- transformItemToApi: item_type → product_type으로 변경 (API 요청 필드명)
- getItemList: Laravel 페이지네이션 응답 구조 처리 개선
- getItem: API 응답 구조(success, message, data) 처리
- getCategoryOptions: 페이지네이션 응답 파싱 수정
- createItem: 응답에서 ID 추출 로직 개선
- 디버깅용 console.log 추가
- BiddingListClient: MobileFilter 컴포넌트 적용
- ContractListClient: MobileFilter 컴포넌트 적용
- EstimateListClient: MobileFilter 컴포넌트 적용
- HandoverReportListClient: MobileFilter 컴포넌트 적용
- IssueManagementListClient: MobileFilter 컴포넌트 적용
- ItemManagementClient: MobileFilter 컴포넌트 적용
- LaborManagementClient: MobileFilter 컴포넌트 적용
- PricingListClient: MobileFilter 컴포넌트 적용
- SiteBriefingListClient: MobileFilter 컴포넌트 적용
- SiteManagementListClient: MobileFilter 컴포넌트 적용
- StructureReviewListClient: MobileFilter 컴포넌트 적용
- WorkerStatusListClient: MobileFilter 컴포넌트 적용
- TodayIssueSection: CEO 대시보드 이슈 섹션 개선
- EmployeeForm: 사원등록 폼 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 공사현장관리: 프로젝트 상세, 공정관리, 칸반보드 구현
- 이슈관리: 현장 이슈 등록/조회 기능 추가
- 근로자현황: 일별 근로자 출역 현황 페이지 추가
- 유틸리티관리: 현장 유틸리티 관리 페이지 추가
- 기성청구: 기성청구 관리 페이지 추가
- CEO 대시보드: 현황판(StatusBoardSection) 추가, 설정 다이얼로그 개선
- 발주관리: 모바일 필터 적용, 리스트 UI 개선
- 공용 컴포넌트: MobileFilter, IntegratedListTemplateV2 개선, CalendarHeader 반응형 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- actions.ts: /quotes API 호출로 변경 (quote_type=construction 필터)
- actions.ts: API 응답 파싱 수정 (response.data.data 구조 처리)
- EstimateListClient.tsx: size 1000→100 (API 최대값 준수)
- LocationDetailPanel: 6개 탭 구현 (본체, 가이드레일, 케이스, 하단마감재, 모터&제어기, 부자재)
- 각 탭별 다른 테이블 컬럼 구조 적용
- QuoteSummaryPanel: 개소별/상세별 합계 패널 개선
- QuotePreviewModal: EstimateDocumentModal 패턴 적용 (헤더+버튼 영역 분리)
- Input value → defaultValue 변경으로 React 경고 해결
- 팩스/카카오톡 버튼 제거
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 52개 이상의 컴포넌트에 isNextRedirectError 처리 추가
- Server Action의 redirect() 에러가 catch 블록에서 삼켜지는 문제 해결
- access_token + refresh_token 모두 만료 시 정상적으로 로그인 페이지로 리다이렉트
수정된 영역:
- accounting: 10개 컴포넌트
- production: 12개 컴포넌트
- hr: 5개 컴포넌트
- settings: 8개 컴포넌트
- approval: 5개 컴포넌트
- items: 20개+ 컴포넌트
- board: 5개 컴포넌트
- quality: 4개 컴포넌트
- material, outbound, quotes 등 기타 컴포넌트
Co-Authored-By: Claude <noreply@anthropic.com>
- Mock 데이터 제거
- apiClient 기반 실제 API 호출로 전환
- 타입 변환 함수 구현 (snake_case ↔ camelCase)
API Functions:
- getStructureReviewList: 목록 조회 + 검색/필터/정렬/페이지네이션
- getStructureReviewStats: 통계 조회
- getStructureReview: 상세 조회
- createStructureReview: 생성
- updateStructureReview: 수정
- deleteStructureReview: 단일 삭제
- deleteStructureReviews: 일괄 삭제
- contract/actions.ts: 커스텀 apiRequest → apiClient 변환
- partners/actions.ts: 커스텀 apiRequest → apiClient 변환
- site-management/actions.ts: 커스텀 apiRequest → apiClient 변환
공통 변경사항:
- cookies() 직접 import 제거
- API_BASE_URL, API_KEY 상수 제거
- import { apiClient } from '@/lib/api' 사용
- 명시적 API 타입 정의 추가 (ApiContract, ApiPartner, ApiSite 등)
- 커스텀 apiRequest 함수 제거 (52줄)
- cookies() 직접 사용 제거
- @/lib/api의 apiClient 사용으로 통일
- 명시적 API 타입 정의 추가
- ApiHandoverReport, ApiManager, ApiContractItem
- ApiExternalEquipmentCost, ApiHandoverReportStats
- 코드량 499줄 → 452줄 (47줄 감소)
- common-codes.ts 신규 생성 (공용 코드 조회 유틸리티)
- getCommonCodes(), getCommonCodeOptions() 기본 함수
- getOrderStatusOptions(), getOrderTypeOptions() 등 편의 함수
- order-management/actions.ts Mock 데이터 → 실제 API 연동
- 상태 변환 함수 (Frontend ↔ Backend 매핑)
- getOrderList(), getOrderStats(), createOrder(), updateOrder() 등 구현
- lib/api/index.ts에 common-codes 모듈 export 추가
Phase 2.3 자재관리 API 연동:
- actions.ts Mock 데이터 제거, 실제 API 연동
- 8개 API 함수 구현 (getItemList, getItemStats, getItem, createItem, updateItem, deleteItem, deleteItems, getCategoryOptions)
- 타입 변환 함수 구현 (Frontend ↔ Backend)
- 품목유형 매핑 (제품↔FG, 부품↔PT, 소모품↔CS, 공과↔RM)
- Frontend 전용 필터링 (specification, orderType, dateRange, sortBy)
- partners/actions.ts: Mock → API 연동 전환
- apiRequest 헬퍼 함수 추가 (쿠키 기반 인증)
- transform 함수: client_type ↔ partnerType 변환
- getPartnerList, getPartner, createPartner, updatePartner
- getPartnerStats, deletePartner, deletePartners
- 구현 문서 추가
- Mock 데이터 제거, 실제 API 연동으로 변환
- apiRequest 헬퍼 함수 구현 (쿠키 기반 인증)
- 7개 API 함수 구현: list, stats, detail, create, update, delete, bulk-delete
- snake_case → camelCase 타입 변환 함수 추가
- /juil/ 경로를 /construction/으로 변경
- 컴포넌트 폴더명 juil → construction 변경
- 컴포넌트명 Juil* → Construction* 변경
- 테스트 URL 페이지 경로 업데이트
- claudedocs 문서 경로 업데이트
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>