- EnhancedSections 공통 컴포넌트 추출 (SectionCard, StatItem, StatusBadge 등)
- 전 섹션(매출/매입/생산/출근/미출하/건설/캘린더/일보 등) 공통 패턴 적용
- components.tsx 공통 UI 컴포넌트 강화
- CLAUDE.md Git Workflow 섹션 추가 (develop/stage/main 플로우)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- CalendarSection 일정 CRUD 기능 확장 (상세 모달 연동)
- ScheduleDetailModal 개선
- CEO 대시보드 섹션별 API 키 통일
- validation.ts → validation/ 모듈 분리 (item-schemas, utils)
- formatters.ts 확장
- date.ts 유틸 추가
- SignupPage/EmployeeForm/AddCompanyDialog 등 소규모 개선
- PaymentHistory/PopupManagement utils 정리
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- CEO 대시보드: 섹션별 API 연동 강화 (매출/매입/생산 실데이터 표시)
- DashboardSettingsDialog 드래그 정렬 및 설정 UX 개선
- dashboard transformers 모듈 분리 (파일 분할)
- DocumentTable/DocumentWrapper 공통 문서 컴포넌트 추출
- LineItemsTable organisms 컴포넌트 추가
- PurchaseOrderDocument/InspectionRequestDocument 문서 컴포넌트 리팩토링
- PermissionContext → permissionStore(Zustand) 전환
- useUIStore, stores/utils/userStorage 추가
- favoritesStore/useTableColumnStore 사용자별 저장 지원
- DepositDetail/WithdrawalDetail 삭제 (통합)
- PurchaseDetail/SalesDetail 간소화
- amount.ts/formatters.ts 유틸 확장
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- 회계 모듈 탭 UI 복원 (대손/은행거래/청구/입금/예상경비/상품권/매입/매출/세금계산서/거래처원장/거래처/출금)
- HR 모듈 탭 복원 (근태/급여/휴가)
- 대시보드 type2/3/4 페이지 개선
- CEO 대시보드 섹션 로딩 최적화
- 품목 마스터데이터 관리 탭 기능 강화
- 생산 작업자화면/작업지시 개선
- 품질 검사 생성/상세 화면 보완
- 건설 견적/현장관리 상세 개선
- UniversalListPage 기능 확장
- E2E 잔여 버그 핸드오프 문서 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- CEO 대시보드 섹션별 컴포넌트 분리 (건설/생산/매출/매입/미출하/출근)
- LazySection 지연 로딩 패턴 적용
- DashboardSettingsDialog 섹션 표시/순서 설정 확장
- 캘린더 관리 페이지 신규 추가 (settings/calendar-management)
- useCalendarScheduleStore Zustand 스토어 추가
- CalendarHeader 일정 추가/관리 기능 강화
- 거래처 관리 상세 화면 개선 (VendorDetail/VendorDetailClient)
- 카드 관리 상세 화면 리팩토링
- FormField 기능 확장
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- search.ts: 범용 검색 유틸리티 추출 (텍스트/날짜/상태 필터링)
- status-config.ts: 상태 설정 공통 유틸 추가
- 회계 모듈 types 간소화 및 컬럼 설정 공통 패턴 적용
- 회계 page.tsx 통일 (bad-debt/bills/deposits/sales 등 9개)
- 결재함(승인/기안/참조) 공통 패턴 적용
- 건설 모듈 견적/인수인계/이슈/기성 등 코드 정리
- IntegratedListTemplateV2 개선
- LanguageSelect/ThemeSelect 정리
- 체크리스트 문서 업데이트
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- 회계 모듈 전면 개선: 청구/입금/출금/매입/매출/세금계산서/일반전표/거래처원장 등
- 견적 모듈 금액 포맷/할인/수식/미리보기 등 코드 정리
- 설정 모듈: 계정관리/직급/직책/권한 상세 간소화
- 생산 모듈: 작업지시서/작업자화면/검수 문서 코드 정리
- UniversalListPage 엑셀 다운로드 및 필터 기능 확장
- 대시보드/게시판/수주 등 날짜 유틸 공통화 적용
- claudedocs 문서 인덱스 업데이트
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- 미사용 코드 삭제: ThemeContext, itemStore, utils/date.ts, utils/formatAmount.ts
- 유틸리티 이동: date, formatAmount → src/lib/utils/ (중앙 집중화)
- 다수 page.tsx 클라이언트 컴포넌트 패턴 통일
- DateRangeSelector 리팩토링 및 date-range-picker UI 컴포넌트 추가
- ThemeSelect/themeStore Zustand 직접 연동으로 전환
- 건설/회계/영업/품목/출하 등 전반적 컴포넌트 개선
- UniversalListPage, IntegratedListTemplateV2 타입 확장
- 프론트엔드 종합 리뷰 문서 및 개선 체크리스트 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- V2 컴포넌트를 원본에 통합 후 V2 파일 삭제 (InspectionModal, BillDetail, ContractDocumentModal, LaborDetailClient, PricingDetailClient, QuoteRegistration)
- store → stores 디렉토리 이동 및 favoritesStore 추가
- dashboard_type3~5 추가 및 기존 대시보드 차트/훅 분리
- Sidebar 리팩토링 및 HeaderFavoritesBar 추가
- DashboardSwitcher 컴포넌트 추가
- 백업 파일(.v1-backup) 및 불필요 코드 정리
- InspectionPreviewModal 레이아웃 개선
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
DatePicker 공통화:
- date-picker.tsx 공통 컴포넌트 신규 추가
- 전체 폼 컴포넌트 DatePicker 통일 적용 (50+ 파일)
- DateRangeSelector 개선
공정관리:
- RuleModal 대폭 리팩토링 (-592줄 → 간소화)
- ProcessForm, StepForm 개선
- ProcessDetail 수정, actions 확장
작업자화면:
- WorkerScreen 기능 대폭 확장 (+543줄)
- WorkItemCard 개선
- types 확장
회계/인사/영업/품질:
- BadDebtDetail, BillDetail, DepositDetail, SalesDetail 등 DatePicker 적용
- EmployeeForm, VacationDialog 등 DatePicker 적용
- OrderRegistration, QuoteRegistration DatePicker 적용
- InspectionCreate, InspectionDetail DatePicker 적용
공사관리/CEO대시보드:
- BiddingDetail, ContractDetail, HandoverReport 등 DatePicker 적용
- ScheduleDetailModal, TodayIssueSection 개선
기타:
- WorkOrderCreate/Edit/Detail/List 개선
- ShipmentCreate/Edit, ReceivingDetail 개선
- calendar, calendarEvents 수정
- datepicker 마이그레이션 체크리스트 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
공사관리 리스트 공통화:
- 입찰/계약/견적/인수인계/이슈/품목/노무/현장/파트너/단가/기성/현장브리핑/구조검토/유틸리티/작업자현황 리스트 공통 포맷터 적용
- 중복 포맷팅 로직 제거 (-530줄)
캘린더 기능 개선:
- CEODashboard CalendarSection 기능 확장
- ScheduleCalendar DayCell/MonthView/WeekView 개선
- ui/calendar 컴포넌트 기능 추가
유틸리티 개선:
- date.ts 날짜 유틸 함수 추가
- formatAmount.ts 금액 포맷 함수 추가
신규 추가:
- useListHandlers 훅 추가
- src/constants/ 디렉토리 추가
- 포맷터 공통화 계획 문서 추가
- SAM ERP/MES 정체성 분석 문서 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 오늘의 이슈 섹션에 "오늘" / "이전 이슈" 탭 추가
- 이전 이슈 탭에서 날짜 네비게이션(< >, date input) 지원
- usePastIssue 훅 추가 (date 파라미터로 과거 이슈 API 호출)
- 탭/날짜 전환 시 필터 및 상태 자동 리셋
- 로딩 중 그리드 높이 유지로 UI 들썩임 방지
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- API: fetch-wrapper/proxy/refresh-token 리팩토링, authenticated-fetch 신규 추가
- CEO 대시보드: EnhancedSections 현황판 기능 개선, dashboard transformers/types 확장
- 문서 시스템: ApprovalLine/DocumentHeader/DocumentToolbar/DocumentViewer 개선
- 작업지시서: 검사보고서/작업일지 문서 컴포넌트 개선 (벤딩/스크린/슬랫)
- 레이아웃: Sidebar/AuthenticatedLayout 수정
- 작업자화면: WorkerScreen 수정
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 공통 템플릿 타입 수정 (IntegratedDetailTemplate, UniversalListPage)
- 페이지(app/[locale]) 타입 호환성 수정 (80개)
- 재고/자재 모듈 타입 수정 (StockStatus, ReceivingManagement)
- 생산 모듈 타입 수정 (WorkOrders, WorkerScreen, WorkResults)
- 주문/출고 모듈 타입 수정 (ShipmentManagement, Orders)
- 견적/단가 모듈 타입 수정 (Quotes, Pricing)
- 건설 모듈 타입 수정 (49개, 17개 하위 모듈)
- HR 모듈 타입 수정 (CardManagement, VacationManagement 등)
- 설정 모듈 타입 수정 (PermissionManagement, AccountManagement 등)
- 게시판 모듈 타입 수정 (BoardManagement, BoardList 등)
- 회계 모듈 타입 수정 (VendorManagement, BadDebtCollection 등)
- 기타 모듈 타입 수정 (CEODashboard, clients, vehicle 등)
- 유틸/훅/API 타입 수정 (hooks, contexts, lib)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
transformers.ts:
- NOTIFICATION_TYPE_TO_BADGE 백엔드 TodayIssue.php와 동기화
- BADGE_TO_NOTIFICATION_TYPE 역방향 매핑 추가 (fallback용)
- validateNotificationType에 badge 기반 추론 로직 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
transformers.ts:
- notification_type 영문 코드 기반 변환 (sales_order, bad_debt 등)
- NOTIFICATION_TYPE_TO_BADGE 매핑 테이블 추가
- validateNotificationType 함수로 타입 안전성 확보
types.ts:
- TodayIssueNotificationType 타입 추가
- TodayIssueListItem에 notificationType 필드 추가
TodayIssueSection:
- notificationType 기반 색상 매핑 적용
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
차량 관리 (신규):
- VehicleList/VehicleDetail: 차량 목록/상세
- ForkliftList/ForkliftDetail: 지게차 목록/상세
- VehicleLogList/VehicleLogDetail: 운행일지 목록/상세
- 관련 페이지 라우트 추가 (/vehicle-management/*)
CEO 대시보드:
- Enhanced 섹션 컴포넌트 적용 (아이콘 + 컬러 테마)
- EnhancedStatusBoardSection, EnhancedDailyReportSection, EnhancedMonthlyExpenseSection
- TodayIssueSection 개선
IntegratedDetailTemplate:
- FieldInput, FieldRenderer 기능 확장
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- TodayIssueListBadgeType 업데이트 (수주등록, 추심이슈, 안전재고 등)
- BADGE_COLORS 및 FILTER_KEYS 새 타입으로 변경
- transformers.ts의 VALID_BADGE_TYPES 배열 동기화
- 입금/출금 뱃지 타입 추가
- normalizePath 헬퍼 함수 추가 (/ko prefix, ?mode=view 자동 추가)
- 대시보드 detailButtonPath에 /ko prefix 적용
- start 스크립트에 -H 0.0.0.0 추가 (외부 접근 허용)
- start:local 스크립트 추가 (로컬 전용)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- transformers.ts: footer_summary destructuring 누락 수정
- cardManagementConfigTransformers.ts: items, by_user, monthly_trend 방어적 코드 추가
- undefined 배열 접근 시 빈 배열 기본값 적용
- 카드 사용 상세(cm1), 가지급금 상세(cm2) 모달 에러 해결
Phase 3: Modal Component Integration (cm1-cm4)
### 새 파일
- cardManagementConfigTransformers.ts: API 응답을 모달 설정으로 변환
- transformCm1ModalConfig: 카드 사용액 상세
- transformCm2ModalConfig: 가지급금 상세
- transformCm3ModalConfig: 법인세 시뮬레이션
- transformCm4ModalConfig: 종합소득세 시뮬레이션
- 유틸리티: formatKoreanCurrency, calculateChangeRate, formatPercentage
### 수정 파일
- cardManagementConfigs.ts:
- getCardManagementModalConfigWithData() 추가
- API 데이터 우선, 없을 시 fallback 설정 사용
- useCardManagementModals.ts:
- fetchModalData()가 데이터 직접 반환하도록 수정
- CardManagementModalData 타입 추가
- CEODashboard.tsx:
- useCardManagementModals 훅 연동
- handleCardManagementCardClick에서 API 데이터 사용
Phase 2 프론트엔드 연동 완료:
- WelfareDetailApiResponse 타입 정의 추가 (types.ts)
- useWelfareDetail hook 추가 (useCEODashboard.ts)
- transformWelfareDetailResponse 변환 함수 추가 (transformers.ts)
- CEODashboard에 API 연동 및 Mock fallback 구현
변경 파일:
- src/lib/api/dashboard/types.ts: 복리후생비 상세 API 응답 타입
- src/hooks/useCEODashboard.ts: useWelfareDetail hook
- src/lib/api/dashboard/transformers.ts: API → DetailModalConfig 변환
- src/components/business/CEODashboard/CEODashboard.tsx: 모달 API 연동
- src/components/business/CEODashboard/modalConfigs/welfareConfigs.ts: deprecation 문서화
- UniversalListPage에 externalIsLoading prop 추가
- CardTransactionDetailClient DevFill 자동입력 기능 추가
- 여러 컴포넌트 로딩 상태 처리 개선
- skeleton 컴포넌트 확장
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CardTransactionDetailClient 컴포넌트 생성
- cardTransactionDetailConfig 설정 파일 추가
- actions.ts에 CRUD API 함수 추가 (create, getById, update, delete, getCardList)
- 등록/상세/수정 페이지 생성 (new, [id], [id]/edit)
- 리스트에 "카드내역 등록" 버튼 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 숫자/통화/전화번호/사업자번호 등 특수 입력 컴포넌트 추가
- MobileCard 컴포넌트 통합 (ListMobileCard 제거)
- IntegratedListTemplateV2 페이지네이션 버그 수정 (NaN 이슈)
- IntegratedDetailTemplate 타이틀 중복 수정
- 문서 시스템 컴포넌트 추가
- 헤더 벨 아이콘 포커스 스타일 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- StatusBoard(현황판) API Hook 및 타입 추가
- TodayIssue(오늘의 이슈) API Hook 및 타입 추가
- Calendar(캘린더) API Hook 및 타입 추가
- Vat(부가세) API Hook 및 타입 추가
- Entertainment(접대비) API Hook 및 타입 추가
- Welfare(복리후생비) API Hook 및 타입 추가
- CEODashboard.tsx에 모든 Phase 2 Hook 통합
- API 응답 → Frontend 타입 변환 transformer 추가
- WelfareCalculationType 'percentage' → 'ratio' 타입 일치 수정
- DailyReport, Receivable, DebtCollection, MonthlyExpense, CardManagement API 연동
- useCEODashboard Hook 추가 (병렬 API 호출)
- API → Frontend 타입 변환 함수 및 CheckPoint 생성 로직 구현
- API 실패 시 mockData fallback 패턴 적용
- 캘린더에 오늘의 이슈 데이터 표시 기능 추가
- 이슈 클릭 시 상세 페이지 이동 기능 구현
- 캘린더 필터에 '이슈' 옵션 추가
- TodayIssueListItem에 date 필드 추가
- 오늘의 이슈 섹션 반응형 그리드 레이아웃 개선
- 필터 드롭다운에 항목별 건수 표시
- 캘린더 상세 목록 높이 동적 조절 (calc(100vh-400px))
- 테스트 URL 페이지 기능 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 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>
- 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>
- 53개 페이지를 Server Component에서 Client Component로 변환
- Next.js 15에서 Server Component 렌더링 중 쿠키 수정 불가 이슈 해결
- 폐쇄형 ERP 시스템 특성상 SEO 불필요, Client Component 사용이 적합
주요 변경사항:
- 모든 페이지에 'use client' 지시어 추가
- use(params) 훅으로 async params 처리
- useState + useEffect로 데이터 페칭 패턴 적용
- skipTokenRefresh 옵션 및 관련 코드 제거 (더 이상 필요 없음)
변환된 페이지:
- Settings: 4개 (account-info, notification-settings, permissions, popup-management)
- Accounting: 9개 (vendors, sales, deposits, bills, withdrawals, expected-expenses, bad-debt-collection)
- Sales: 4개 (quote-management, pricing-management)
- Production/Quality/Master-data: 6개
- Material/Outbound: 4개
- Construction: 22개
- Other: 4개 (payment-history, subscription, dev/test-urls)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CEO 대시보드: 일일보고, 접대비, 복리후생 섹션 개선
- CEO 대시보드: 상세 모달 기능 확장
- 카드거래조회: 기능 및 타입 확장
- 알림설정: 항목 설정 다이얼로그 추가
- 회사정보관리: 컴포넌트 개선
- 모바일 오버플로우 테스트 계획서 추가 (Galaxy Fold 대응)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 사이드바 메뉴 3depth 이상 지원 (재귀 컴포넌트)
- menuTransform.ts: buildChildrenRecursive 함수 추가
- AuthenticatedLayout.tsx: findMenuRecursive + ancestorIds 배열로 경로 매칭
- Sidebar.tsx: depth별 스타일 (1depth: 아이콘+굵은텍스트, 2depth: 작은아이콘, 3depth: dot+작은텍스트)
- CEO 대시보드 상세 모달 및 카드 관리 개선
- 폴더블 기기 레이아웃 가이드 문서 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- AuthenticatedLayout: visualViewport API 추가로 폴더블 기기 화면 전환 감지
- globals.css: CSS 변수(--app-width, --app-height) 및 dvw/dvh fallback 추가
- 모바일 레이아웃: h-screen → var(--app-height)로 변경
- CEO 대시보드 및 API 클라이언트 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 전체 모듈 actions.ts redirect 에러 핸들링 추가
- CEODashboard DetailModal 추가
- MonthlyExpenseSection 개선
- fetch-wrapper redirect 에러 처리
- redirect-error 유틸 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- CEO 대시보드 컴포넌트 추가
- AuthenticatedLayout 개선
- 각 모듈 actions.ts 에러 핸들링 개선
- API fetch-wrapper, refresh-token 로직 개선
- ReceivablesStatus 컴포넌트 업데이트
- globals.css 스타일 업데이트
- 기타 다수 컴포넌트 수정
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>