Commit Graph

238 Commits

Author SHA1 Message Date
김보곤
a8aa159cf0 fix: [document] PDF 생성 시 cross-origin 이미지 누락 수정
- /api/image-proxy 프록시 라우트 추가 (CORS 우회)
- convertImagesToBase64에서 cross-origin 이미지를 프록시로 fetch
2026-03-22 08:58:58 +09:00
김보곤
5a00979506 feat: [재고생산] 복사 버튼 추가 + STOCK LOT 번호 개선 2026-03-21 21:20:49 +09:00
유병철
728c9c7a29 feat: [production] 절곡 생산관리 페이지 신규 추가 (셔터박스, 가이드레일, 하단마감) 2026-03-21 14:08:08 +09:00
유병철
793c736f69 feat: [accounting] 손익계산서 페이지 신규 추가 2026-03-20 09:51:18 +09:00
유병철
41602a3c1e feat: [accounting] 계정별원장 페이지 신규 추가 2026-03-20 09:49:41 +09:00
유병철
30e61301b5 feat: [accounting] 경조사비 관리 페이지 신규 추가
- 목록 페이지: 통계카드(4개) + 연도/구분 필터 + 13컬럼 테이블
- 등록/수정 모달: 부조금/선물 토글, 총금액 자동계산
- Server Actions 5개 (목록/통계/등록/수정/삭제)
- 라우트: /accounting/condolence-expenses

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 16:52:44 +09:00
유병철
cb95285a8f feat: [material] 부적합품관리 페이지 신규 추가 2026-03-19 15:44:13 +09:00
48dfc8640b fix: [production] 생산지시 상세 테이블 개선 - 단가/금액 컬럼 제거, 규격 컬럼 추가
- 생산지시 상세 BOM 테이블에서 단가/금액 컬럼 제거 + colgroup 레이아웃 적용
- 작업지시 상세 테이블에 규격(specification) 컬럼 추가
2026-03-18 23:31:31 +09:00
15e8bb0448 feat: [quality] 출고증/납품확인서에 수주 BOM 데이터 연동
- 출고증/납품확인서 렌더링 시 order_id로 BOM 데이터 추가 로드
- orderDetail props로 DeliveryConfirmation/ShippingSlip에 전달
2026-03-18 23:31:30 +09:00
김보곤
0bf57b1408 refactor: [stocks] 재고생산 수정 화면을 등록과 동일한 레이아웃으로 변경
- BendingLotForm에 edit mode 추가 (initialData 프리필, update API 호출)
- actions.ts에 updateBendingStockOrder 함수 추가
- [id]/page.tsx에서 StockProductionForm → BendingLotForm으로 전환
- StockProductionForm.tsx 삭제 (수주서 형식 복사본, 더 이상 불필요)
2026-03-18 21:27:26 +09:00
유병철
341f2b3e3f fix: [build] TS 에러 6건 수정 (수주 status 타입, 출하 cancelled 누락)
- page.tsx: draft→order_registered, in_progress→production_ordered (OrderStatus 타입 일치)
- actions.ts: ApiOrderStats에 in_production, produced optional 필드 추가
- ShipmentDetail.tsx: STATUS_TRANSITIONS에 cancelled 추가
- ShipmentList.tsx: colorMap에 cancelled 추가
2026-03-18 15:50:55 +09:00
유병철
4b8ca09ea5 feat: [module] Phase 3 — 물리적 분리 (경계 마커, 검증 스크립트, 라우트 가드, 문서)
- MODULE.md 경계 마커 4개 (production, quality, construction, vehicle-management)
- verify-module-separation.sh: Common→Tenant 금지 임포트 검증 스크립트
- 영업 생산지시 3개 페이지에 useModules 가드 추가
- MODULE_SEPARATION_OK 주석 마커 (공유 래퍼 허용)
- tsconfig @modules/* path alias 추가
- CLAUDE.md 모듈 분리 아키텍처 섹션 추가
- 모듈 분리 가이드 문서 (claudedocs/architecture/)
2026-03-18 15:41:23 +09:00
4e967540e9 fix: [order] 수주관리 UI 개선 - 카드 재구성, stats 상태 추가, STOCK 제품 필터링
- 수주관리 카드 재구성 (수주/생산/출하)
- stats에 inProduction/produced 매핑 추가
- 수주관리 목록에서 재고생산(STOCK) 제품 필터링
2026-03-18 15:35:01 +09:00
유병철
0a65609e5a feat: [Phase 1] 모듈 레지스트리 + 라우트 가드
- src/modules/ 모듈 시스템 (types, registry, tenant-config)
- useModules() 훅: 테넌트 industry 기반 모듈 활성화 판단
- ModuleGuard: 비허용 모듈 라우트 접근 차단 (클라이언트 사이드)
- (protected)/layout.tsx에 ModuleGuard 적용
- industry 미설정 테넌트는 가드 비활성 (하위 호환)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 14:54:42 +09:00
유병철
68b1112034 refactor: [subscription] SubscriptionClient 제거 + 사용량 페이지 정리 2026-03-18 14:47:03 +09:00
유병철
a99c3b3908 refactor: [Phase 0] 공통→테넌트 모듈 의존성 해소
- InspectionReportModal/WorkLogModal/AssigneeSelectModal → document-system/modals/ dynamic import 래퍼
- ProductionOrders 타입/액션 → lib/api/production-orders/ 공유 영역 분리
- 결재(ApprovalBox), 품질(QMS), 영업(production-orders) import 경로 수정
- 하드코딩 경로 /production/work-orders → 영업 내부 경로로 변경
- dashboard-invalidation DomainKey 하드코딩 → registerDashboardDomain() 동적 레지스트리

공통 ERP에서 테넌트(생산) 직접 import 0건 달성

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 14:40:28 +09:00
유병철
e8fafaf5f4 feat: [subscription] 구독관리 리팩토링 + 사용량 페이지 추가
- 구독관리 UI/로직 대폭 개선
- 사용량 페이지 신규 추가
- 입고관리 액션 정리
2026-03-18 13:59:54 +09:00
87287552fd perf: [production-orders] stats API 이중 호출 제거 2026-03-18 09:21:57 +09:00
915b5d9a75 feat: [shipment] 출고관리 개선
- 출고증/납품확인서 목업 데이터 → API 실데이터 전환
- 출고 등록(수동) 기능 제거 (자동생성만 유지)
- 출고로트/수주로트 분리 표시, 로트번호 폴백 처리
- 출고 목록 카드뷰 불일치 수정
2026-03-18 09:21:39 +09:00
505aed2e8e fix: [misc] 거래처 카운트 수정 + 생산현황판 통계 API 교체
- 거래처 목록 카운트를 stats API 호출로 교체
- 생산현황판 대시보드 통계를 work-orders/stats API 활용
2026-03-17 13:52:13 +09:00
6fc9d8f6b0 fix: [order] 수주 변환 연동 + 상세/수정 UI 개선
- 견적→수주 변환 API 연동 (createOrderFromQuote)
- 수주 상세 뷰 개선 (PhoneInput, 금액 포맷)
- 수주 수정 페이지 필드명 수정 (deliveryDate→expectedShipDate)
2026-03-17 13:51:53 +09:00
유병철
9b6f4c6684 feat: [stocks] 벤딩 LOT 폼 추가 + 재고 상세/액션 보강 2026-03-17 13:47:09 +09:00
유병철
9dac7bf37e feat: [stocks] 재고 관리 페이지 신규 + 회계 모듈 타입/코드 정리
- 재고 관리 페이지 및 컴포넌트 신규 추가
- 회계 6개 모듈 중복 타입 제거, 코드 간소화 (-212줄)
- AccountSubjectSelect 마이너 수정
- Popover 외부 클릭 다이얼로그 이슈 가이드 문서
2026-03-17 10:32:18 +09:00
유병철
0029988e6f feat: [approval] 전자결재 모듈 대폭 개선 + 회계 리팩토링
- 전자결재: 다양식 지원(11종), 완료함, 동적폼 렌더러, QA 보고서
- 회계: 계정과목 검색모달 리팩토링, 거래처/세금계산서 개선
- HR: 근태/휴가/직원 소소한 수정
- vehicle/quality/pricing 마이너 수정
- approval_backup_v1 백업 보관
2026-03-16 17:06:02 +09:00
156a50fd73 fix: [build] 타입 오류 수정 (cancelledCount, lot_no)
- order-management-sales: revertProduction 결과 구조분해로 타입 추론 수정
- WorkerScreen/actions: lot_no 접근 타입 캐스트 추가
2026-03-14 08:28:11 +09:00
6bbc5867fe feat: [order] 수주 확정 모달에 품목 정보 테이블 추가
- 총금액 표시 제거
- 수주 품목 테이블 추가 (품목명, 층, 부호, 사이즈, 수량)
- nodes 기반 렌더링 우선, products fallback
- 모달 너비 max-w-md → max-w-lg 확장
2026-03-13 22:26:19 +09:00
유병철
c309ac479f feat: [vehicle] 법인차량 관리 모듈 + MES 분석 보고서 + 프론트엔드 문서
- 법인차량 관리 3개 페이지 (차량등록, 운행일지, 정비이력)
- MES 데이터 정합성 분석 보고서 v1/v2
- sam-docs 프론트엔드 기술문서 v1 (9개 챕터)
- claudedocs 가이드/테스트URL 업데이트
2026-03-13 17:52:57 +09:00
13249384e2 feat: [부서관리] 기능 보완 - 필드 확장, 검색/필터, UI 개선
- Department 타입에 code, description, isActive, sortOrder 필드 추가
- DepartmentDialog: Zod + react-hook-form 폼 검증 (5개 필드)
- DepartmentToolbar: 상태 필터(전체/활성/비활성) + 검색 기능
- DepartmentTree: 트리 필터링 (검색어 + 상태)
- DepartmentTreeItem: 코드 Badge, 부서명 볼드, 설명 표시, 체크박스 크기 조정
- convertApiToLocal에서 누락 필드 매핑 복원
2026-03-13 00:30:09 +09:00
유병철
ca5a9325c6 feat: 급여관리 개선 + 설비관리 신규 + 팝업관리/카드관리/가격표 개선
- 급여관리: 상세/등록 다이얼로그 리팩토링, actions/types 확장
- 설비관리: 설비현황/점검/수리 4개 페이지 신규 추가
- 팝업관리: PopupDetail/PopupForm 개선
- 카드관리: CardForm 개선
- IntegratedListTemplateV2, SearchFilter, useColumnSettings 개선
- CLAUDE.md: 페이지 모드 라우팅 패턴 규칙 추가
- 공통 페이지 패턴 가이드 확장
2026-03-12 21:48:37 +09:00
f7be78b6c5 fix: [qms] 빌드 타입 에러 수정
- Day1DocumentSection: onUpload prop optional 처리 및 guard 추가
- mockData: RouteItem 타입 필수 필드 client 누락 보완
2026-03-12 14:13:44 +09:00
bb1e4a25a1 fix: [QMS] 로트심사 UI 개선
- 수주루트 → 수주로트 명칭 통일
- 거래처(client) 필드 추가 (types, actions, RouteList)
- 문서번호 표시 개선 (로트: 접두어 제거)
- ReportList 레이아웃 개선 (분기 표시 위치)
- PlaceholderDocument 문서번호 라벨 수정
2026-03-12 14:01:13 +09:00
86383719ec fix: [QMS] 제품검사 성적서 렌더링 개선 (FQC + inspection_data fallback)
- InspectionModal: FQC 문서 없을 때 inspection_data JSON으로 레거시 리포트 렌더링
- InspectionReportDocument 컴포넌트 재활용 (기존 검사 페이지와 동일 포맷)
- mockData: convertJudgment, mapInspectionDataToItems export 추가
2026-03-12 11:16:40 +09:00
7447e8a204 feat: [QMS] 점검표 템플릿 Mock→API 연동 + 버전 UI 제거
- actions.ts: 5개 Server Actions 추가 (조회/저장/문서CRUD)
- useChecklistTemplate: Mock→API 전환, loading/error 상태 추가
- ChecklistTemplateEditor: VersionSelectBox 제거, loading/error UI
- AuditSettingsPanel/page.tsx: 버전 관련 props 정리
- types.ts: ChecklistTemplateVersion 제거, ChecklistTemplate 수정
2026-03-12 11:16:40 +09:00
유병철
ea6ca335f1 feat: CSP 다음/카카오 도메인 허용 + 입고 성적서 파일 백엔드 연동 + 팝업 이미지 중앙정렬
- middleware CSP: *.kakao.com, *.kakaocdn.net 추가 (다음 주소찾기 차단 해결)
- frame-src에 'self' 추가
- 공지 팝업 이미지 중앙정렬 ([&_img]:mx-auto)
- HR 사원관리, 결재, 품목, 생산 등 다수 개선
- API 에러 핸들링 및 JSON 파싱 안정화
2026-03-11 22:32:58 +09:00
유병철
e9ac2470e1 feat: QMS 체크리스트 템플릿 관리 및 견적/리스트 개선
- QMS 체크리스트 템플릿 에디터 추가 (ChecklistTemplateEditor)
- AuditSettingsPanel, Day1DocumentSection 기능 확장
- 견적 등록(QuoteRegistration) 개선
- IntegratedListTemplateV2 수정
- 건설 카테고리 actions 수정
2026-03-11 11:06:10 +09:00
유병철
81affdc441 feat: ESLint 정리 및 전체 코드 품질 개선
- eslint.config.mjs 규칙 강화 및 정리
- 전역 unused import/변수 제거 (312개 파일)
- next.config.ts, middleware, proxy route 개선
- CopyableCell molecule 추가
- 회계/결재/HR/생산/건설/품질/영업 등 전 도메인 lint 정리
- IntegratedListTemplateV2, DataTable, MobileCard 등 공통 컴포넌트 개선
- execute-server-action 에러 핸들링 보강
2026-03-11 10:27:10 +09:00
dc0c317d23 feat: [auth] MNG→SAM 자동 로그인 페이지 구현
- /auto-login?token=xxx 페이지 추가 (기존 세션 로그아웃 후 토큰 로그인)
- /api/auth/token-login 프록시 라우트 (HttpOnly 쿠키 설정)
- publicRoutes에 /auto-login 추가 (인증 없이 접근 허용)
2026-03-11 01:08:09 +09:00
d17b2a11a4 feat: [QMS] 프론트엔드 API 연동 준비 (Phase 3)
- actions.ts: 1일차/2일차 서버 액션 함수 (snake_case→camelCase 변환)
- hooks/useDay1Audit.ts: 기준/매뉴얼 심사 상태 관리 커스텀 훅
- hooks/useDay2LotAudit.ts: 로트 추적 심사 상태 관리 커스텀 훅
- page.tsx: 인라인 상태를 커스텀 훅으로 리팩토링
- USE_MOCK 플래그로 목업↔API 전환 지원
2026-03-10 17:11:56 +09:00
77c5bcde59 feat: [QMS] 목업 데이터 사용 컴포넌트에 Mock 배지 표시
- 6개 컴포넌트에 isMock prop 추가 (ReportList, RouteList, DocumentList, Day1ChecklistPanel, Day1DocumentSection, Day1DocumentViewer)
- 각 컴포넌트 헤더에 amber 톤 Mock 배지 표시
- API 연동 완료 시 isMock prop 제거로 자동 해제
2026-03-10 17:11:56 +09:00
유병철
68331be0ef feat: 회계/결재/생산/출하/대시보드 다수 개선 및 QA 수정
- BadDebtCollection, BillManagement, CardTransaction, TaxInvoice 회계 개선
- VendorManagement/VendorDetailClient 소폭 추가
- DocumentCreate/DraftBox 결재 기능 개선
- WorkOrder Create/Detail/Edit, ShipmentEdit 생산/출하 개선
- CEO 대시보드: PurchaseStatusSection, receivable/status-issue transformer 정비
- dashboard types/invalidation 확장
- LoginPage, Sidebar, HeaderFavoritesBar 레이아웃 수정
- QMS 페이지, StockStatusDetail, OrderRegistration 소폭 수정
- AttendanceManagement, VacationManagement HR 수정
- ConstructionDetailClient 건설 상세 개선
- claudedocs: 주간 구현내역, 대시보드 QA/수정계획, 결재/품질/생산/출하 문서 추가
2026-03-09 21:06:01 +09:00
유병철
7d369d1404 feat: 계정과목 공통화 및 회계 모듈 전반 개선
- 계정과목 관리를 accounting/common/으로 통합 (AccountSubjectSettingModal 이동)
- GeneralJournalEntry: 계정과목 actions/types 분리, 모달 import 경로 변경
- CardTransactionInquiry: JournalEntryModal/ManualInputModal 개선
- TaxInvoiceManagement: actions/types 리팩토링
- DepositManagement/WithdrawalManagement: 소폭 개선
- ExpectedExpenseManagement: UI 개선
- GiftCertificateManagement: 상세/목록 개선
- BillManagement: BillDetail/Client/index 소폭 추가
- PurchaseManagement/SalesManagement: 상세뷰 개선
- CEO 대시보드: dashboard-invalidation 유틸 추가, useCEODashboard 확장
- OrderRegistration/OrderSalesDetailView 소폭 수정
- claudedocs: 계정과목 통합 계획/분석/체크리스트, 대시보드 검증 문서 추가
2026-03-08 12:44:36 +09:00
eb18a3facb fix: [생산지시] BOM 공정 분류 UI 수정 + 접이식 카드
- BOM types/actions: 필드 매핑 수정 (unit, quantity, unitPrice, totalPrice, nodeName)
- BOM UI: 접이식(collapsible) Card + ChevronDown 토글
- 테이블 컬럼 변경: 품목코드, 품목명, 규격, 단위, 수량, 단가, 금액, 개소
- 중복 key 수정: `${item.id}-${idx}` 패턴 적용
2026-03-05 21:26:01 +09:00
9fc979e135 fix: [생산지시] 날짜포맷·수량→개소수·중복key 수정
- actions.ts: formatDateOnly 정규식 보강 (공백/T 구분자 모두 처리)
- actions.ts: nodeCount 매핑 추가 (node_count/nodes_count)
- types.ts: nodeCount, node_count, nodes_count 필드 추가
- page.tsx: 수량→개소 컬럼 변경, nodeCount 표시
- [id]/page.tsx: 수량→개소 표시, BOM 테이블 중복 key 수정
2026-03-05 21:26:01 +09:00
fa7efb7b24 feat: [생산지시] 목록/상세 페이지 API 연동
- types.ts: API/프론트 타입 정의 (ProductionOrder, Detail, BOM 타입)
- actions.ts: Server Actions (getProductionOrders, getProductionOrderStats, getProductionOrderDetail)
  - executePaginatedAction + buildApiUrl 패턴 적용
  - snake_case → camelCase 변환 함수
- 목록 page.tsx: 샘플데이터 → API 연동
  - 서버사이드 페이지네이션 (clientSideFiltering: false)
  - stats API로 탭 카운트 동적 반영
  - ProgressSteps 동적화 (statusCode 기반)
  - 생산지시번호 → 수주번호로 변경 (별도 PO 번호 없음)
- 상세 page.tsx: 샘플데이터 → API 연동
  - getProductionOrderDetail() API 호출
  - createProductionOrder() orders/actions.ts에서 재사용
  - BOM null 처리 (빈 상태 표시)
  - WorkOrder 상태 배지 확장 (6종: unassigned~shipped)
2026-03-05 21:26:01 +09:00
유병철
1675f3edcf feat: 어음관리 리팩토링 및 CEO 대시보드 SummaryNavBar 추가
- BillManagement: BillDetail 리팩토링, sections/hooks 분리, constants 추가
- BillManagement types 대폭 확장, actions 개선
- GiftCertificateManagement: actions/types 확장
- CEO 대시보드: SummaryNavBar 컴포넌트 추가, useSectionSummary 훅
- bill-prototype 개발 페이지 업데이트
2026-03-05 20:47:43 +09:00
유병철
00a6209347 feat: 레이아웃/출하/생산/회계/대시보드 전반 개선
- HeaderFavoritesBar 대폭 개선
- Sidebar/AuthenticatedLayout 소폭 수정
- ShipmentCreate, VehicleDispatch 출하 관련 개선
- WorkOrderCreate/Edit, WorkerScreen 생산 관련 개선
- InspectionCreate 자재 입고검사 개선
- DailyReport, VendorDetail 회계 수정
- CEO 대시보드: CardManagement/DailyProduction/DailyAttendance 섹션 개선
- useCEODashboard, expense transformer 정비
- DocumentViewer, PDF generate route 소폭 수정
- bill-prototype 개발 페이지 추가
- mockData 불필요 데이터 제거
2026-03-05 13:35:48 +09:00
b05e19e9f8 fix: [quality] QMS mockData에 productCode 필드 누락 수정
WorkOrder 타입 필수 필드 productCode 추가하여 빌드 오류 해결
2026-03-04 22:40:23 +09:00
유병철
cde9333652 feat: CEO 대시보드 API 연동 강화 및 회계/결재/HR 개선
- CEO 대시보드: 예상비용, 현황이슈, 일별매출/매입 등 모달 API 연동 확대
- dashboard transformers 리팩토링 (hr, sales-purchase, production-logistics 분리)
- useCEODashboard 훅 대폭 확장 (모달 데이터 fetching 로직)
- DailyReport: USD 섹션 추가 및 레이아웃 개선
- VendorManagement/ApprovalBox: 소폭 개선
- VacationManagement: 소폭 수정
- component-registry previews 업데이트
- claudedocs: 대시보드 API 스펙, 분석 문서 추가
2026-03-03 22:18:48 +09:00
유병철
1bccaffe27 feat: CEO 대시보드 리팩토링 및 회계 관리 개선
- CEO 대시보드: 컴포넌트 분리(DashboardSettingsSections, DetailModalSections), 모달/섹션 개선, useCEODashboard 최적화
- 회계: 부실채권/매출/매입/일일보고 UI 및 타입 개선
- 공통: Sidebar, useDashboardFetch 훅 추가, amount/status-config 유틸 개선

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 12:17:40 +09:00
유병철
b1686aaf66 feat: 모바일 반응형 UI 개선 및 공휴일/일정 시스템 통합
- MobileCard 접기/펼치기(collapsible) 기능 추가 및 반응형 레이아웃 개선
- DatePicker 공휴일/세무일정 색상 코딩 통합, DateTimePicker 신규 추가
- useCalendarScheduleInit 훅으로 전역 공휴일/일정 데이터 캐싱
- 전 도메인 날짜 필드 DatePicker 표준화 (104 files)
- 생산대시보드/작업지시 모바일 호환성 강화
- 견적서/주문관리 반응형 그리드 적용
- 회계 모듈 기능 개선 (매입상세 결재연동, 미수금현황 조회조건 등)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 21:27:40 +09:00