Commit Graph

595 Commits

Author SHA1 Message Date
유병철
437d5f6834 refactor(WEB): SearchableSelectionModal 공통화 및 actions lookup 통합
- SearchableSelectionModal<T> 제네릭 컴포넌트 추출 (organisms)
- 검색 모달 5개 리팩토링: SupplierSearch, QuotationSelect, SalesOrderSelect, OrderSelect, ItemSearch
- shared-lookups API 유틸 추가 (거래처/품목/수주 등 공통 조회)
- create-crud-service 확장 (lookup, search 메서드)
- actions.ts 20+개 파일 lookup 패턴 통일
- 공통 페이지 패턴 가이드 문서 추가
- CLAUDE.md Common Component Usage Rules 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 16:01:23 +09:00
bd7e70f3da Merge remote-tracking branch 'origin/master' 2026-02-10 10:27:21 +09:00
12a423051a feat(WEB): 중간검사 문서 템플릿 동적 연동 - 공정관리 선택기 + Worker Screen 동적 폼
- ProcessStep 타입에 documentTemplateId/documentTemplateName 추가
- 공정관리 actions.ts: document_template_id 매핑 + getDocumentTemplates 서버 액션
- StepForm: 검사여부 사용 시 문서양식 선택 드롭다운 추가
- WorkerScreen actions.ts: getInspectionTemplate, saveInspectionDocument 서버 액션 추가
- InspectionInputModal: tolerance 기반 자동 판정 + 동적 폼(DynamicInspectionForm) 추가
  - evaluateTolerance: symmetric/asymmetric/range 3가지 tolerance 판정
  - 기존 공정별 하드코딩은 템플릿 없을 때 레거시 모드로 유지
- InspectionReportModal: 템플릿 모드 동적 렌더링 (기준서/DATA/결재라인)
- WorkerScreen index: handleInspectionComplete에서 Document 저장 호출 추가
2026-02-10 08:36:12 +09:00
유병철
0643d56194 feat(WEB): 공정관리 상세 체크리스트 연동 및 리팩토링 문서 업데이트
- ProcessDetail: 체크리스트 연동 UI 추가
- Process 타입 체크리스트 필드 확장
- 리팩토링 로드맵 및 Phase1 체크리스트 진행상황 업데이트
- claudedocs 인덱스 정리

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 21:49:45 +09:00
14b84cc08d fix(WEB): BomCalculationResult import 경로 수정
- actions.ts에서 제거된 type re-export를 types.ts에서 직접 import로 변경
2026-02-09 21:39:08 +09:00
c82724153f Merge remote-tracking branch 'origin/master' 2026-02-09 21:32:50 +09:00
58700c1097 chore(WEB): package-lock.json 업데이트 2026-02-09 21:31:11 +09:00
2f3f7a486c feat(WEB): 작업자화면 중간검사 자동판정 로직 추가
- InspectionInputModal: 공정별(screen/slat/bending) 자동 판정 계산 로직
- JudgmentToggle → JudgmentDisplay로 변경 (수동 → 자동 판정)
- computeJudgment: 검사 항목 상태 기반 적합/부적합 자동 산출
- index.tsx: 관련 타입/로직 보강
2026-02-09 21:31:07 +09:00
6d8116713f feat(WEB): 공정관리 품목 제거 기능 및 리팩토링
- ProcessDetail: 개별 품목 제거(removeProcessItem) 기능 추가
- ProcessDetail: onProcessUpdate 콜백으로 부모 컴포넌트 동기화
- ProcessDetail: 삭제 다이얼로그 제거, 품목 목록 flatMap 추출 방식 개선
- ProcessForm: 규칙 모달 관련 코드 추가
- RuleModal: UI 개선
- actions.ts: removeProcessItem API 함수 추가
2026-02-09 21:31:00 +09:00
2ad27d738f fix(WEB): 수주 삭제 조건 강화 및 개별삭제 기능 추가
- 삭제 버튼 수주등록/수주확정 상태에서만 표시 (생산지시 이후 삭제 불가)
- deleteItem 핸들러 추가하여 개별 삭제 지원
- 삭제 후 통계(stats) 자동 갱신
2026-02-09 21:30:52 +09:00
유병철
4d79b178e3 refactor(WEB): 공통 훅(useDeleteDialog, useStatsLoader) 및 CRUD 서비스 추출
- useDeleteDialog 훅 추출로 삭제 다이얼로그 로직 공통화
- useStatsLoader 훅 추출로 통계 로딩 패턴 공통화
- create-crud-service 유틸 추가
- 차량관리/견적/출고/검사 등 리스트 컴포넌트 간소화
- RankManagement actions 정리
- 프로덕션 로거 불필요 출력 제거

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 20:42:05 +09:00
9aae26b4f2 feat(WEB): 중간검사 기준서 연동 및 mock 데이터 필터링
- InspectionStandardSection 공유 컴포넌트 추가 (inspectionSetting 기반)
- mng 등록 inspectionStandardImage 있으면 하드코딩 테이블 대체, 없으면 fallback
- 5개 InspectionContent 컴포넌트에 inspectionSetting props 연동
- InspectionReportModal에서 mock- prefix workItems 필터링 (7→4개소 버그 수정)
2026-02-09 19:53:31 +09:00
bff1a2fd07 Merge remote-tracking branch 'origin/master' 2026-02-09 18:02:40 +09:00
유병철
3ea6a57a10 feat(WEB): 공정관리 드래그 순서변경, 수주서/출고증 리디자인, 체크리스트 관리 추가
- 공정관리: 드래그&드롭 순서 변경 기능 추가 (reorderProcesses API)
- 수주서(SalesOrderDocument): 기획서 D1.8 기준 리디자인, 출고증과 동일 자재 섹션 구조
- 출고증(ShipmentOrderDocument): 레이아웃 개선
- 체크리스트 관리 페이지 신규 추가 (master-data/checklist-management)
- QMS 품질감사: 타입 및 목데이터 수정
- menuRefresh 유틸 정리

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 17:52:43 +09:00
a9ae162c90 feat(WEB): Phase 4 중간검사 성적서 API 연동 및 컴포넌트 리팩토링
- Phase 4.1: InspectionReportModal API 연동 (getInspectionReport 서버 액션)
- Phase 4.2: 5개 InspectionContent 공통 코드 추출 (inspection-shared.tsx)
  - 공통 컴포넌트: InspectionLayout, CheckStatusCell, JudgmentCell, InspectionFooter
  - 공통 유틸: convertToCheckStatus, calculateOverallResult, getOrderInfo
  - 총 코드량 2,376줄 → 1,583줄 (33% 감소)
- InspectionInputModal 기본값 null로 수정 (적합 버튼 미선택 상태 시작)
2026-02-09 17:37:49 +09:00
6a32400118 fix(WEB): 자재투입 모달 필요수량 컬럼 추가 및 너비 조정
- 필요수량 컬럼 추가 (6컬럼: 로트번호/품목명/필요수량/가용수량/단위/투입수량)
- 모달 너비 max-w-2xl → !max-w-3xl로 소폭 확대
2026-02-09 16:47:52 +09:00
ce36101929 Merge remote-tracking branch 'origin/master' 2026-02-09 16:14:40 +09:00
유병철
55e0791e16 refactor(WEB): Server Action 공통화 및 보안 강화
- executeServerAction 공통 유틸 도입으로 actions.ts 대폭 간소화 (50+개 파일)
- sanitize 유틸 추가 (XSS 방지)
- middleware CSP 헤더 추가 및 Open Redirect 방지
- 프록시 라우트 로깅 개발환경 한정으로 변경
- 프로덕션 불필요 console.log 제거

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 16:14:06 +09:00
a99c215db0 chore(WEB): .env 파일 이력관리 제거
- .env.example, .env.production 등 추적 중이던 env 파일 모두 제거
- .gitignore에 .env* 포괄 패턴은 이전 커밋에서 적용 완료
2026-02-09 16:11:48 +09:00
318cc415ed chore(WEB): .env 파일 이력관리 제거 및 .gitignore 강화
- .gitignore에 .env* 포괄 패턴 추가
- 추적 중이던 .env.example, .env.production 등 모든 env 파일 git rm --cached
2026-02-09 16:11:07 +09:00
53b4f43b14 fix(WEB): 견적번호 표시 수정, type re-export 제거, 발주처 검색 활성화
- quotes/types.ts: QuoteFormDataV2에 quoteNumber 필드 추가 및 transformApiToV2 매핑
- quotes/actions.ts: 'use server' 파일에서 불허되는 type re-export 제거
- ReceivingDetail.tsx: SupplierSearchModal 주석 해제하여 발주처 검색 활성화
2026-02-09 16:03:41 +09:00
d014227e9c Merge remote-tracking branch 'origin/master' 2026-02-09 10:46:02 +09:00
유병철
f320ec7d37 feat(WEB): Vercel 배포 대응 및 타입 안정성 개선
- puppeteer → puppeteer-core + @sparticuz/chromium 전환 (Vercel 서버리스 호환)
- PDF 생성 API 로컬/Vercel 환경 분기 처리
- next.config.ts: ignoreBuildErrors false로 전환
- WorkOrder items에 orderNodeId/orderNodeName 필드 추가
- 결재선 데이터에 name/dept 필드 추가
- OrderSalesDetailView 타입 캐스팅 안전하게 수정
- vercel.json 설정 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 10:45:57 +09:00
7bd1269aad feat: [WEB] 중간검사 프론트엔드 저장 연동 (Phase 2)
- WorkerScreen/actions.ts에 saveItemInspection, getWorkOrderInspectionData 서버 액션 추가
- handleInspectionComplete에서 POST /items/{itemId}/inspection API 호출 연동
- 작업지시 선택 시 GET /inspection-data로 기존 검사 데이터 자동 로드
- InspectionInputModal에 initialData prop 추가 (재클릭 시 저장된 값 표시)
- WorkItemData에 apiItemId, workOrderId 필드 추가 (실제 DB ID 보존)
- 기존 saveInspectionData deprecated 처리
2026-02-09 10:33:02 +09:00
유병철
f3b07ac875 chore(WEB): claudedocs 디렉토리 도메인별 재구조화
- 루트 문서 30개를 도메인별 하위 폴더로 이동
- accounting/, architecture/, dev/, guides/, security/ 등 카테고리 분류
- archive/ 폴더에 QA 스크린샷 이동
- _index.md 문서 맵 업데이트

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 09:35:22 +09:00
61bf95b58e style: [WEB] 중간검사 모달 스타일을 수입검사 모달과 동일하게 변경
- Dialog 레이아웃: p-0, flex col, max-h-[90vh] 적용
- 헤더/스크롤/하단 3영역 분리 (판정+버튼 하단 고정)
- 토글 버튼 스타일 통일 (black/gray-100 border)
- 인풋 h-11 rounded-lg border-gray-300 적용
- 라벨 text-sm font-bold span으로 변경
- 검사완료 버튼 bg-black, 취소 버튼 outline 스타일
2026-02-07 05:10:29 +09:00
1fca5ed477 fix: [자재투입] 입고 로트번호 표시 및 로트별 수량 투입으로 변경
- MaterialForInput 타입: stockLotId, lotNo, lotAvailableQty 추가
- 로트번호 컬럼에 실제 입고 로트번호(lot_no) 표시
- 수량 컬럼을 가용수량(lotAvailableQty)으로 변경
- 가용수량 초과 검증 추가
- registerMaterialInput: stock_lot_id+qty 로트별 투입 방식으로 변경
2026-02-07 05:06:34 +09:00
a523bb482e fix:견적확정 밸리데이션 필드명 수정 (managerName→manager) 2026-02-07 03:53:11 +09:00
cbb16388fe fix:작업자 화면 자재투입 노드 ID 매칭 수정 2026-02-07 03:53:07 +09:00
98498918ed fix:수입검사 성적서 결재라인 한글 라벨/부서 표시 및 저장값 로드 2026-02-07 03:53:03 +09:00
393a092653 fix:수입검사 모달 파일 첨부에 PDF 허용 추가 2026-02-07 03:51:38 +09:00
a8591c438e feat: 견적확정 밸리데이션, 수주등록 개소그룹, 작업지시 개선
- 견적확정 시 업체명/현장명/담당자/연락처 프론트 밸리데이션 추가
- 견적확정 후 수주등록 버튼 동적 전환
- 수주등록 품목 개소별(floor+code) 그룹핑 수정
- 작업지시 상세 quantity 문자열→숫자 변환 (formatQuantity)
- 작업지시 탭 카운트 초기 로딩 시 전체 표시 (by_process 활용)
- 작업지시 상세 개소별/품목별 합산 테이블 추가
- 작업자 화면 API 연동 및 목업 데이터 분리
- 입고관리 완료건 수정, 재고현황 개선
2026-02-07 03:27:23 +09:00
b2085a84ca Merge remote-tracking branch 'origin/master' 2026-02-06 20:23:02 +09:00
473cfa0052 feat: [수주관리] 프론트엔드 노드별 그룹 UI 구현
- OrderNode 인터페이스 + ApiOrderNode 타입 정의 (actions.ts)
- transformNodeApiToFrontend 변환 함수 (재귀 children/items 포함)
- Order 타입에 nodes 필드, ApiOrder에 root_nodes 필드 추가
- OrderSalesDetailView: 노드 존재 시 개소별 카드 UI, 없으면 레거시 플랫 테이블
- OrderNodeCard: 접기/펼치기, 노드 상태 뱃지, 자재 테이블, 재귀 하위 노드 지원
- index.ts에 OrderNode export 추가
2026-02-06 20:22:31 +09:00
유병철
f456e7bee0 chore(WEB): 견적 액션 정리 및 아키텍처 문서 추가
- quotes/actions.ts 중복 코드 제거 및 간소화
- quotes/types.ts 타입 확장
- claudedocs/_index.md 업데이트
- 멀티테넌시 최적화 로드맵 문서 추가
- 리팩토링 로드맵 문서 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 17:52:02 +09:00
94ee2e9ad6 Merge remote-tracking branch 'origin/master' 2026-02-06 16:47:09 +09:00
유병철
5344bfc426 fix(WEB): 폼 컴포넌트 DatePicker 적용 및 코드 정리
- ExpectedExpenseManagement DatePicker 적용 및 간소화
- BoardForm 날짜 필드 개선
- AttendanceInfoDialog, ReasonInfoDialog 코드 정리
- ReceivingDetail 기능 보강
- ShipmentCreate/Edit DatePicker 적용
- VehicleDispatchEdit 수정
- WorkOrderCreate 개선

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 16:46:41 +09:00
9d6cba6e01 Merge remote-tracking branch 'origin/master' 2026-02-06 16:16:10 +09:00
유병철
666eb6bcc6 refactor(WEB): WorkerScreen 코드 정리 및 최적화
- 중복 로직 제거 및 구조 개선 (-103줄)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 16:15:48 +09:00
2dc4fbd213 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/components/production/WorkOrders/WorkOrderList.tsx
2026-02-06 16:09:13 +09:00
유병철
c2ed71540f feat(WEB): DatePicker 공통화 및 공정관리/작업자화면 대폭 개선
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>
2026-02-06 15:48:00 +09:00
b228335446 feat: 작업지시 목록 공정 탭 동적 로드 및 UI 개선
- 탭 구조 변경: 하드코딩 → API에서 동적 로드
  - 전체 탭 추가
  - 공정별 탭 (API 기반)
  - 기타 탭 (공정 미지정)

- 컬럼 추가 및 개선
  - 공정 컬럼 추가 (뱃지 형태)
  - 틀수: items 배열 길이로 표시
  - 부서: process.department로 표시
2026-02-06 10:28:37 +09:00
유병철
e453753bdd Merge remote-tracking branch 'origin/master' 2026-02-06 09:41:51 +09:00
유병철
881f4668da fix(WEB): 검사입력 모달 UI/UX 개선
- ImportInspectionInputModal 수입검사 입력 모달 개선
- InspectionInputModal 작업자화면 검사입력 개선
- ProductInspectionInputModal 제품검사 입력 개선
- WipProductionModal 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 09:41:27 +09:00
fe851e37c4 Merge remote-tracking branch 'origin/master' 2026-02-06 09:17:12 +09:00
유병철
16a349292b fix(WEB): 검사의뢰서 문서 레이아웃 개선
- InspectionRequestDocument 구조 및 스타일 개선

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 09:08:42 +09:00
유병철
dc0ce471aa feat(WEB): 품질검사 기능 대폭 확장 및 검사입력 모달 추가
품질검사관리:
- InspectionCreate 생성 폼 대폭 개선 (+269줄)
- InspectionDetail 상세 페이지 확장 (+424줄)
- InspectionReportModal 검사성적서 모달 기능 강화
- InspectionReportDocument 문서 구조 개선
- ProductInspectionInputModal 제품검사 입력 모달 신규 추가
- types, mockData, actions 확장

자재입고:
- ReceivingDetail 수입검사 연동 기능 추가
- ImportInspectionInputModal 수입검사 입력 모달 신규 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 23:04:53 +09:00
b57fc31297 feat:견적/수주/공정관리 UI 개선
- QuoteFooterBar: 수주전환 버튼 및 상태 표시 개선
- QuoteRegistrationV2: 할인금액 입력 UI 추가
- QuoteManagementClient: 타입 수정
- OrderRegistration: 수주 등록 폼 개선
- StepDetail: 공정 단계 상세 UI 확장
- RuleModal: 규칙 모달 레이아웃 조정
- BadgeSm: 뱃지 컴포넌트 스타일 개선
2026-02-05 21:58:53 +09:00
f1e369df9f feat:품목 검색 모달에 수입검사 배지 추가
- ItemMaster 타입에 hasInspectionTemplate 필드 추가
- API 응답 변환 함수에 has_inspection_template 매핑
- 수입검사 양식 연결 품목에 녹색 배지 표시
2026-02-05 21:58:06 +09:00
유병철
efcc645e24 feat(WEB): 생산/검사 기능 대폭 확장 및 작업자화면 검사입력 추가
생산관리:
- WipProductionModal 기능 개선
- WorkOrderDetail/Edit 확장 (+265줄)
- 검사성적서 콘텐츠 5종 대폭 확장 (벤딩/벤딩WIP/스크린/슬랫/슬랫조인트바)
- InspectionReportModal 기능 강화

작업자화면:
- WorkerScreen 기능 대폭 확장 (+211줄)
- WorkItemCard 개선
- InspectionInputModal 신규 추가 (작업자 검사입력)

공정관리:
- StepForm 검사항목 설정 기능 추가
- InspectionSettingModal 신규 추가
- InspectionPreviewModal 신규 추가
- process.ts 타입 확장 (+102줄)

자재관리:
- StockStatus 상세/목록/타입/목데이터 개선

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 21:43:28 +09:00