김보곤
910f0ce01e
fix: [작업자화면] selectedSidebarOrderId 초기화 순서 오류 수정
2026-03-22 18:52:29 +09:00
김보곤
2ca4dbb821
fix: [작업자화면] 작업정보 저장 로직 전면 재구성
...
- saveWorkOrderField 헬퍼: API 저장 + workOrders state 동시 동기화
- 부서/담당자/생산일자 onChange → saveWorkOrderField로 통일
- workOrders state 동기화로 다른 작업지시 선택 후 돌아와도 값 유지
- useEffect: selectedSidebarOrderId 변경 시에만 workOrders state에서 로드
- 단계 완료/검사 완료/자동 완료 시 생산일자도 saveWorkOrderField 사용
2026-03-22 18:50:15 +09:00
김보곤
db3ebc3f82
feat: [작업자화면] 단계 완료 시 생산일자 자동 저장
...
- 어떤 단계든 완료 체크 시 생산일자가 비어있으면 오늘 날짜로 자동 저장
- 이미 생산일자가 설정되어 있으면 덮어쓰지 않음
2026-03-22 18:42:38 +09:00
김보곤
09dabd13af
feat: [작업자화면] 마지막 단계 완료 시 생산일자 자동 저장
...
- 모든 공정 단계 완료(work_order_status_changed) 시 오늘 날짜로 생산일자 저장
- 검사 완료 시 + 마지막 단계 완료 시 양쪽 모두 적용
2026-03-22 18:36:10 +09:00
김보곤
250c203bfb
fix: [작업자화면] 생산일자/부서/담당자 변경 시 이전 값으로 복원되는 버그 수정
...
- useEffect 의존성에서 filteredWorkOrders 제거
- prevSidebarOrderIdRef로 작업지시 변경 시에만 세팅 (사용자 수정값 보존)
- 같은 작업지시 선택 상태에서 onChange 값이 덮어쓰이지 않음
2026-03-22 18:26:43 +09:00
김보곤
255e0be370
feat: [작업자화면] 부서/담당자/생산일자 onChange 자동 저장
...
- updateWorkOrderInfo: 범용 작업정보 업데이트 API (scheduled_date + team_id + assignee_id)
- 부서 변경 → team_id 즉시 저장
- 담당자 변경 → assignee_id 즉시 저장
- 생산일자 변경 → scheduled_date 즉시 저장
- selectedOrder 변경 시 저장된 담당자(assigneeId) 복원
- WorkOrder 타입에 assigneeId 필드 추가
2026-03-22 18:21:39 +09:00
김보곤
39ff4b2984
fix: [worker-screen] source_order_item 타입에 item_code 속성 추가
...
빌드 타입 에러 해결
2026-03-22 18:12:49 +09:00
김보곤
5821596e26
feat: [작업자화면] 검사 완료 시 생산일자 자동 저장
...
- updateWorkOrderScheduledDate API 함수 추가 (PUT /work-orders/{id})
- handleInspectionComplete에서 검사 완료 시 오늘 날짜로 생산일자 자동 저장
- UI의 생산일자 필드도 즉시 반영
2026-03-22 18:12:17 +09:00
김보곤
08ad004484
feat: [작업자화면] 전 공정 자동 완료 처리 — 단계 완료 시 작업지시 자동 전환
...
- StepProgressItem에 work_order_status_changed 필드 추가
- handleStepClick: 단계 토글 후 자동 완료 감지 → 작업 목록 새로고침
- handleInspectionComplete: 검사 완료 후에도 자동 완료 토스트 표시
- 슬랫/스크린/절곡 모든 공정에 동일 적용 (백엔드 autoCompleteWorkOrderIfAllStepsDone 연동)
2026-03-22 18:04:12 +09:00
김보곤
a2f184c4cb
fix: [자재투입] DEV 강제입고 버튼 배정 미완료 그룹에서만 표시
2026-03-22 17:46:53 +09:00
김보곤
3204447981
feat: [자재투입] LOT 있는 그룹에도 DEV 강제입고 버튼 추가
...
- 기존: LOT 없는 그룹에서만 강제입고 가능
- 변경: LOT 테이블 아래에도 [DEV] 재고 추가 버튼 표시
- 가용수량 부족 시 테스트용 재고 생성 가능
2026-03-22 17:44:26 +09:00
김보곤
85efad22ca
fix: [자재투입] physicalAvail을 SUM으로 수정 — 모든 그룹의 기투입 합산
...
- max() → SUM: 같은 LOT의 기투입(lotInputtedQty)을 모든 그룹에서 합산
- replace 모드에서 각 그룹의 기투입이 복원되므로 합산이 정확
- 예: 가용4 + 상부덮개기투입3 + 마구리기투입1 = 총8 (max는 7로 부정확)
2026-03-22 17:41:15 +09:00
김보곤
e9a6c64953
fix: [자재투입] 물리LOT 교차 추적 복원 — physicalAvail 기반 정확한 가용량 계산
...
- 이전 수정에서 교차 추적 제거 시 동일 stockLotId를 다른 BOM 그룹에서
초과 배정하여 API에서 재고 부족(500) 에러 발생
- physicalAvail: 각 stockLotId의 최대 가용량(lotAvailableQty + max(lotInputtedQty))으로 초기화
- physicalUsed: 그룹 간 누적 사용량 추적하여 실제 물리 LOT 잔량 내에서 배정
- handleAutoFill과 allocations useMemo 모두 동일 로직 적용
2026-03-22 17:37:50 +09:00
김보곤
cc6786d791
fix: [자재투입] 자동입력 배정수량 버그 수정 — 그룹별 독립 계산
...
- physicalUsed 교차그룹 추적 제거: 같은 물리 LOT가 다른 BOM 그룹에서
사용될 때 lotInputtedQty가 그룹마다 달라 부정확한 차감 발생
- 각 그룹의 LOT 가용량을 독립적으로 계산 (lotAvailableQty + lotInputtedQty)
- allocations useMemo도 동일하게 수정
2026-03-22 17:33:41 +09:00
김보곤
d1c2ea2199
feat: [자재투입] 배정완료 뱃지 토글 필터 — 미배정 항목만 표시
...
- 배정완료 뱃지 클릭 시 미배정 그룹만 필터링 (토글)
- 다시 클릭하면 전체 표시
- 뱃지 텍스트: "미배정 N건" / "N / M 배정완료" 전환
2026-03-22 17:28:39 +09:00
김보곤
149cf8e923
fix: [작업자화면] 탭 width 축소 — 생산현황판과 동일하게 컨텐츠 크기에 맞춤
2026-03-22 17:21:16 +09:00
김보곤
b8f03462b8
fix: [생산현황판] 절곡 하위 탭 숨김 — 전체로 자동 동작
2026-03-22 17:18:34 +09:00
김보곤
610d12f4d3
feat: [생산현황판] 절곡 탭 depth 구조 — 재공품 하위 탭 분리
...
- 절곡 계열 공정을 부모(절곡) + 하위(가이드레일/케이스/하단마감재/기타) 구조로 그룹화
- 상위 탭에서 절곡 선택 시 하위 탭 표시
- TabOption에 children 필드 추가
- 재공품 라벨 간소화: "절곡 (재공품-가이드레일)" → "가이드레일"
2026-03-22 17:16:37 +09:00
김보곤
2af2a6760e
fix: [수주서] ProductRow 타입에 product_code 속성 추가
...
빌드 타입 에러 해결
2026-03-22 17:16:33 +09:00
김보곤
1e21952f7b
feat: [수주서] R2 bending_images 기반 이미지 연결 — 작업일지와 동일 구조
...
- getBendingImageUrl 유틸 import하여 R2 이미지 맵 사용
- 가이드레일/케이스/하단마감재/연기차단재 모두 R2 presigned URL 사용
- productCode + guideType 기반 정확한 이미지 매칭
- OrderDocumentModal에서 bendingImages prop 전달
2026-03-22 17:09:22 +09:00
김보곤
85b4510f47
fix: [작업자화면] 재공품 BD코드 표시 fallback 추가
...
- item.code 없을 시 sourceOrderItem.item_code에서 BD코드 추출
2026-03-22 15:44:03 +09:00
김보곤
fde2e67760
fix: [수주서] 이미지 프록시 경유로 변경 — 인증 문제 해결
...
- image_url → image_file_id로 변경
- /api/proxy/files/{id}/view 경유하여 인증 헤더 자동 포함
2026-03-22 15:37:03 +09:00
김보곤
0d54a52942
chore: [build] Jenkins 재빌드 트리거
2026-03-22 15:29:22 +09:00
김보곤
28990c8176
feat: [수주서] 절곡품 이미지 Placeholder → 실제 이미지 교체
...
- BendingItem 인터페이스에 image_url 필드 추가
- BendingImage 헬퍼 컴포넌트: image_url 있으면 실제 이미지, 없으면 기존 placeholder
- 가이드레일/케이스/하단마감재/연기차단재 5개 위치 모두 교체
2026-03-22 15:21:11 +09:00
김보곤
ac63cf2e21
fix: [재고생산] completed 상태 라벨을 '생산완료'로 통일
...
- 목록/상세 모두 completed → '생산완료' (produced와 동일 스타일)
2026-03-22 14:59:54 +09:00
김보곤
169ba3c4d2
fix: [자재투입] 재고 검색 필드 매핑 수정 + 재공품 원자재 필터
...
- searchStockByCode: API 응답 필드 매핑 수정 (Item 모델 code/name → itemCode/itemName)
- 재공품(WIP) 자재 투입 시 원자재(RM)만 검색되도록 item_type 필터 추가
- handleStockSearch query null 안전 처리
- 재고생산 품목코드 동적 반영 (expectedItemCode 상태 추가)
- 재고생산 목록 검색에 품목코드 포함
2026-03-22 14:01:57 +09:00
김보곤
cc4d3d0dcd
fix: [worker-screen] WorkOrderApiItem status 타입에 cancelled 추가
...
빌드 시 TypeScript 타입 에러 해결
2026-03-22 13:33:46 +09:00
김보곤
421ec90a91
fix: [재고생산] 품목코드에 resolvedItem.item_code 우선 표시
2026-03-22 13:27:21 +09:00
김보곤
21f8282ade
feat: [재고생산] 품목코드+로트번호 표시 추가 (목록/등록/상세 전체)
2026-03-22 13:25:18 +09:00
김보곤
8fcb305980
fix: [자재투입] 품목 검색 추가 - 재고 없는 품목도 검색 + 개별 강제입고 버튼
2026-03-22 13:18:48 +09:00
김보곤
9fa5a88266
feat: [자재투입] 배정 자재 없을 때도 재고 검색/강제입고 기능 표시
2026-03-22 13:12:48 +09:00
김보곤
6ccd246b14
fix: [worker-screen] 완료된 WO도 목록에 포함 + 검사완료 시 목록 리프레시
2026-03-22 12:50:05 +09:00
김보곤
67ffdc2f5b
feat: [worker-screen] 사이드바 대기/완료 탭 분리 (기본: 대기만 표시)
2026-03-22 12:44:30 +09:00
김보곤
a1c32edb6e
feat: [worker-screen] 사이드바+상세 영역에 작업지시 진행상태 뱃지 표시
2026-03-22 12:39:32 +09:00
김보곤
a2bf91e27d
fix: [재고목록] 플로팅 메뉴 클릭 즉시 닫힘 수정 (이벤트 전파 방지)
2026-03-22 12:33:00 +09:00
김보곤
f1651f31e8
fix: [재고목록] 행 클릭 메뉴를 플로팅 팝오버로 변경 (아코디언→float)
2026-03-22 11:52:52 +09:00
김보곤
c476366a76
fix: buildApiUrl 중복 import 제거
2026-03-22 11:49:53 +09:00
김보곤
acfe0e907d
feat: [재고목록] 행 클릭 액션 메뉴 + 사용현황 모달 추가
2026-03-22 11:48:28 +09:00
김보곤
33eaacd0be
feat: [재고생산] 상세 기본정보 4열 구조 + 진행상태 표시 추가
2026-03-22 11:24:10 +09:00
김보곤
b7df9f3c9f
fix: [types] searchStockByCode lots 파라미터 타입 추가
2026-03-22 11:05:07 +09:00
김보곤
2c465e48f0
feat: [재고목록] PT→부분품(재공품) 표시 + 품목유형별 탭 필터 추가
2026-03-22 11:00:45 +09:00
김보곤
57470c1025
fix: [worker-screen] 하위 공정 필터 뱃지 제거 (전체 항상 선택)
2026-03-22 10:46:39 +09:00
김보곤
7b0adead79
feat: [자재투입] 상단에 배정완료 현황 표시 (N/M 배정완료)
2026-03-22 10:40:11 +09:00
김보곤
f0fffcb16b
fix: [자재투입] 강제입고 토스트 undefined 수정 (pt_item_code 참조)
2026-03-22 10:38:01 +09:00
김보곤
86e3a93486
fix: [자재투입] 강제입고 토스트에 RM→PT 매칭 정보 표시
2026-03-22 10:27:34 +09:00
김보곤
acec5e4a24
feat: [자재투입] 개발전용 입고 강제생성 버튼 추가 (입고+재고+수입검사 자동)
2026-03-22 10:17:37 +09:00
김보곤
60e5dc81fa
fix: [자재투입] 검색결과 key 중복 경고 수정
2026-03-22 10:04:05 +09:00
김보곤
948dc1e1ab
feat: [자재투입] 재고 없는 자재에 재고 검색 기능 추가
2026-03-22 10:02:54 +09:00
김보곤
695b4c305e
feat: [자재투입] 매칭 정보 말풍선 추가 (품목코드/규격/LOT 상태 표시)
2026-03-22 09:48:24 +09:00
김보곤
e3c1b824ce
chore: React 프로세스 재시작 (PUPPETEER_EXECUTABLE_PATH 환경변수 반영)
2026-03-22 09:27:26 +09:00