Commit Graph

2509 Commits

Author SHA1 Message Date
kmh
238a7d1db4 feat: Enhance V2RepeaterConfigPanel with entity join column management
- Updated the toggleEntityJoinColumn function to include an optional columnType parameter for better flexibility in handling join columns.
- Improved the logic for managing entity joins and columns, ensuring that columns are correctly added or removed based on user interactions.
- Introduced a new section in the UI to display entity join columns in a read-only format, providing users with clear visibility of the join configurations.
- Added loading states and messages to enhance user experience during data retrieval for entity joins.

These changes aim to improve the functionality and usability of the V2RepeaterConfigPanel in managing entity relationships.
2026-03-11 23:38:42 +09:00
kjs
7269867d91 revert: 파이프라인 커밋 롤백 (직접 구현으로 전환)
- 1b2d42ff: packagingController.ts, packagingRoutes.ts 롤백
- 4f603bd4: pipeline rules 강화, AdminPageRenderer 롤백

Made-with: Cursor
2026-03-11 23:11:07 +09:00
DDD1542
6f311148a5 [agent-pipeline] pipe-20260311130333-zqic round-3 2026-03-11 22:26:52 +09:00
DDD1542
d2c8f5f8f5 [agent-pipeline] pipe-20260311130333-zqic round-2 2026-03-11 22:20:59 +09:00
DDD1542
ae852ed4ad [agent-pipeline] pipe-20260311130333-zqic round-1 2026-03-11 22:13:58 +09:00
kjs
4f603bd41e docs: update pipeline rules for user menu implementation
- Added critical guidelines prohibiting the direct creation of user menu screens in React (.tsx) files, emphasizing that user menus must be implemented through database registration methods (screen_definitions, screen_layouts_v2, menu_info).
- Clarified that backend agents should not request or suggest the creation of frontend pages for user menus.
- Reinforced the importance of adhering to the established rendering system to prevent hardcoding UI components.

Made-with: Cursor
2026-03-11 22:06:22 +09:00
DDD1542
1d9ed6b36b [agent-pipeline] pipe-20260311124806-lfrk round-3 2026-03-11 21:58:53 +09:00
DDD1542
f72649291c [agent-pipeline] pipe-20260311124806-lfrk round-2 2026-03-11 21:55:21 +09:00
DDD1542
1bbce43ec1 [agent-pipeline] pipe-20260311124806-lfrk round-1 2026-03-11 21:51:37 +09:00
DDD1542
24630dd60b [agent-pipeline] pipe-20260311122226-4dkx round-5 2026-03-11 21:44:12 +09:00
DDD1542
eaa893a01a [agent-pipeline] pipe-20260311122226-4dkx round-4 2026-03-11 21:40:33 +09:00
DDD1542
a36bcceef3 [agent-pipeline] pipe-20260311122226-4dkx round-3 2026-03-11 21:37:01 +09:00
DDD1542
b2d3c6c688 [agent-pipeline] pipe-20260311122226-4dkx round-2 2026-03-11 21:29:28 +09:00
DDD1542
49f7bb9937 [agent-pipeline] pipe-20260311122226-4dkx round-1 2026-03-11 21:25:37 +09:00
DDD1542
5f6f2203ae [agent-pipeline] pipe-20260311115150-4sye round-1 2026-03-11 20:54:38 +09:00
DDD1542
2da5cd9637 [agent-pipeline] pipe-20260311104251-xw7c round-2 2026-03-11 19:49:17 +09:00
DDD1542
6be07e5e88 [agent-pipeline] pipe-20260311104251-xw7c round-1 2026-03-11 19:46:44 +09:00
DDD1542
44c5dc87b4 [agent-pipeline] pipe-20260311102309-26hg round-2 2026-03-11 19:30:01 +09:00
DDD1542
175c19a79a [agent-pipeline] pipe-20260311102309-26hg round-1 2026-03-11 19:26:17 +09:00
kjs
41d58cbb62 feat: implement smart factory log transmission and enhance rack structure patterns
- Added a new utility function `sendSmartFactoryLog` to transmit user access logs to the smart factory logging service upon successful login, ensuring non-blocking behavior.
- Integrated the smart factory log transmission into the `AuthController` to log user access asynchronously.
- Introduced pattern utilities for generating location codes and names based on configurable patterns in the rack structure components, improving flexibility and maintainability.
- Enhanced the `RackStructureConfigPanel` to allow users to define custom patterns for location codes and names, with real-time previews and a list of available variables.

Made-with: Cursor
2026-03-11 18:34:58 +09:00
SeongHyun Kim
e1188027ed feat(pop): 다중 액션 체이닝 + 외부 테이블 선택 + 카드 클릭 모달 + 필터 전 비표시
버튼 규칙 하나에 여러 액션을 순차 실행하는 다중 액션 체이닝,
DB 직접 선택으로 외부 테이블에 값을 변경하는 기능,
카드 클릭 시 조건부 모달 열기, 필터 전 데이터 비표시 옵션을 추가한다.
[다중 액션 체이닝]
- types.ts: ActionButtonDef.clickActions 배열 추가 (하위호환 유지)
- PopCardListV2Config: 액션 목록 UI (추가/삭제/순서)
- cell-renderers: __allActions 배열로 config 전달
- PopCardListV2Component: actionsToRun 순차 실행, 실패 시 스킵
[외부 테이블 선택]
- ActionButtonClickAction.joinConfig (sourceColumn, targetColumn) 추가
- ImmediateActionEditor: "DB에서 직접 선택..." 옵션 + 조인키 설정 UI
- DbTableCombobox: 테이블명(영어)+설명(한글) 검색 가능
- Component: joinConfig 기반 lookupValue/lookupColumn 처리
[카드 클릭 모달]
- types.ts: V2CardClickAction에 "modal-open", V2CardClickModalConfig 추가
- PopCardListV2Config: 동작 탭에 모달 설정 (화면 ID, 조건, 제목)
- PopCardListV2Component: handleCardSelect 조건 체크 후 openPopModal
[필터 전 데이터 비표시]
- PopCardListV2Config.hideUntilFiltered Switch
- Component: externalFilters 없을 때 안내 메시지
[버그 수정]
- availableTableOptions: dataSource.table -> dataSource.tableName 수정
- popActionRoutes: INSERT 시 created_date/updated_date/writer 자동 추가,
  UPDATE 시 updated_date 자동 갱신
[액션 버튼 구조 개선]
- evaluateShowCondition: 버튼별 조건 평가 (visible/disabled/hidden)
- ActionButtonsEditor: 아코디언 UI + sessionStorage 상태 유지
- 1셀 1버튼 렌더링: 조건 맞는 버튼 1개만 표시
2026-03-11 18:20:02 +09:00
kjs
000484349b feat: enhance dynamic form service and interactive screen viewer
- Updated the `DynamicFormService` to allow retrieval of both 'component' and 'v2-button-primary' types in screen layouts, improving flexibility in component handling.
- Introduced a new variable to streamline button component identification, enhancing code readability and maintainability.
- Modified the `InteractiveScreenViewer` to pass the `screenInfo.id` when deleting form data, ensuring accurate context during deletion operations.

Made-with: Cursor
2026-03-11 18:06:40 +09:00
kjs
62a5ae5f4b feat: enhance category value retrieval with company code filtering
- Updated the `getCategoryValues` function to allow filtering based on a specified company code when requested by a super admin.
- Modified the service layer to ensure that super admins can retrieve common category values while preventing data mixing from different companies.
- Adjusted the frontend component to include the filter parameter in API requests, ensuring that the correct company-specific categories are displayed.

Made-with: Cursor
2026-03-11 17:53:41 +09:00
DDD1542
ff54e48ede [agent-pipeline] pipe-20260311080625-8a1t round-1 2026-03-11 17:15:15 +09:00
kjs
d890155354 feat: implement packaging routes and enhance table configuration UI
- Added a new `packagingRoutes.ts` file to manage packaging and loading information APIs, with authentication middleware applied.
- Enhanced the `TableListConfigPanel` and `ColumnsConfigPanel` components to include editable column locking functionality, allowing users to toggle editability with visual feedback.
- Improved user experience by providing clear indications of column editability status through lock/unlock icons.

Made-with: Cursor
2026-03-11 16:56:36 +09:00
DDD1542
615bd8e2bf [agent-pipeline] pipe-20260311071246-rhvz round-7 2026-03-11 16:49:44 +09:00
DDD1542
f3eca6b02c [agent-pipeline] pipe-20260311071246-rhvz round-6 2026-03-11 16:42:06 +09:00
SeongHyun Kim
cae1622ac2 fix(pop): pop-status-bar 디자이너 팔레트 및 타입 등록 누락 수정
pop-status-bar 컴포넌트가 디자이너 컴포넌트 목록에 표시되지 않던
문제를 수정한다. 타입 유니온, 팔레트, 라벨, 기본 그리드 크기 4곳에
등록을 추가한다.
- pop-layout.ts: PopComponentType에 "pop-status-bar" 추가,
  DEFAULT_COMPONENT_GRID_SIZE에 6칸x1행 기본 크기 추가
- ComponentPalette.tsx: PALETTE_ITEMS에 "상태 바" 항목 추가
- PopRenderer.tsx: COMPONENT_TYPE_LABELS에 "상태 바" 추가
- ComponentEditorPanel.tsx: COMPONENT_TYPE_LABELS에 "상태 바" 추가
2026-03-11 16:41:18 +09:00
DDD1542
ca001408f8 [agent-pipeline] pipe-20260311071246-rhvz round-5 2026-03-11 16:36:06 +09:00
SeongHyun Kim
c7b8acbac3 refactor(pop): status-chip을 pop-status-bar 독립 컴포넌트로 분리 + 카운트 순환 문제 수정
pop-search에 내장되어 있던 status-chip 기능을 pop-status-bar라는
독립 컴포넌트로 분리하여 재사용성과 설정 유연성을 높인다.
상태 칩 클릭 시 카운트가 왜곡되던 순환 의존 문제를 해결한다.
[pop-status-bar 신규 컴포넌트]
- types.ts: StatusBarConfig, StatusChipOption, hiddenMessage 등 타입 정의
- PopStatusBarComponent: all_rows 구독 + 카운트 집계 + filter_value 발행
  _source: "status-bar" 마커로 자신의 필터를 식별
  hideUntilSubFilter: 하위 필터 선택 전 칩 숨김 + 설정 가능 안내 문구
- PopStatusBarConfig: 설정 패널 (DB 자동 채우기, 고유값 클릭 추가,
  숨김 문구 설정, 하위 필터 가상 컬럼 안내)
- index.tsx: 레지스트리 등록, connectionMeta(filter_value/all_rows/set_value)
[카운트 순환 문제 수정]
- PopCardListV2Component: externalFilters에 _source 필드 저장
  all_rows 발행 시 status-bar 소스 필터를 제외한 rowsForStatusCount 계산
  상태 칩 클릭해도 전체 카운트가 유지됨
[pop-search에서 status-chip 제거]
- PopSearchComponent: StatusChipInput, allRows 구독, autoSubStatusColumn 제거
- PopSearchConfig: StatusChipDetailSettings 제거, 분리 안내 메시지로 대체
- index.tsx: receivable에서 all_rows 제거
- types.ts: StatusChipStyle, StatusChipConfig에 @deprecated 주석 추가
[설정 UX 개선]
- "전체 칩 자동 추가" → "전체 보기 칩 표시" + 설명 문구 추가
- hiddenMessage: 숨김 상태 안내 문구 설정 가능 (하드코딩 제거)
- useSubCount 활성 시 가상 컬럼 안내 경고 표시
2026-03-11 16:35:49 +09:00
DDD1542
506475e5cc [agent-pipeline] pipe-20260311071246-rhvz round-4 2026-03-11 16:31:52 +09:00
DDD1542
d1d5f651cc [agent-pipeline] pipe-20260311071246-rhvz round-3 2026-03-11 16:27:18 +09:00
DDD1542
d4f2a3cf04 [agent-pipeline] pipe-20260311071246-rhvz round-1 2026-03-11 16:17:32 +09:00
DDD1542
0eba11e047 [agent-pipeline] pipe-20260311064710-y8yf round-9 2026-03-11 16:04:46 +09:00
DDD1542
3f8e995c87 [agent-pipeline] pipe-20260311064710-y8yf round-8 2026-03-11 15:57:02 +09:00
kmh
09d16e6672 Merge branch 'ycshin-node' of http://39.117.244.52:3000/kjs/ERP-node into mhkim-node 2026-03-11 15:54:11 +09:00
65026f14e4 docs: Add documentation for category dropdown depth separation
- Introduced new documents detailing the implementation of visual separation for three-level category dropdowns.
- Updated the `flattenTree` function in both `V2Select.tsx` and `UnifiedSelect.tsx` to use Non-Breaking Space (`\u00A0`) for indentation, ensuring proper visual hierarchy.
- Included a checklist to track the implementation progress and verification of the changes.
- Documented the rationale behind the changes, including the issues with HTML whitespace collapsing and the decisions made to enhance user experience.

These updates aim to improve the clarity and usability of the category selection interface in the application.
2026-03-11 15:53:01 +09:00
DDD1542
040c746334 [agent-pipeline] pipe-20260311052455-y968 round-6 2026-03-11 15:10:14 +09:00
DDD1542
9125d04345 [agent-pipeline] pipe-20260311052455-y968 round-5 2026-03-11 14:54:47 +09:00
DDD1542
f071777131 [agent-pipeline] pipe-20260311052455-y968 round-4 2026-03-11 14:50:02 +09:00
DDD1542
834c52a2b2 [agent-pipeline] pipe-20260311052455-y968 round-3 2026-03-11 14:46:07 +09:00
634f0cae18 docs: Add documentation for category tree modal updates with continuous registration mode
- Introduced new documents detailing the modifications made to the category tree modal for continuous registration mode.
- Updated the functionality to allow the modal to close after saving or remain open based on user preference via a checkbox.
- Enhanced the user experience by aligning the modal behavior with existing patterns in the project.
- Included a checklist to track implementation progress and ensure thorough testing.

These changes aim to improve the usability and consistency of the category management feature in the application.
2026-03-11 14:44:34 +09:00
DDD1542
d358de60d6 [agent-pipeline] pipe-20260311052455-y968 round-2 2026-03-11 14:41:14 +09:00
DDD1542
b329b52036 [agent-pipeline] pipe-20260311052455-y968 round-1 2026-03-11 14:35:02 +09:00
kjs
fa97b361ed feat: add Excel data validation functionality
- Implemented a new API endpoint for validating Excel data before upload, ensuring that required fields are not null and that unique constraints are respected.
- Added frontend integration to handle validation results, displaying errors for missing required fields and duplicates within the Excel file and against existing database records.
- Enhanced user experience by providing immediate feedback on data validity during the upload process.

Made-with: Cursor
2026-03-11 14:16:50 +09:00
kmh
98c0945508 Resolve merge conflict in TableListComponent.tsx from ycshin-node
Made-with: Cursor
2026-03-11 14:09:15 +09:00
d9611f234e docs: Update pagination navigation documentation and remove obsolete components
- Deleted the outdated `PageGroupNav` component and its related documentation.
- Introduced a new document for the direct input navigation feature in pagination, detailing the rationale for the change and the new user experience.
- Updated the checklist to reflect the completion of the new pagination input feature and its implementation steps.

These changes enhance the clarity and usability of the pagination system in the project.
2026-03-11 14:05:38 +09:00
51e1abee2b Merge branch 'jskim-node' into ycshin-node
- 충돌 해결: TableListComponent.tsx
- 양쪽 import 유지 (useTabId + getAdaptiveLabelColor)
- buttonColor에 다크모드 대응 함수 적용

Made-with: Cursor
2026-03-11 12:49:03 +09:00
kmh
4d313008c1 Merge branch 'jskim-node' into mhkim-node
Made-with: Cursor
2026-03-11 12:48:22 +09:00
9c128cc52c docs: Add project conventions and guidelines for ERP/PLM project
- Introduced a comprehensive document outlining project conventions for the WACE ERP/PLM project.
- Included sections on project structure, backend practices, frontend practices, and specific implementation patterns.
- Established guidelines for file creation order, controller and service patterns, pagination handling, and caching strategies.
- Enhanced documentation to improve consistency and maintainability across the codebase.

These additions serve as a reference for developers to follow best practices and ensure uniformity in the project's development process.
2026-03-11 12:42:25 +09:00