Commit Graph

3969 Commits

Author SHA1 Message Date
kjs 2690a3fe66 Merge branch 'main' into jskim-node 2026-03-19 09:47:40 +09:00
kjs 1064397be2 fix: update required field handling in V2Repeater and RepeaterTable components
- Modified the logic in the V2Repeater component to determine required fields based on the isNullable property, enhancing validation accuracy.
- Updated the RepeaterTable component to visually indicate required fields with an asterisk, improving user awareness during data entry.

These changes aim to enhance data validation and user experience by ensuring that required fields are clearly marked and accurately validated.
2026-03-19 09:47:15 +09:00
kjs 43a394df31 feat: add required field validation in V2Repeater component
- Implemented validation logic to ensure required fields are filled before saving data in the V2Repeater component.
- Added error messages to notify users of missing required fields, enhancing user experience and data integrity.
- Updated column configuration to include isRequired property for better handling of required fields.

These changes aim to improve data validation and user feedback during data entry processes.
2026-03-18 18:34:00 +09:00
SeongHyun Kim 5d12bef5e5 fix: MES 체크리스트 자동 복사 + 구조적 버그 3건 수정
분할 접수/재작업 카드 생성 시 체크리스트가 복사되지 않던 문제를 해결하고,
공정 흐름 모달과 카드 클릭 이벤트 격리 버그를 수정한다.
[체크리스트 자동 복사]
- copyChecklistToSplit 공통 헬퍼 함수 추출
  (createWorkProcesses/acceptProcess/saveResult 3곳에서 통합 사용)
- routing_detail_id 존재 시: process_work_item 템플릿에서 복사
- routing_detail_id 부재 시: 마스터 process_work_result에서 구조만 복사
[ChecklistItem 렌더링 수정]
- 레거시 detail_type(inspect_numeric/inspect_ox 등)을 정규화하여
  detail_type=inspect + input_type 자동 파싱으로 InspectRouter 라우팅
- info 타입 렌더러 추가
[공정 흐름 모달 이벤트 격리]
- Dialog 래퍼에 onClick/onPointerDown stopPropagation 추가
  (모달 닫기 시 부모 카드 onClick 전파 차단)
[카드 클릭 진행 탭 제한]
- handleCardSelect에 VIRTUAL_SUB_STATUS 코드 가드 추가
  (in_progress가 아닌 카드는 작업상세 모달 열림 차단)
- 재작업 카드 포함 접수가능 탭에서 상세 진입 방지
2026-03-18 18:26:54 +09:00
kjs e5aa44e0d4 Merge branch 'jskim-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-18 17:59:28 +09:00
kjs 5fa905f9ab refactor: simplify FileUploadComponent logic and remove unnecessary condition
- Removed the check for record mode in the FileUploadComponent, streamlining the file loading process.
- Updated the dependency array in the useEffect hook to exclude isRecordMode, ensuring cleaner and more efficient component behavior.

These changes aim to enhance the clarity and maintainability of the FileUploadComponent, improving overall functionality.
2026-03-18 17:59:27 +09:00
kjs ccc99becd3 Merge remote-tracking branch 'upstream/main' 2026-03-18 17:44:08 +09:00
kjs 8e228bbf12 Merge pull request 'jskim-node' (#421) from jskim-node into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/421
2026-03-18 17:43:49 +09:00
kjs 7fb4fbc7f1 Merge branch 'main' into jskim-node 2026-03-18 17:43:38 +09:00
kjs c634e1e054 fix: update file handling and improve query logging
- Added mes-architecture-guide.md to .gitignore to prevent unnecessary tracking.
- Enhanced NodeFlowExecutionService to merge context data for WHERE clause, improving query accuracy.
- Updated logging to include values in SQL query logs for better debugging.
- Removed redundant event dispatches in V2Repeater to streamline save operations.
- Adjusted DynamicComponentRenderer to conditionally refresh keys based on component type.
- Improved FileUploadComponent to clear localStorage only for modal components, preventing unintended resets in non-modal contexts.

These changes aim to enhance the overall functionality and maintainability of the application, ensuring better data handling and user experience.
2026-03-18 17:43:03 +09:00
SeongHyun Kim 9d164d08af feat: BLOCK MES-HARDEN Phase 0~3 + 공정 흐름 스트립 필/칩 UI 개편
MES 불량 처분 체계(disposition 3종)를 구현하고, 공정 카드의 흐름
스트립을 현재 공정 중심 필/칩 윈도우로 전면 재설계한다.
[Phase 0: 기반 안정화]
- confirmResult: SUM 버그 수정 + 마스터 캐스케이드 완료 판정
- checkAndCompleteWorkInstruction: 헬퍼 함수 추출
  (saveResult/confirmResult 양쪽에서 work_instruction 상태 갱신)
- saveResult: 초과 생산 에러 -> 경고 로그로 변경
[Phase 1: UI 정리]
- DISPOSITION_OPTIONS: 5종 -> 3종(폐기/재작업/특채)
- 카드 수동 완료 버튼: in_progress + 생산 있음 + 미완료 시 표시
  (__manualComplete -> confirmResult 호출)
[Phase 2: 양품 계산 서버화]
- concession_qty/is_rework/rework_source_id DB 컬럼 추가
- saveResult: defect_detail disposition별 서버 양품 계산
  (addGood = addProduction - addDefect, addConcession 분리)
- prevGoodQty 5곳: SUM(good_qty) + SUM(concession_qty) 통일
- 프론트 특채 표시: MesInProgressMetrics/MesCompletedMetrics
[Phase 3: 재작업 카드]
- saveResult: disposition=rework 시 동일 공정에 분할행 자동 INSERT
  (is_rework='Y', rework_source_id 연결, status='acceptable')
- 프론트: amber "재작업" 배지 + MesAcceptableMetrics 재작업 전용 UI
- 재작업 카드 접수가능 수량 버그 수정 (마스터 qty -> input_qty)
[공정 흐름 스트립 UI 개편]
- ProcessFlowStrip: 바 형태 -> 필/칩 5슬롯 윈도우
  (+N/이전/현재/다음/+N, 현재 공정 항상 중앙)
- 색상: 지나온=emerald(완료)/slate, 현재=primary,
  완료=emerald, 대기=muted, 남은=amber
2026-03-18 16:38:22 +09:00
kjs 359bf0e614 feat: enhance shipping plan editor and batch save functionality
- Added planDate support in batch save operations for shipping plans, allowing for more accurate scheduling.
- Updated the ShippingPlanEditorComponent to handle planDate and splitKey for better management of shipping plans.
- Enhanced validation logic to ensure that the total planned quantity does not exceed available stock during the editing process.
- Introduced functionality to add and remove split rows dynamically, improving user experience in managing shipping plans.

These changes aim to provide a more robust and flexible shipping plan management experience, facilitating better tracking and scheduling of shipping operations.
2026-03-18 16:04:55 +09:00
DDD1542 7f781b0177 [agent-pipeline] pipe-20260318044621-56k5 round-10 2026-03-18 14:56:46 +09:00
DDD1542 d8b56a1a78 [agent-pipeline] pipe-20260318044621-56k5 round-9 2026-03-18 14:48:13 +09:00
kjs 9decf13068 feat: implement shipping plan management features
- Added shipping plan routes and controller to handle aggregate and batch save operations.
- Introduced a new shipping plan editor component for bulk registration of shipping plans based on selected orders.
- Enhanced API client functions for fetching aggregated shipping plan data and saving plans in bulk.
- Updated the registry to include the new shipping plan editor component, improving the overall shipping management workflow.

These changes aim to streamline the shipping plan process, allowing for efficient management and registration of shipping plans in the application.
2026-03-18 14:42:47 +09:00
DDD1542 cd0f0df34d [agent-pipeline] rollback to 7f33b3fd 2026-03-18 14:37:57 +09:00
DDD1542 cbb8b24e70 [agent-pipeline] pipe-20260318044621-56k5 round-8 2026-03-18 14:37:57 +09:00
DDD1542 7f33b3fd8b [agent-pipeline] pipe-20260318044621-56k5 round-7 2026-03-18 14:24:48 +09:00
DDD1542 0f15644651 [agent-pipeline] rollback to 577e9c12 2026-03-18 14:18:02 +09:00
DDD1542 27efe672b9 [agent-pipeline] pipe-20260318044621-56k5 round-6 2026-03-18 14:18:02 +09:00
DDD1542 577e9c12d1 [agent-pipeline] pipe-20260318044621-56k5 round-5 2026-03-18 14:07:14 +09:00
DDD1542 ab477abf8b [agent-pipeline] rollback to 609460cd 2026-03-18 14:03:34 +09:00
DDD1542 609460cd8d [agent-pipeline] pipe-20260318044621-56k5 round-3 2026-03-18 14:00:44 +09:00
SeongHyun Kim fba5390f5a fix: MES 다중작업자 분할접수 4대 연쇄 버그 근본 해결
분할 카드 접수량 오표시(800), 모달 접수량 0, 실적등록 미반영,
접수취소 실패의 근본 원인을 분석하고 4건의 수정을 적용한다.
근본 원인: acceptProcess에서 마스터를 in_progress로 변경 ->
프론트 isCurrent가 코팅(acceptable)을 잡음 -> 분할 카드 미생성
-> 마스터ID로 API 호출하여 모든 후속 동작이 실패하는 연쇄 구조.
[Fix A] acceptProcess: 마스터 상태를 in_progress로 변경하는 로직 제거
  - 마스터는 항상 acceptable 유지, completed로만 전환
[Fix B] buildProcessSteps: isCurrent 결정 시 활성 분할 행 우선
  - in_progress 등 비완료 분할이 있는 공정을 최우선 선택
  - 분할 카드(__splitProcessId)가 정상 생성되도록 보장
[Fix C] applySubFilterAndDuplicate: 분할 카드 데이터 보호
  - __splitProcessId가 있는 카드의 __process_* 필드를
    마스터 SUM 집계값으로 덮어쓰지 않음
[Fix D] saveResult: 마스터 행 직접 실적등록 차단
  - 분할 행이 존재하는 마스터에 실적 등록 시 400 에러 반환
2026-03-18 13:57:14 +09:00
DDD1542 360a9ab1aa [agent-pipeline] rollback to 8e4791c5 2026-03-18 13:56:03 +09:00
DDD1542 351e57dd31 [agent-pipeline] pipe-20260318044621-56k5 round-2 2026-03-18 13:56:03 +09:00
DDD1542 8e4791c57a [agent-pipeline] pipe-20260318044621-56k5 round-1 2026-03-18 13:51:25 +09:00
DDD1542 5949ea22b5 Enhance Sonner Toast styles for improved user experience. Implement various toast types (success, error, warning, info) with distinct visual cues. Update layout to utilize the new toast component from the UI library, ensuring consistent styling across the application. 2026-03-18 12:13:40 +09:00
kjs 579461a6cb Merge branch 'gbpark-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-18 10:31:04 +09:00
kjs fb57bd4eaf feat: enhance ButtonPrimaryComponent for source tracking
- Updated ButtonPrimaryComponent to automatically inject source_table and source_id for better data tracking.
- Implemented logic to conditionally include source tracking information based on the presence of sourceTableName and row.id.
- This enhancement aims to improve data integrity and traceability during data mapping processes, facilitating better integration of source information in the application.
2026-03-18 10:23:08 +09:00
DDD1542 8630d82a69 Refactor RealtimePreviewDynamic and ResponsiveGridRenderer components to improve layout handling and responsiveness. Update SingleTableWithSticky and TableListComponent for better checkbox handling and styling consistency. Enhance overall user experience with refined component structures and styles. 2026-03-18 10:16:59 +09:00
DDD1542 b2a569f908 123 2026-03-18 00:05:40 +09:00
kjs a6aa57fece feat: enhance data mapping and entity join handling in components
- Updated ButtonPrimaryComponent to utilize entity join metadata for improved data mapping.
- Introduced getEntityJoinColumns method in TableListComponent to retrieve entity join column metadata.
- Enhanced applyMappingRules function to support optional entity join columns, allowing for more flexible data resolution.
- Added utility functions to build join alias maps and resolve values from entity joins, improving data handling capabilities.

These enhancements aim to provide a more robust and dynamic data mapping experience, facilitating better integration of entity relationships in the application.
2026-03-17 23:27:39 +09:00
DDD1542 c63eaf8434 123123 2026-03-17 22:49:42 +09:00
kjs 2772c2296c feat: enhance TableManagementPage and ExcelUploadModal for improved functionality
- Added handling for unique and nullable column toggles in TableManagementPage, allowing for better column configuration.
- Updated ExcelUploadModal to include depth and ancestors in valid options for category values, enhancing the categorization process.
- Improved user feedback in ExcelUploadModal by clarifying success messages and ensuring proper handling of duplicate actions.
- Refactored category value flattening logic to maintain depth and ancestor information, improving data structure for better usability.

These enhancements aim to provide users with a more flexible and intuitive experience when managing table configurations and uploading Excel data.
2026-03-17 22:37:13 +09:00
DDD1542 ba8a2fec2b Refactor RealtimePreviewDynamic and ResponsiveGridRenderer components to enhance rendering logic using CSS scale for improved layout consistency. Update SplitPanelLayoutComponent to handle drag events more effectively by passing the event object. This ensures better user interaction during column dragging. 2026-03-17 22:24:47 +09:00
DDD1542 f36638e53e 22 2026-03-17 22:13:15 +09:00
DDD1542 12d4d2a8b1 11 2026-03-17 22:06:13 +09:00
DDD1542 13b2ebaf1f Refactor ColumnDetailPanel and AppLayout for improved loading state handling and UI consistency. Enhance TabBar and TableListComponent styles for better user experience. Update V2SplitPanelLayoutConfigPanel to manage button visibility based on configuration. Introduce filter chips in TableListComponent for better filter management. 2026-03-17 22:02:52 +09:00
DDD1542 b293d184bb 11 2026-03-17 21:50:37 +09:00
kjs be0e63e577 Merge branch 'jskim-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-17 21:41:46 +09:00
kjs 7e34b7bf35 Merge branch 'mhkim-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-17 21:41:44 +09:00
SeongHyun Kim 20fbe85c74 feat: BLOCK MES-REWORK - mes-process-card 전용 카드 + batch_done 워크플로우 + 실적 관리 강화
MES 카드를 CSS Grid 다중 셀 방식에서 Flexbox 기반 단일 전용 카드(mes-process-card)로
전환하고, batch_done 상태를 도입하여 부분 확정 후 추가접수 워크플로우를 구현한다.
[mes-process-card 전용 카드]
- CardCellType "mes-process-card" 신규: 상태별 좌측 보더+배경, 공정 흐름 스트립, 클릭 모달
- MesAcceptableMetrics / MesInProgressMetrics / MesCompletedMetrics 서브 컴포넌트
- 워크플로우 기반 activeBtn 결정 로직 (상태+잔여량 조합으로 버튼 1개만 표시)
- 하드코딩 취소 버튼 제거, DB 설정 "접수취소" 라벨 인터셉트로 통합
[batch_done 워크플로우]
- confirmResult API: 부분 확정 시 status = 'batch_done' (진행 탭 숨김 + 접수가능 탭 유지)
- acceptProcess API: batch_done -> in_progress 복귀 (추가접수)
- 카드 복제 로직에 batch_done 포함 (잔여량 있으면 접수가능 탭에 클론 카드)
- status 매핑에 batch_done 추가 (semantic: active)
[실적 관리 강화]
- PopWorkDetailComponent: 실적 입력 UI 전면 구현 (차수별 등록, 누적 실적, 이력 표시)
- 모든 실적 저장 시 process_completed 이벤트 발행 (카드 리스트 즉시 갱신)
- 전량접수+전량생산 시 자동 완료 (status=completed, result_status=confirmed)
[버그 수정]
- 서브 필터 변경 시 __process_* 필드 미갱신 -> processFields 재주입
- cancelAccept SQL inconsistent types -> boolean 파라미터 분리
- 접수취소 라벨 매핑 누락 -> taskPreset 조건 확장
2026-03-17 21:36:43 +09:00
kjs 60f364f433 Merge remote-tracking branch 'upstream/main' 2026-03-17 21:09:47 +09:00
kjs 228bdeb264 Merge pull request 'jskim-node' (#420) from jskim-node into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/420
2026-03-17 21:09:09 +09:00
kjs c06b4ff9eb Merge branch 'main' into jskim-node 2026-03-17 21:08:58 +09:00
kjs 2cf5c8de32 Merge branch 'mhkim-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-17 21:08:07 +09:00
kjs a3e6afa93e feat: enhance V2ButtonConfigPanel to support dynamic column mapping
- Implemented logic to load reference table columns based on selected target table, improving the configurability of button mappings.
- Added error handling for API calls to ensure robustness when fetching column data.
- Updated dependencies in the useEffect hook to ensure proper reactivity when available tables change.

These enhancements aim to provide users with a more flexible and dynamic configuration experience in the V2ButtonConfigPanel, allowing for better management of button mappings based on table relationships.
2026-03-17 21:05:59 +09:00
DDD1542 cfd7ee9fce [agent-pipeline] pipe-20260317084014-ydap round-3 2026-03-17 18:25:36 +09:00
kjs 5e6261f51a feat: enhance V2 process work standard configuration panel
- Introduced a new TableCombobox component for selecting tables, improving user experience by allowing table searches and selections.
- Added a ColumnCombobox component to facilitate column selection based on the chosen table, enhancing the configurability of the process work standard settings.
- Updated the V2ProcessWorkStandardConfigPanel to utilize the new combobox components, streamlining the configuration process for item tables and columns.
- Removed the deprecated mcp.json file and updated .gitignore to reflect recent changes.

These enhancements aim to improve the usability and flexibility of the configuration panel, making it easier for users to manage their process work standards.
2026-03-17 18:19:08 +09:00