Commit Graph

467 Commits

Author SHA1 Message Date
kjs
0e8d1d496d feat: Phase 2.1 Stage 1 추가 조회 함수 전환 (8/46)
추가 기본 조회 함수 Raw Query 전환

 추가 전환 완료 (2개):
7. getScreens() - 전체 화면 목록 조회 (동적 WHERE)
8. getScreen() - 회사 코드 필터링 포함 조회

📊 진행률: 8/46 (17.4%)
🎯 다음: Stage 2 레이아웃 관리 전환

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 16:27:17 +09:00
kjs
13c1bc48de feat: Phase 2.1 Stage 1 complete - Basic CRUD converted (6/46)
Stage 1 완료: 기본 CRUD Raw Query 전환

 전환 완료 (6개):
1. createScreen() - 화면 생성 (중복확인 + INSERT)
2. getScreensByCompany() - 목록 조회 (페이징 + 동적 WHERE)
3. getScreenById() - ID로 조회
4. updateScreen() - 화면 수정 (권한확인 + UPDATE)
5. deleteScreen() - 소프트 삭제 (트랜잭션)
6. getScreenByCode() - 코드로 조회

📊 진행률: 6/46 (13%)
🎯 다음: Stage 1 나머지 조회 함수 (getScreens, getAllScreens)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 16:25:27 +09:00
kjs
95c9811c3b feat: Phase 2.1 - Start ScreenManagementService Raw Query migration (2/46)
1단계 기본 CRUD 전환 시작 (2/6 완료)

 전환 완료 (2개):
1. createScreen() - 화면 생성
   - 중복 확인: findFirst → Raw Query SELECT
   - 생성: create → Raw Query INSERT RETURNING
   - 파라미터 바인딩 적용

2. getScreensByCompany() - 화면 목록 조회 (페이징)
   - 동적 WHERE 절 생성
   - Promise.all로 병렬 조회 (목록 + 총개수)
   - table_labels IN 쿼리 전환

🔧 주요 변경사항:
- Prisma import 제거 → query, transaction import
- 파라미터 바인딩으로 SQL Injection 방지
- COUNT 결과 문자열 → 숫자 변환

📊 진행률:
- 전환 완료: 2/46 (4.3%)
- 남은 작업: 44개 Prisma 호출

🎯 다음 작업:
- getScreenByCode()
- getScreenById()
- updateScreen()
- deleteScreen()

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 16:20:09 +09:00
kjs
ba10e7a12b docs: Add Phase 2.1 ScreenManagementService migration plan
Phase 2 시작: ScreenManagementService 상세 분석 완료

📊 분석 결과:
- 총 46개 Prisma 호출 (Phase 2 최대)
- 파일: 1,805 라인
- 복잡도: 매우 높음

🔍 Prisma 사용:
- 화면 정의: 18개
- 레이아웃: 4개
- 템플릿: 2개
- 메뉴 할당: 5개
- 트랜잭션: 3개

📋 4단계 전환 계획:
1. 기본 CRUD (6함수)
2. 레이아웃 (3함수)
3. 템플릿&메뉴 (6함수)
4. 복잡한 기능 (4함수)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 16:07:31 +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
kjs
e837ccc1d1 docs: Add Phase 1.5 for Auth and Admin service migration
Phase 2 진행 전 인증/관리자 시스템 우선 전환 계획 수립

🔐 Phase 1.5 추가:
- AuthService 우선 전환 (5개 Prisma 호출)
- AdminService 확인 (이미 Raw Query 사용)
- AdminController 전환 (28개 Prisma 호출)

📋 변경 사항:
- Phase 1.5를 Phase 2보다 우선 실행하도록 계획 변경
- 인증/관리자 시스템을 먼저 안정화한 후 핵심 서비스 전환
- 로그인 → 인증 → API 호출 전체 플로우 검증

📚 새 문서:
- PHASE1.5_AUTH_MIGRATION_PLAN.md (상세 전환 계획)
  - AuthService 전환 방법 및 코드 예시
  - 단위 테스트 및 통합 테스트 계획
  - 완료 체크리스트

🎯 목표:
- 전체 시스템의 안정적인 인증 기반 구축
- Phase 2 이후 모든 서비스가 안전하게 인증 시스템 사용

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 15:40:18 +09:00
kjs
50d5305b93 클로드md 안올리게 설정 2025-09-30 15:30:38 +09:00
kjs
bcc79b185c 페이즈1 완료 2025-09-30 15:29:56 +09:00
kjs
ed78ef184d feat: Complete Phase 1 of Prisma to Raw Query migration
Phase 1 완료: Raw Query 기반 데이터베이스 아키텍처 구축

 구현 완료 내용:
- DatabaseManager 클래스 구현 (연결 풀, 트랜잭션 관리)
- QueryBuilder 유틸리티 (동적 쿼리 생성)
- 타입 정의 및 검증 로직 (database.ts, databaseValidator.ts)
- 단위 테스트 작성 및 통과

🔧 전환 완료 서비스:
- externalCallConfigService.ts (Raw Query 전환)
- multiConnectionQueryService.ts (Raw Query 전환)

📚 문서:
- PHASE1_USAGE_GUIDE.md (사용 가이드)
- DETAILED_FILE_MIGRATION_PLAN.md (상세 계획)
- PRISMA_TO_RAW_QUERY_MIGRATION_PLAN.md (Phase 1 완료 표시)

🧪 테스트:
- database.test.ts (핵심 기능 테스트)
- 모든 테스트 통과 확인

이제 Phase 2 (핵심 서비스 전환)로 진행 가능

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 15:29:20 +09:00
kjs
f336e3b31f query 변환 계획 2025-09-29 17:19:31 +09:00
153fb18288 Merge pull request 'feature/batch-testing-updates' (#72) from feature/batch-testing-updates into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/72
2025-09-29 17:09:13 +09:00
c2a4a4a61e Merge remote-tracking branch 'origin/main' into feature/batch-testing-updates 2025-09-29 17:04:52 +09:00
1be8771e01 rest api get 파라미터 설정 개발중 2025-09-29 16:55:37 +09:00
kjs
dbb049cb28 Merge pull request '버튼에 제어 달기' (#71) from feature/screen-management into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/71
2025-09-29 15:21:48 +09:00
kjs
62cb06c7d9 Merge branch 'main' into feature/screen-management 2025-09-29 15:21:42 +09:00
kjs
3c26f24179 버튼에 제어 달기 2025-09-29 15:21:14 +09:00
9dfd0cb40f Merge branch 'main' into feature/batch-testing-updates 2025-09-29 14:17:22 +09:00
9680991962 feat: 배치 관리 시스템 테스트 및 업데이트 기능 개선
- 배치 스케줄러 서비스 안정성 향상
- 외부 DB 연결 서비스 개선
- 배치 컨트롤러 및 관리 컨트롤러 업데이트
- 프론트엔드 배치 관리 페이지 개선
- Prisma 스키마 업데이트
2025-09-29 13:48:59 +09:00
kjs
43d8676f09 Merge pull request 'feature/screen-management' (#66) from feature/screen-management into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/66
2025-09-29 13:39:55 +09:00
kjs
e057c4d960 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management 2025-09-29 13:37:35 +09:00
kjs
0fca8cd90b get요청 db 저장기능 2025-09-29 13:32:59 +09:00
kjs
c9afdec09f restapi 버튼 동작 2025-09-29 12:17:10 +09:00
kjs
cedb5e3ec3 에러 수정 2025-09-29 10:23:21 +09:00
2448f26bc3 Merge branch 'feature/rest-api-integration' of http://39.117.244.52:3000/kjs/ERP-node 2025-09-26 20:04:07 +09:00
cdd345a777 에러수정2 2025-09-26 18:51:27 +09:00
52d1e0acad 주의 2025-09-26 17:55:38 +09:00
kjs
e0777d0fc3 데이터 매핑 설정 중간커밋 2025-09-26 17:52:11 +09:00
3333429928 배치관리시스템 (DB, RestAPI) 2025-09-26 17:29:20 +09:00
kjs
bf7fc6cfb8 에러수정 2025-09-26 17:24:59 +09:00
kjs
9de0b4158c Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node 2025-09-26 17:17:53 +09:00
kjs
f59fcb56b0 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node 2025-09-26 17:17:03 +09:00
58248db457 Merge pull request 'dev' (#68) from dev into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/68
2025-09-26 17:13:16 +09:00
5876f80265 Merge pull request 'lhj' (#67) from lhj into dev
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/67
2025-09-26 17:12:59 +09:00
leeheejin
3600621554 화면관리 쪽 파일첨부 수정 2025-09-26 17:12:03 +09:00
kjs
11b71b788a 외부호출 기능(rest API) 2025-09-26 17:11:18 +09:00
kjs
9454e3a81f 제어관리 데이터 저장기능 2025-09-26 13:52:32 +09:00
leeheejin
1fe401c7d6 Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into lhj 2025-09-26 13:11:44 +09:00
leeheejin
ee7c8e989e 파일 업로드 기능 구현 및 상세설정 연동
- 템플릿 파일첨부 컴포넌트와 FileComponentConfigPanel 실시간 동기화
- FileUpload 위젯에 전역 파일 상태 관리 기능 추가
- 파일 업로드/삭제 시 전역 상태 및 localStorage 동기화
- RealtimePreview에서 전역 상태 우선 읽기 및 파일 개수 표시
- 한컴오피스, Apple iWork 파일 형식 지원 추가
- 파일 뷰어 모달 및 미리보기 기능 구현
- 업로드된 파일 디렉토리 .gitignore 추가
2025-09-26 13:11:34 +09:00
kjs
2a4e379dc4 제어관리 외부커넥션 설정기능 2025-09-26 01:28:51 +09:00
ddd191b87b Merge pull request 'dev' (#65) from dev into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/65
2025-09-25 18:57:35 +09:00
74fdaea4ac Merge pull request 'lhj' (#64) from lhj into dev
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/64
2025-09-25 18:56:44 +09:00
leeheejin
c28e27f3e8 화면관리의 테이블 리스트, 카드 디스플레이 수정 2025-09-25 18:54:25 +09:00
leeheejin
d69feef9da 화면관리의 테이블 리스트, 카드 디스플레이 수정 2025-09-25 18:54:12 +09:00
a06f41dbdb Merge pull request 'dev' (#63) from dev into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/63
2025-09-25 16:23:18 +09:00
ecac852d7a Merge pull request '콘솔 주석처리, 화면관리쪽 컬럼수, 페이지네이션 수정' (#62) from lhj into dev
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/62
2025-09-25 16:22:40 +09:00
leeheejin
28485d6e5c 콘솔 주석처리, 화면관리쪽 컬럼수, 페이지네이션 수정 2025-09-25 16:22:02 +09:00
c0414abaa0 Merge pull request 'dev' (#61) from dev into main
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/61
2025-09-25 14:32:43 +09:00
1977e73c80 Merge pull request 'lhj' (#60) from lhj into dev
Reviewed-on: http://39.117.244.52:3000/kjs/ERP-node/pulls/60
2025-09-25 14:31:58 +09:00
5921a84581 fix: 배치 관리 시스템 Oracle/MariaDB 커넥터 추가 및 timestamp 타입 변환 오류 수정
- DatabaseConnectorFactory에 Oracle, MariaDB 커넥터 추가
- BatchService에서 PostgreSQL timestamp 타입 캐스팅 추가
- BatchExternalDbService에 쿼리 로깅 추가
- 배치 실행 로그 관련 타입 및 컨트롤러 개선
- 프론트엔드 배치 관리 UI 개선
2025-09-25 14:25:18 +09:00
leeheejin
cd84d9033c uiux 개선 2025-09-25 14:22:30 +09:00