Commit Graph

2849 Commits

Author SHA1 Message Date
kjs 6998195ca8 feat: Update production monitoring logic to enhance progress status handling
- Added `progress_status` field to the `WorkInstruction` interface to track the state of work instructions (대기 / 진행중 / 완료).
- Enhanced the `computeProgress` function to prioritize `progress_status` over existing logic, improving accuracy in determining the current status of work instructions.
- Updated grouping logic in the production monitoring page to reflect the highest status from master and split rows, ensuring better representation of process steps.
- Refined UI elements to improve clarity and user experience in monitoring production progress across multiple companies.

These changes aim to provide a more robust and user-friendly interface for monitoring production operations.
2026-04-09 15:29:11 +09:00
kjs 518990171e feat: Enhance monitoring pages with dynamic settings and themes
- Integrated monitoring settings and theme management into the Equipment, Production, and Quality monitoring pages.
- Updated auto-refresh functionality to utilize user-defined settings for refresh intervals.
- Improved UI elements with dynamic theming for better visual consistency across COMPANY_10, COMPANY_16, and COMPANY_29.
- Added settings button to access monitoring configuration, enhancing user experience in managing monitoring preferences.

These changes aim to provide a more customizable and user-friendly interface for monitoring operations across multiple companies.
2026-04-09 15:12:36 +09:00
kjs 9200c58d2e feat: Add hardcoded inbound-outbound management page for multiple companies
- Implemented a new hardcoded page for managing inbound and outbound logistics, based on the inventory_history table.
- The page includes features for grouping, searching, and exporting data to Excel, enhancing user experience in managing logistics operations.
- Integrated dynamic search filters and improved data loading mechanisms to ensure efficient retrieval and display of logistics data.

These changes aim to provide a comprehensive interface for monitoring and managing inbound and outbound logistics across COMPANY_10, COMPANY_16, COMPANY_29, COMPANY_30, COMPANY_7, COMPANY_8, and COMPANY_9.
2026-04-09 14:21:26 +09:00
kjs b57a56e097 fix: Enhance grouping logic in production result pages for multiple companies
- Updated the grouping logic in the ProductionResultPage component to include category resolution for 'work_team' and 'status' fields.
- This change ensures that the grouping functionality correctly categorizes work instructions based on the specified criteria, improving data organization and clarity across COMPANY_10, COMPANY_16, COMPANY_29, COMPANY_30, COMPANY_7, COMPANY_8, and COMPANY_9.

These enhancements aim to provide a more accurate representation of production results and facilitate better management of work instructions.
2026-04-09 13:56:06 +09:00
kjs a180c3f209 Merge branch 'jskim-node' of https://g.wace.me/jskim/vexplor_dev into jskim-node 2026-04-09 13:51:08 +09:00
kjs 735cba2936 feat: Add production result management page for COMPANY_10, COMPANY_16, COMPANY_29, COMPANY_30, COMPANY_7, and COMPANY_8
- Implemented a new hardcoded page for managing production results, featuring a work instruction list on the left and detailed process results on the right.
- Included summary cards displaying total quantities, good and defective items, and achievement rates.
- Added tabs for viewing performance details and defect records, along with a detailed modal for further insights.
- Integrated dynamic search filters to enhance user experience in navigating work instructions.

These changes aim to provide a comprehensive interface for monitoring and managing production performance across multiple companies.
2026-04-09 13:51:07 +09:00
DDD1542 d1272bcdf0 123321 2026-04-09 12:42:56 +09:00
DDD1542 c79dcf6b6d Merge branch 'jskim-node' of https://g.wace.me/jskim/vexplor_dev into jskim-node 2026-04-09 12:35:36 +09:00
DDD1542 b982cb8db2 123213213 2026-04-09 12:35:34 +09:00
kjs a9d2df48bf fix: Improve numbering rule handling and item routing functionality
- Added temporary debug response in `numberingRuleController` for better troubleshooting.
- Refactored SQL queries in `NumberingRuleService` to enhance parameter handling and improve clarity.
- Updated `ItemInfoPage` to correctly handle manual input values for user-generated codes.
- Implemented sorting logic in `ItemRoutingTab` to prioritize default routing versions and added functionality to set a version as default.

These changes aim to enhance the reliability and user experience in managing numbering rules and item routing processes.
2026-04-09 12:18:26 +09:00
kjs 51eddc6d84 refactor: Enhance numbering rule handling and BOM management
- Updated the `NumberingRuleService` to support manual values in the computation of non-sequence values.
- Improved the `ItemInfoPage` to parse preview codes into parts, allowing for better handling of manual inputs and dynamic code generation.
- Refactored BOM management to streamline the retrieval of category options for both division and unit, enhancing data consistency.
- Added utility functions to resolve unit labels from category options, improving the clarity of displayed data.

These changes aim to improve the functionality and user experience in managing item information and BOM processes.
2026-04-09 11:52:40 +09:00
kjs 6ef30f4e45 refactor: Update item number handling and improve sales order filtering
- Changed item number field type from 'text' to 'numbering' in item info forms for better clarity.
- Enhanced the logic for loading numbering previews, including handling manual input values and category changes.
- Updated sales order page to filter items based on customer pricing rules, ensuring only relevant items are displayed.
- Improved date handling in sales order page to ensure consistent formatting.

These changes aim to enhance the user experience and data integrity across the application.
2026-04-09 11:28:55 +09:00
DDD1542 4e05ee5e21 11 2026-04-09 11:14:29 +09:00
DDD1542 b22feca8b5 Merge branch 'jskim-node' of origin into jskim-node
Resolve conflict in AppLayout.tsx - keep both sidebar collapse and hasPopMenus state

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 11:14:00 +09:00
DDD1542 9ed293e572 11 2026-04-09 11:08:49 +09:00
kjs 0345926698 fix: Correct SQL parameter indexing and improve date handling in various components
- Updated SQL query in `productionPlanService.ts` to fix parameter indexing for company code.
- Refactored date handling in `department/page.tsx`, `customer/page.tsx`, and `sales-item/page.tsx` to ensure consistent date formatting.
- Enhanced equipment list state management in `production/plan-management/page.tsx` to use more descriptive property names.

These changes aim to improve the reliability of SQL operations and ensure consistent date handling across the application.
2026-04-08 17:45:28 +09:00
kjs 2a23cadb41 feat: Enhance user management and reporting features
- Added `end_date` field to user management for better tracking of user status.
- Updated SQL queries in `adminController` to include `end_date` during user save operations.
- Improved purchase report data handling by refining the logic for received quantities.
- Enhanced file preview functionality to streamline file path handling.
- Updated outbound and receiving controllers to ensure accurate updates to shipment and purchase order details.

These changes aim to improve the overall functionality and user experience in managing user data and reporting processes.
2026-04-08 15:33:09 +09:00
jskim ff79411c35 Merge branch 'main' into jskim-node 2026-04-08 01:42:08 +00:00
kjs d90a3a9aff feat: Update smart factory log scheduling and enhance item info page
- Modified the upsertSchedule function to regenerate today's plan immediately after schedule changes, ensuring that already sent users are automatically excluded.
- Increased the data size limit for item info page requests from 500 to 99999 for better data handling across multiple companies.
- Added new pages for design request management, task management, and equipment info, providing comprehensive tools for managing design and equipment processes.

These updates aim to improve the efficiency and usability of the smart factory log and item management systems, enhancing user experience and operational effectiveness.
2026-04-08 10:41:32 +09:00
SeongHyun Kim add2e34291 Merge branch 'main' of https://g.wace.me/jskim/vexplor_dev 2026-04-08 10:19:55 +09:00
SeongHyun Kim 71abfebb51 fix: POP 입고 확정 시 inbound_status를 '입고완료'로 전달
기존: inbound_status 미전달 → 백엔드 기본값 '대기'
수정: '입고완료' 명시적 전달
2026-04-08 10:04:44 +09:00
SeongHyun Kim 126f11354e fix: POP 출고 확정 시 outbound_status를 '출고완료'로 변경
기존: '대기' 하드코딩 → 출고 확정해도 상태 미갱신
수정: '출고완료'로 → 출고 확정 시 정상 상태 반영
2026-04-08 09:57:57 +09:00
kjs f9f5a7e7e5 feat: Add inspection management page for COMPANY_16 and COMPANY_29
- Introduced a new inspection management page for both COMPANY_16 and COMPANY_29, featuring a comprehensive table for managing inspection standards.
- Implemented dynamic category loading and user options for enhanced functionality.
- Integrated various UI components such as buttons, inputs, and dialogs to facilitate user interactions.
- Established state management for inspections, defects, and equipment, ensuring a smooth user experience.

These additions aim to improve the quality management processes within the application, providing users with the necessary tools to manage inspections effectively.
2026-04-08 09:46:34 +09:00
SeongHyun Kim a7b914407c feat: 채번규칙 필드를 입고/출고 장바구니 화면에서만 표시
- SettingField에 showOnlyForScreens 옵션 추가
- 입고번호 채번: inbound-cart에서만 표시
- 출고번호 채번: outbound-cart에서만 표시
- 구매입고/판매출고/유형선택 등 다른 화면에서는 채번 필드 숨김

이로써 채번 설정의 컨텍스트가 명확해짐
2026-04-07 18:46:18 +09:00
SeongHyun Kim dad8df7b10 fix: POP 화면설정 iframe 매칭 — 정확/길이 긴 url 우선
문제: /pop/outbound/cart 진입 시 startsWith 매칭으로
      /pop/outbound(출고유형선택)가 먼저 잡혀 selectedScreen이 잘못 설정됨

해결: 정확 일치 1순위 + url 길이 긴 항목 startsWith 우선
2026-04-07 18:23:36 +09:00
SeongHyun Kim 444f0f95f3 feat: POP 화면설정에 출고 장바구니 항목 추가
- screen_definitions에 7010 (POP_OUTBOUND_CART) 신규 등록
- popSettingsMng SCREEN_GROUPS의 outbound에 outbound-cart 추가
- OutboundCartPage 채번규칙 조회 screen_id를 5 → 7010으로 변경

이로써 POP 설정 페이지에서 출고 장바구니 화면도 미리보기 + 채번규칙 설정 가능
2026-04-07 17:55:40 +09:00
kjs fc61a66287 feat: Enhance smart factory schedule management
- Added dailyCount parameter to the upsertSchedule function, allowing for the configuration of daily access limits for users.
- Updated the smartFactoryLog interface to include daily_count, ensuring proper data handling for schedule management.
- Removed the runScheduleNowHandler function from the smartFactoryLogController and adminRoutes, streamlining the API for schedule management.
- Modified the frontend SmartFactoryLogPage to support dailyCount selection, improving user experience in managing schedules.

These changes aim to enhance the flexibility and usability of the smart factory schedule management system, allowing for better control over user access and scheduling operations.
2026-04-07 17:29:03 +09:00
SeongHyun Kim d795c74dbd feat: POP 입고/출고 채번규칙을 화면설정과 연동
백엔드:
- receiving/generate-number: ?ruleId 쿼리 받아 numberingRuleService.allocateCode 사용
- outbound/generate-number: 동일
- ruleId 없거나 실패 시 기존 하드코딩 채번으로 폴백

프론트:
- InboundCartPage: 확정 시 화면설정의 popConfig.inbound.numberingRuleId 읽어 ruleId 전달
- OutboundCartPage: 확정 시 화면설정의 popConfig.outbound.numberingRuleId 읽어 ruleId 전달

POP 화면설정에서 채번규칙 선택 → 입고/출고 확정 시 자동 적용
2026-04-07 17:11:39 +09:00
SeongHyun Kim 1abc6645fb fix: 채번규칙 셀렉트 — camelCase 응답 구조 반영 2026-04-07 17:01:11 +09:00
SeongHyun Kim 31e225f6d3 feat: POP 화면설정 채번규칙 셀렉트 박스 구현
- 새 type "numbering-rule" 추가
- NumberingRuleSelect 컴포넌트: 회사별 채번규칙 목록 자동 로드
- 입고/출고 설정에서 inbound/outbound 키워드로 필터링
- 등록된 채번규칙이 없으면 안내 메시지 표시
2026-04-07 16:59:25 +09:00
SeongHyun Kim 2f675660b4 feat: POP 화면설정 — 채번규칙 필드 추가 + 미구현 항목 표기
- 입고/출고 설정에 채번규칙(numberingRuleId) 텍스트 필드 추가
- 하드코딩 POP에 미연동된 설정 항목에 (미구현) 라벨 추가
- 구현 완료: 배너(ON/OFF+텍스트), 자재투입, 그룹별사진
- 미구현: 바코드, 검사필수, 사진첨부, 포장, PLC, 날짜필터 등
2026-04-07 16:50:17 +09:00
kjs 1b7842c305 feat: Implement smart factory log management features
- Added new API endpoints for retrieving company-specific user lists and sending immediate logs for selected users.
- Enhanced the smartFactoryLogController with functions to handle user retrieval and immediate log sending, improving operational efficiency.
- Updated adminRoutes to include routes for the new functionalities, ensuring proper access control for super admins.
- Refactored the sendSmartFactoryLog function to improve logging and error handling, providing better insights into the log transmission process.

These changes aim to enhance the smart factory log management capabilities, facilitating better user interaction and operational tracking.
2026-04-07 16:45:52 +09:00
SeongHyun Kim 73199876fd feat: POP 배너를 화면설정에서 관리 가능하도록 연동
PopShell에서 하드코딩 배너 → popConfig.bannerEnabled/bannerText 읽기
- 설정에서 배너 OFF → 배너 숨김
- 설정에서 텍스트 입력 → 해당 텍스트 표시
- 설정 없으면 기존 기본 문구 유지 (폴백)
2026-04-07 16:30:53 +09:00
kjs 57b64653c0 merge: resolve conflicts accepting incoming changes
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 14:44:17 +09:00
kjs e8bd4e8136 feat: Add quote management pages for multiple companies
- Introduced new quote management pages for COMPANY_7, COMPANY_8, COMPANY_10, COMPANY_16.
- Implemented functionality for creating, editing, deleting, and viewing quotes.
- Integrated dynamic search filters and data grid for displaying quotes.
- Enhanced user experience with modals for item and customer searches, as well as report generation.

These changes aim to provide comprehensive quote management capabilities tailored for different companies, improving operational efficiency and user interaction.
2026-04-07 14:42:12 +09:00
kjs 69544e16e2 Merge branch 'jskim-node' of https://g.wace.me/jskim/vexplor_dev into jskim-node 2026-04-07 14:28:06 +09:00
kjs 8e63c9b481 Merge branch 'jskim-node' of https://g.wace.me/jskim/vexplor_dev into jskim-node 2026-04-07 14:21:45 +09:00
DDD1542 b54a23d18f Merge branch 'jskim-node' of https://g.wace.me/jskim/vexplor_dev into jskim-node 2026-04-07 14:21:30 +09:00
kjs c3e973bb1a feat: Implement smart factory schedule management functionality
- Added new API endpoints for managing smart factory schedules, including retrieval, creation, updating, and deletion of schedules.
- Integrated schedule management into the smart factory log controller, enhancing the overall functionality.
- Implemented a scheduler initialization process to automate daily plan generation and scheduled sends.
- Developed a frontend page for monitoring equipment, production, and quality, with real-time data fetching and auto-refresh capabilities.

These changes aim to provide comprehensive scheduling capabilities for smart factory operations, improving efficiency and operational visibility for users.
2026-04-07 14:16:26 +09:00
SeongHyun Kim 2fee120007 feat: 하드코딩 POP - 체크리스트 토글 + 자재투입 키패드 모달
ChecklistRow:
- detail_type='checklist'/'procedure'/'equip_inspection' → 토글 (확인/미확인)
- detail_type='inspection'/'equip_condition'/'production_result' → 숫자 입력
- judgment_criteria(CAT_JC_01/03) 우선 매핑

MaterialInputSection:
- input → MaterialQtyInputRow (큰 터치 버튼) + MaterialQtyKeypad 모달
- 소수점 지원, 기준값 ±20% 범위 표시
- 범위 외 입력 시 주황색 경고 (차단 아님)
- 기준값 빠른 입력 버튼
2026-04-07 12:39:55 +09:00
SeongHyun Kim 4b62817bf5 revert: inspection 관리 페이지 제거 (의존성 부족)
jskim-node에서 가져온 inspection page.tsx가 EDataTable 등 main에 없는
컴포넌트에 의존하여 화면 크래시 발생. 일단 제거하여 안정화.

POP UI judgment_criteria 매핑은 detail_type 폴백으로 동작하므로
판단기준 마스터 등록 화면 없이도 정상 작동함.

inspection 마스터 관리는 추후 EDataTable 등 의존성 함께 가져온 후 재도입.
2026-04-07 12:18:17 +09:00
SeongHyun Kim b497db9987 chore: Playwright 의존성 제거 + jskim-node에서 inspection 관리 페이지 cherry-pick
- playwright, @playwright/test 제거 (cmux browser만 사용)
- inspection page.tsx: 판단기준(judgment_criteria) Select UI 포함 버전으로 업데이트
2026-04-07 12:10:56 +09:00
SeongHyun Kim 450247026c feat: POP 작업상세 체크리스트 UI를 judgment_criteria 기반으로 매핑
- 백엔드: /api/pop/production/checklist-items/:processId 신규 추가
  process_work_result ⟕ inspection_standard(judgment_criteria) LEFT JOIN으로
  한 번에 반환 (inspection_code 미설정 시 null로 안전)

- 프론트: resolveInputType + normalizeByJudgmentCriteria + normalizeByDetailType
  1순위: judgment_criteria (CAT_JC_01~04) → inspect/numeric_range/ox/select/text
  2순위: detail_type 폴백
    - checklist/equip_inspection → check(토글)
    - inspection/equip_condition/production_result → inspect(숫자 키패드)
    - lookup → input(텍스트)
    - material_input → material(BOM 자재)
  기존 canonical 값은 건드리지 않아 회귀 없음

- fetchData는 전용 API 사용 + 실패 시 기존 dataApi.getTableData로 폴백
2026-04-07 12:06:01 +09:00
kjs 9aa8ca136b feat: Add monitoring pages for equipment, production, and quality
- Introduced three new pages for monitoring: Equipment Monitoring, Production Monitoring, and Quality Monitoring.
- Implemented real-time data fetching and auto-refresh functionality for each monitoring page.
- Enhanced user experience with summary statistics and filtering options for work instructions and inspection data.
- Integrated various UI components for displaying equipment status, production progress, and quality inspection results.

These changes aim to provide comprehensive monitoring capabilities for equipment, production processes, and quality inspections, enhancing operational visibility for users.
2026-04-07 12:02:10 +09:00
DDD1542 77d5b52265 11 2026-04-07 11:52:13 +09:00
SeongHyun Kim 9361b2484a feat: POP 작업상세 체크리스트 터치 UX 개선
- 숫자 키패드 모달 추가 (NumericKeypadModal) — 64x64px 버튼
- input_type별 분기 렌더링:
  * checkbox: 큰 터치 토글 버튼 (확인/미확인) 56px+
  * number: 터치 시 숫자 키패드 모달 (기준치 ±범위 표시)
  * select: 큰 선택 버튼 56px+
  * text: 입력칸 높이 56px로 키움
- MaterialQtyInput 컴포넌트: 자재 투입 수량도 키패드 모달 사용
- 모든 터치 영역 ISA-101 기준 (56px+) 적용
2026-04-07 11:25:01 +09:00
SeongHyun Kim 495a5f034b feat: POP 작업상세 자재투입(material-input) 섹션 UI 구현
- BOM 기반 자재 목록 표시 + 소요량 자동 계산
- 작업자 실제 투입량 입력 (참고 모드 — 유연 입력)
- 기준량 ±20% 범위 검증 + 경고 표시 (차단 아님)
- 투입 이력 테이블 표시
- ISA-101 터치 기준 (입력 56px+, 버튼 56px+)
2026-04-07 10:57:56 +09:00
SeongHyun Kim 21e89922eb feat: POP 회사별 자동 세팅 — 메뉴 활성화 시 레이아웃 자동 생성
- 로그인 시 POP 메뉴 발견 → 해당 회사용 POP 레이아웃 8개 자동 복제
- 템플릿: 공통(*) 우선, COMPANY_7 폴백
- 회사명 자동 치환 (탑씰 → 해당 회사명)
- screen_definitions 공통(*) 화면은 모든 회사 접근 허용
- 프로필 POP 모드 메뉴: POP 메뉴 있는 회사만 표시
- getLayoutPop 개별 자동 복제 (2중 안전망)
2026-04-07 10:46:54 +09:00
kjs 822f9ac35a feat: Implement smart factory log functionality
- Added a new controller for managing smart factory logs, including retrieval and statistics endpoints.
- Integrated smart factory log migration to set up the necessary database structure.
- Enhanced the authentication controller to include user name in log submissions.
- Developed a frontend page for displaying and filtering smart factory logs, accessible only to super admins.
- Implemented API calls for fetching logs and statistics, improving data visibility and management.

These changes aim to provide comprehensive logging capabilities for smart factory activities, enhancing monitoring and analysis for administrators.
2026-04-07 10:35:16 +09:00
kjs c48dd95045 feat: Enhance EDataTable with group collapsing functionality
- Added support for collapsing and expanding grouped rows in the EDataTable component.
- Implemented a toggle mechanism for group headers, allowing users to hide or show group details.
- Updated the data processing logic to filter out collapsed group rows, improving data visibility and organization.

These changes aim to enhance the user experience by providing a more structured view of grouped data within the table.
2026-04-07 10:16:25 +09:00