Commit Graph

43 Commits

Author SHA1 Message Date
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
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
f558073ef8 [RAPID] feat: 메신저 기능 구현 (Socket.IO 실시간 채팅)
- DB: messenger_rooms/participants/messages/reactions/files 테이블 생성
- Backend: REST API 9개 엔드포인트 + Socket.IO 실시간 핸들러
- Frontend: Gmail 스타일 FAB + 모달, 채팅방 목록, 채팅 패널
- 기능: DM/그룹/채널, 파일 첨부, 이모지 리액션, 멘션, 스레드
- 알림: 토스트 on/off 토글, FAB 읽지 않은 배지

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

[RAPID-fix] 메신저 API snake_case→camelCase 변환 및 Socket.IO URL 수정

- useRooms/useMessages/useCompanyUsers 훅에서 DB 응답 camelCase 변환
- Socket.IO 기본 연결 URL 3001 → 8080 수정
- runMigration.ts 마이그레이션 파일 경로 수정 (../../ → ../../../)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

[RAPID-fix] 방 생성 API camelCase/snake_case 호환 처리

- createRoom 컨트롤러에서 participantIds/type/name (camelCase) fallback 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

[RAPID-fix] 메시지 전송 API 추가 (sendMessage 라우트/컨트롤러 누락)

- POST /api/messenger/rooms/:roomId/messages 라우트 등록
- MessengerController.sendMessage 메서드 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 12:20:40 +09:00
4c42cc7b53 feat: 사용자 메일 관리 IMAP 구현
- IMAP 계정 등록/수정/삭제/연결테스트
- SSE 스트리밍으로 메일 목록 로드 (폴더별 지원)
- 메일 상세 조회, 읽음 처리, 삭제(휴지통 이동), 폴더 이동
- 첨부파일 다운로드 (ReadableStream 진행바)
- SMTP 발송, 답장, 전달
- imapConnectionPool, mailCache 서비스
- encryptionService Node 22+ 호환 수정
- authMiddleware query token 지원 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 17:17:20 +09:00
kjs
5da134f016 feat: add web crawling management functionality
- Introduced a new crawling management feature allowing users to configure, execute, and log web crawls.
- Added CRUD operations for crawl configurations, including URL analysis and preview capabilities.
- Implemented a new service for handling crawling logic and scheduling tasks.
- Integrated cheerio for HTML parsing and axios for HTTP requests.
- Created a sample HTML page for testing crawling functionality.

This commit enhances the application's data collection capabilities from external websites.
2026-03-26 16:30:53 +09:00
kjs
afd936ff67 chore: remove unnecessary peer dependencies from package-lock.json files
- Cleaned up package-lock.json in both backend and frontend by removing redundant "peer" fields.
- This change helps streamline the dependency management and reduces potential confusion.

Made-with: Cursor
2026-03-11 12:32:34 +09:00
kmh
6d2cdc1782 :Qrge branch 'jskim-node' of http://39.117.244.52:3000/kjs/ERP-node into jskim-node 2026-03-10 16:16:52 +09:00
bfd97c9717 바코드 업데이트 및 AI LLm 적용용 2026-03-05 19:08:08 +09:00
kjs
fb02e5b389 feat: Enhance SplitPanelLayout with modal support for add and edit buttons
- Implemented modal configuration for add and edit buttons in the SplitPanelLayoutComponent, allowing for custom modal screens based on user interactions.
- Added settings for button visibility and modes (auto or modal) in the SplitPanelLayoutConfigPanel, improving flexibility in UI configuration.
- Enhanced data handling by storing selected left panel items in modalDataStore for use in modal screens, ensuring seamless data flow.
- Updated types to include new properties for add and edit button configurations, facilitating better type safety and clarity in component usage.
2026-02-12 14:54:14 +09:00
DDD1542
4294e6206b feat: Add express-async-errors for improved error handling
- Integrated express-async-errors to automatically handle errors in async route handlers, enhancing the overall error management in the application.
- Updated app.ts to include the express-async-errors import for global error handling.
- Removed redundant logging statements in admin and user menu retrieval functions to streamline the code and improve readability.
- Adjusted logging levels from info to debug for less critical logs, ensuring that important information is logged appropriately without cluttering the logs.
2026-02-12 11:42:52 +09:00
kmh
88ba2f62d2 feat: Docker 및 스크립트 개선
- Docker Compose 설정에서 프론트엔드 메모리 제한을 6G로 설정하고, 2G의 메모리 예약을 추가하여 성능을 향상시켰습니다.
- Node.js의 최대 메모리 크기를 4096MB로 설정하여 메모리 부족 문제를 방지합니다.
- Windows에서 모든 컨테이너 및 이미지를 정리하는 스크립트를 업데이트하여, 불필요한 리소스를 제거하고 빌드 프로세스를 최적화하였습니다.
- 백엔드 및 프론트엔드 빌드를 캐시 없이 완전 재빌드하도록 수정하여, 최신 변경 사항이 반영되도록 하였습니다.
2026-02-04 13:57:04 +09:00
kjs
a67b53038f v2-repeat-screen-modal 컴포넌트 제거 및 관련 파일 삭제: v2-repeat-screen-modal 컴포넌트와 관련된 모든 파일을 삭제하여 코드베이스를 정리하였습니다. 이로 인해 더 이상 사용되지 않는 컴포넌트가 제거되어 관리 효율성이 향상되었습니다. 2026-01-20 09:42:33 +09:00
kjs
18b5161398 Merge branch 'feature/v2-renewal' of http://39.117.244.52:3000/kjs/ERP-node into feat/multilang 2026-01-13 18:32:04 +09:00
DDD1542
905a9f62c3 feat: 프리뷰 모드에서 회사 코드 오버라이드 기능 추가
- 최고 관리자만 다른 회사 코드로 오버라이드 가능하도록 로직 개선
- entityJoinController 및 tableManagementController에서 회사 코드 오버라이드 처리 추가
- 관련 API 호출 시 오버라이드된 회사 코드 적용
- 프리뷰 모드 감지 및 UI 개선을 위한 코드 추가
2026-01-13 13:28:50 +09:00
leeheejin
222a00b8a9 그리드랑 노드에서 delete 가 where 입력했는데도 저장이 안되던 오류 해결 2026-01-09 11:51:35 +09:00
dohyeons
ea01309158 리포트 디자이너에 바코드/QR코드 컴포넌트 추가 2025-12-19 17:59:54 +09:00
dohyeons
2e122b0703 Word 변환 WYSIWYG 개선 - 위치/크기/줄바꿈/가로배치 지원 2025-12-17 16:11:52 +09:00
dohyeons
67e838dc03 package-lock 파일 재생성 2025-10-23 17:44:12 +09:00
leeheejin
479b0ba3ed ui 고치기 전 세이브 2025-10-22 16:06:04 +09:00
dohyeons
593983d6ee rest api 기능 구현 2025-10-15 10:02:32 +09:00
leeheejin
51dea84bc5 Merge branch 'lhj' 2025-10-13 15:19:59 +09:00
dohyeons
d1b2e6c010 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report 2025-10-13 15:08:43 +09:00
kjs
1274f58c3c rest api 액션노드 기능변경 2025-10-13 12:00:41 +09:00
leeheejin
b4c5be1f17 메일관리 콘솔로그 주석처리 세이브 2025-10-02 18:22:58 +09:00
dohyeons
a219878288 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report 2025-10-02 15:41:01 +09:00
leeheejin
2c0dca08b4 console.log 주석 처리 - 개발환경 정리
- menu, company, screenMng, i18n, tableMng 모듈 console 주석 처리
- 총 55개 파일 수정
- 빌드 에러 수정 완료
- 백엔드 서버 정상 작동 확인

관련 파일:
- frontend/components/admin/MenuManagement.tsx
- frontend/components/admin/MenuFormModal.tsx
- frontend/components/admin/ScreenAssignmentTab.tsx
- frontend/components/admin/CompanyTable.tsx
- frontend/components/admin/MultiLang.tsx
- frontend/app/(main)/admin/tableMng/page.tsx
- 기타 screen 관련 컴포넌트 49개 파일
2025-10-01 18:17:30 +09:00
dohyeons
771dc8cf56 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report 2025-10-01 15:36:56 +09:00
kjs
808a0244d5 fix: @types/uuid 패키지 추가
문제:
- uuid 모듈의 타입 정의 파일 없음
- TypeScript 컴파일 에러 발생

해결:
- npm install --save-dev @types/uuid
- @types/uuid@10.0.0 설치

결과:
-  TypeScript 컴파일 에러 해결
-  uuid 모듈 타입 안전성 확보
2025-10-01 15:08:37 +09:00
kjs
401bbf85dc Merge branch 'main' into feature/prisma-to-raw-query-phase1-complete 2025-10-01 15:07:07 +09:00
kjs
920cfbb3fd chore: Prisma 패키지 및 의존성 완전 제거
npm uninstall로 완전 제거:
-  @prisma/client 제거
-  prisma (devDependency) 제거
-  관련 32개 패키지 제거

node_modules 정리:
-  node_modules/@prisma 디렉토리 제거
-  node_modules/.prisma 디렉토리 제거
-  package-lock.json 업데이트

최종 검증 완료:
1. package.json prisma: 0개 
2. package-lock.json prisma: 0개 
3. node_modules Prisma 디렉토리: 0개 
4. prisma. 코드 호출: 0개 
5. PrismaClient import: 0개 
6. Prisma 타입 사용: 0개 
7. Prisma 에러 코드: 0개 
8. PostgreSQL 에러 코드: 9개 
9. TypeScript 컴파일: 에러 없음 

100% 완전 제거 완료! 🎉
2025-10-01 14:59:51 +09:00
716a9a3b31 Merge branch 'feature/dashboard-management' into main
대시보드 관리 시스템 통합
- 충돌 해결 완료
- 백엔드/프론트엔드 대시보드 기능 추가
2025-10-01 12:10:42 +09:00
5f63c24c42 feat: 대시보드 관리 시스템 구현
## 백엔드
- DashboardController: 대시보드 CRUD 및 쿼리 실행 API
- DashboardService: 비즈니스 로직 처리
- PostgreSQL 연동 및 데이터 관리

## 프론트엔드
- DashboardDesigner: 캔버스 기반 대시보드 디자이너
- QueryEditor: SQL 쿼리 편집 및 미리보기
- ChartRenderer: 다양한 차트 타입 지원 (Bar, Line, Area, Donut, Stacked, Combo)
- DashboardViewer: 실시간 데이터 반영 뷰어

## 개선사항
- 콘솔 로그 프로덕션 준비 (주석 처리)
- 차트 컴포넌트 확장 (6가지 타입)
- 실시간 쿼리 실행 및 데이터 바인딩
2025-10-01 12:06:24 +09:00
dohyeons
213f482a6f uuid install 2025-10-01 11:33:55 +09:00
kjs
824e5f4827 feat: Complete Phase 1.5 - AuthService Raw Query migration
Phase 1.5 완료: 인증 서비스 Raw Query 전환 및 테스트 완료

 AuthService 전환 완료 (5개 Prisma 호출 제거):
- loginPwdCheck(): Raw Query로 사용자 비밀번호 조회
- insertLoginAccessLog(): Raw Query로 로그인 로그 기록
- getUserInfo(): Raw Query로 사용자/권한/회사 정보 조회
  - authority_sub_user ↔ authority_master JOIN (master_objid ↔ objid)
  - 3개 쿼리로 분리 (사용자, 권한, 회사)
- processLogin(): 전체 로그인 플로우 통합
- processLogout(): 로그아웃 로그 기록

🧪 테스트 완료:
- 단위 테스트: 30개 테스트 모두 통과 
  - 로그인 검증 (6개)
  - 사용자 정보 조회 (5개)
  - 로그인 로그 기록 (4개)
  - 전체 로그인 프로세스 (5개)
  - 로그아웃 (2개)
  - 토큰 검증 (3개)
  - Raw Query 전환 검증 (3개)
  - 성능 테스트 (2개)
- 통합 테스트: 작성 완료 (auth.integration.test.ts)
  - 로그인 → 토큰 발급 → 인증 → 로그아웃 플로우

🔧 주요 변경사항:
- Prisma import 제거 → Raw Query (query from db.ts)
- authority 테이블 JOIN 수정 (auth_code → master_objid/objid)
- 파라미터 바인딩으로 SQL Injection 방지
- 타입 안전성 유지 (TypeScript Generic 사용)

📊 성능:
- 로그인 프로세스: < 1초
- 사용자 정보 조회: < 500ms
- 모든 테스트 실행 시간: 2.016초

🎯 다음 단계:
- Phase 2: 핵심 서비스 전환 (ScreenManagement, TableManagement 등)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 15:59:32 +09:00
52d1e0acad 주의 2025-09-26 17:55:38 +09:00
949aab0b73 feat: 배치 관리 시스템 구현
 주요 기능:
- 배치 설정 관리 (생성/수정/삭제/실행)
- 배치 실행 로그 관리 및 모니터링
- 배치 스케줄러 자동 실행 (cron 기반)
- 외부 DB 연결을 통한 데이터 동기화
- Oracle, MSSQL, MariaDB 커넥터 지원

🔧 백엔드 구현:
- BatchManagementController: 배치 설정 CRUD
- BatchExecutionLogController: 실행 로그 관리
- BatchSchedulerService: 자동 스케줄링
- BatchExternalDbService: 외부 DB 연동
- 배치 관련 테이블 스키마 추가

🎨 프론트엔드 구현:
- 배치 관리 대시보드 UI
- 배치 생성/수정 폼
- 실행 로그 모니터링 화면
- 수동 실행 및 상태 관리

🛡️ 안전성:
- 기존 시스템과 독립적 구현
- 트랜잭션 기반 안전한 데이터 처리
- 에러 핸들링 및 로깅 강화
2025-09-25 11:04:16 +09:00
4abf5b31c0 배치관리 중간커밋 2025-09-24 10:46:55 +09:00
leeheejin
f160a33b94 스크롤 기능 포함 2025-09-23 10:45:53 +09:00
leeheejin
1ae16bb690 feature connection 2025-09-22 17:28:31 +09:00
kjs
2d07041110 라벨명 표시기능 2025-09-08 14:20:01 +09:00
kjs
53a44b901d 파일 업로드,다운로드 기능 2025-09-05 12:04:13 +09:00
kjs
8667cb4780 회사관리, 메뉴관리 수정,삭제 기능 2025-08-25 11:07:39 +09:00
kjs
a0e5b57a24 최초커밋 2025-08-21 09:41:46 +09:00