kjs
1f12df2f79
플로우 외부db연결
2025-10-20 17:50:27 +09:00
kjs
7d8abc0449
플로우 분기처리 구현
2025-10-20 15:53:00 +09:00
leeheejin
5b503edfa8
작업 이력 통계 위젯 추가
...
백스페이스 안먹는 오류 수정
그리드 컴포넌트 수정
등등
2025-10-20 14:07:08 +09:00
dohyeons
c5a4b0b10c
저장 버튼을 누르기 전 저장 x
2025-10-20 11:26:50 +09:00
dohyeons
e2d99aef40
quantity 타입 문제 해결
2025-10-20 11:07:58 +09:00
kjs
de9491aa29
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-20 10:56:23 +09:00
kjs
f9c171c513
플로우 구현
2025-10-20 10:55:33 +09:00
dohyeons
0217393cb8
저장 시 위치가 바뀌는 문제 해결
2025-10-20 10:12:23 +09:00
dohyeons
ab07908f09
요소 추가 버튼 시 api 호출 삭제
2025-10-20 10:06:17 +09:00
dohyeons
8932f61298
Phase 1-4 완료
2025-10-20 09:53:31 +09:00
kjs
52c7391cf5
Merge branch 'main' into feature/screen-management
2025-10-17 17:15:47 +09:00
dohyeons
40d923212a
배포 에러 수정
2025-10-17 16:41:04 +09:00
dohyeons
d473ace18d
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feat/dashboard
2025-10-17 16:25:30 +09:00
dohyeons
4a4700ea23
뷰어에서 자재 클릭시 보기 구현
2025-10-17 16:23:33 +09:00
kjs
2a8081a253
반응형 및 테이블 리스트 컴포넌트 오류 수정
2025-10-17 15:31:23 +09:00
dohyeons
184d687f0f
일단 야드관리 3d 드래그앤 드랍까지
2025-10-17 15:26:21 +09:00
leeheejin
0a02a6c7ab
자잘한 오류 수정과 스크롤, 헤더 변경완료
2025-10-17 14:52:08 +09:00
dohyeons
3b57d4acda
창고 3d 위젯 기능 삭제
2025-10-17 13:44:51 +09:00
leeheejin
829161d195
Merge origin/main into lhj - 대시보드 기능 통합
...
- 달력-할일-긴급지시 Context 연동 (lhj)
- 창고 현황 3D 위젯 추가 (main)
- 대시보드 저장 모달 개선 (main)
- 메뉴 할당 모달 추가 (main)
- 그리드 스냅 기능 유지
- DashboardProvider 통합
2025-10-17 10:01:33 +09:00
kjs
29a2a18d69
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-16 18:19:21 +09:00
dohyeons
963e57d7e7
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/dashboard
2025-10-16 18:10:22 +09:00
leeheejin
7097775343
알아서 배치되는거 하기 전 세이브 디벨롭만 된 상태
2025-10-16 16:34:59 +09:00
dohyeons
8e2c66e2a4
3d 중간저장
2025-10-16 15:39:54 +09:00
kjs
a0dde51109
분할 패널 및 반복 필드 그룹 컴포넌트
2025-10-16 15:05:24 +09:00
leeheejin
6d51aced2c
위젯 커스텀 제목 및 헤더 표시/숨김 기능 추가
...
- 위젯 설정에서 제목 변경 가능
- 위젯 헤더 표시/숨김 토글 추가
- DB 마이그레이션 자동 실행 (custom_title, show_header 컬럼)
- 편집 모드/보기 모드 모두 지원
- DashboardTopMenu 레이아웃 유지
2025-10-16 14:59:07 +09:00
dohyeons
8e0ef82de7
해상도 복원 구현
2025-10-16 11:29:45 +09:00
dohyeons
a7123216f2
백엔드 수정
2025-10-16 11:03:57 +09:00
dohyeons
9168844fab
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/dashboard
2025-10-16 10:56:34 +09:00
dohyeons
8f676c0a6d
배포용 수정
2025-10-16 10:33:21 +09:00
dohyeons
9e1a7c53e1
settings 저장
2025-10-16 10:27:43 +09:00
kjs
716cfcb2cf
화면정보 수정 및 미리보기 기능
2025-10-15 18:31:40 +09:00
kjs
c42853f261
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-15 17:32:22 +09:00
kjs
0c3462a646
Merge branch 'feature/screen-management' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-15 17:29:30 +09:00
kjs
7686158a01
분할레이아웃
2025-10-15 17:25:38 +09:00
leeheejin
1995adf245
중간저장
2025-10-15 17:14:42 +09:00
leeheejin
0b5b140625
대시보드 위젯 렌더링 수정 및 외부 API 키 통합
...
- DashboardViewer에 ListSummaryWidget 연결
- list 위젯이 실제 DB 데이터 표시하도록 수정
- ITS_API_KEY (국토교통부 교통사고 API) 추가
- KMA_API_KEY (기상청 특보 API) 재적용
- dashboard.ts API URL 수정 (/api로 통일)
2025-10-15 17:02:06 +09:00
dohyeons
eff3b45dc9
기간 필터링 추가
2025-10-15 15:05:20 +09:00
kjs
4c05b25fd8
Merge branch 'main' into feature/screen-management
2025-10-15 13:33:26 +09:00
kjs
3d242c1c8e
화면관리 ui개선 및 파일업로드 설정
2025-10-15 13:30:11 +09:00
dohyeons
3ecdf73bc5
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/dashboard
2025-10-15 11:56:36 +09:00
leeheejin
36aec28708
차량위치 위젯 기존꺼 분할 완료
2025-10-15 10:29:15 +09:00
dohyeons
593983d6ee
rest api 기능 구현
2025-10-15 10:02:32 +09:00
leeheejin
9599d34ba9
투두리스트, 예약요청, 정비,문서
2025-10-14 17:21:28 +09:00
leeheejin
c6930a4e66
배송/화물현황과 리스크/알림(api 활용, 공공데이터 복구시 대체될 가능성 있음)
2025-10-14 16:36:00 +09:00
kjs
55f52ed1b5
컬럼 세부 타입 설정
2025-10-14 11:48:04 +09:00
kjs
dadd49b98f
화면관리 수정
2025-10-13 19:18:01 +09:00
dohyeons
55d8d5432e
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report
2025-10-13 19:16:23 +09:00
dohyeons
28d460fecd
리포트 관리 되돌리기
2025-10-13 19:15:52 +09:00
leeheejin
26649b78f3
환율과 날씨 위젯 api 활용 완료 날씨는 현재 기상청 ai hub로 사용중 나중에 공공데이터 서비스가 가능할때 바꾸기 바람
2025-10-13 19:04:28 +09:00
leeheejin
87bec6760a
Merge conflict 해결 - 로컬 변경사항 유지 (날씨 API)
2025-10-13 18:39:37 +09:00
kjs
c99936cef0
Merge branch 'main' into feature/screen-management
2025-10-13 17:48:44 +09:00
kjs
0dc4d53876
제어관리 노드 작동 방식 수정
2025-10-13 17:47:24 +09:00
dohyeons
fbb42dd83c
mail-templates도 수정
2025-10-13 16:18:54 +09:00
dohyeons
b6eaaed85e
mail-attachment 로직 수정
2025-10-13 16:11:51 +09:00
dohyeons
7a10b2652c
mail 백엔드 로직 수정
2025-10-13 16:04:13 +09:00
leeheejin
51dea84bc5
Merge branch 'lhj'
2025-10-13 15:19:59 +09:00
leeheejin
95c98cbda3
메일관리 기능 구현 완료
2025-10-13 15:17:34 +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
9d5ac1716d
메뉴추가 기본값 제거
2025-10-13 15:06:48 +09:00
kjs
6e41fdf039
메뉴관리 추가 안되는 버그 수정
2025-10-13 15:01:37 +09:00
kjs
2d8f5a184d
배치관리 쿼리수정
2025-10-13 12:09:33 +09:00
kjs
1315cfedc4
Merge branch 'feature/screen-management' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-13 12:00:42 +09:00
kjs
1274f58c3c
rest api 액션노드 기능변경
2025-10-13 12:00:41 +09:00
dohyeons
7828b5e073
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report
2025-10-13 09:44:09 +09:00
dohyeons
f7b9a5db1c
타입 단언 사용
2025-10-08 10:34:16 +09:00
kjs
1760703150
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/screen-management
2025-10-08 09:45:59 +09:00
kjs
e48cc4decc
노드 수정
2025-10-08 09:39:13 +09:00
leeheejin
b4c5be1f17
메일관리 콘솔로그 주석처리 세이브
2025-10-02 18:22:58 +09:00
dohyeons
57c4e8317d
Merge branch 'main' of http://39.117.244.52:3000/kjs/ERP-node into feature/report
2025-10-02 18:01:14 +09:00
kjs
258bd80201
액션 노드들 로직 구현
2025-10-02 17:51:15 +09:00
kjs
37e018b33c
외부 db노드 설정
2025-10-02 16:43:40 +09:00
kjs
0743786f9b
feat: 노드 기반 데이터 플로우 시스템 구현
...
- 노드 에디터 UI 구현 (React Flow 기반)
- TableSource, DataTransform, INSERT, UPDATE, DELETE, UPSERT 노드
- 드래그앤드롭 노드 추가 및 연결
- 속성 패널을 통한 노드 설정
- 실시간 필드 라벨 표시 (column_labels 테이블 연동)
- 데이터 변환 노드 (DataTransform) 기능
- EXPLODE: 구분자로 1개 행 → 여러 행 확장
- UPPERCASE, LOWERCASE, TRIM, CONCAT, SPLIT, REPLACE 등 12가지 변환 타입
- In-place 변환 지원 (타겟 필드 생략 시 소스 필드 덮어쓰기)
- 변환된 필드가 하위 액션 노드에 자동 전달
- 노드 플로우 실행 엔진
- 위상 정렬을 통한 노드 실행 순서 결정
- 레벨별 병렬 실행 (Promise.allSettled)
- 부분 실패 허용 (한 노드 실패 시 연결된 하위 노드만 스킵)
- 트랜잭션 기반 안전한 데이터 처리
- UPSERT 액션 로직 구현
- DB 제약 조건 없이 SELECT → UPDATE or INSERT 방식
- 복합 충돌 키 지원 (예: sales_no + product_name)
- 파라미터 인덱스 정확한 매핑
- 데이터 소스 자동 감지
- 테이블 선택 데이터 (selectedRowsData) 자동 주입
- 폼 입력 데이터 (formData) 자동 주입
- TableSource 노드가 외부 데이터 우선 사용
- 버튼 컴포넌트 통합
- 기존 관계 실행 + 새 노드 플로우 실행 하이브리드 지원
- 노드 플로우 선택 UI 추가
- API 클라이언트 통합 (Axios)
- 개발 문서 작성
- 노드 기반 제어 시스템 개선 계획
- 노드 연결 규칙 설계
- 노드 실행 엔진 설계
- 노드 구조 개선안
- 버튼 통합 분석
2025-10-02 16:22:29 +09:00
leeheejin
bf58e0c878
메일관리 기능 구현
2025-10-02 15:46:23 +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
3fa410cbe4
ui 수정 및 시현할 기능 업데이트
2025-10-02 14:34:15 +09:00
dohyeons
b32b05a76c
쿼리 에서 cud 명령어 막기 구현
2025-10-02 09:56:44 +09:00
leeheejin
4202a5b310
Merge branch 'main' into lhj - 충돌 해결
2025-10-01 18:01:20 +09:00
kjs
b452f148a9
오라클 제어 수정
2025-10-01 17:36:17 +09:00
kjs
852075c799
fix: Oracle INSERT 자동 커밋 추가
...
문제:
- Oracle DB에 INSERT 해도 데이터가 실제로 저장되지 않음
- executeQuery에서 autoCommit 옵션이 없었음
수정:
1. 쿼리 타입 확인 (INSERT/UPDATE/DELETE/MERGE)
2. DML 쿼리는 autoCommit: true 설정 ✅
3. SELECT 쿼리는 autoCommit: false (기본값)
로깅 추가:
- isDML 확인
- autoCommit 상태
- rowsAffected 추가
결과:
- ✅ INSERT 실행 후 자동 COMMIT
- ✅ UPDATE/DELETE도 자동 COMMIT
- ✅ SELECT는 영향 없음
- ✅ 오라클 데이터 정상 저장
2025-10-01 17:34:56 +09:00
leeheejin
6d1fe625e4
메일관리 시스템 구현 완료
2025-10-01 17:01:31 +09:00
dohyeons
d83264181c
이미지 & 구분선 구현
2025-10-01 16:53:35 +09:00
leeheejin
0209be8fd6
메일 관리 작업 저장용 커밋
2025-10-01 16:15:53 +09:00
kjs
d22e83d234
fix: UPDATE 액션 formData 기본 포함 및 로깅 추가
...
UPDATE 액션 실행 시:
- formData를 기본으로 복사하여 기본키 포함
- 상세 로깅으로 디버깅 지원
- 백엔드 동적 기본키 조회 구현
2025-10-01 15:51:13 +09:00
kjs
151de4148c
fix: UPDATE 액션 동적 기본키 조회 기능 추가
...
문제:
- UPDATE 액션 실행 시 ID 필요 에러
- executeUpdate가 하드코딩된 id 필드만 찾음
- 실제 테이블 기본키는 다를 수 있음
해결:
1. 테이블 기본키 동적 조회
2. 기본키 값 동적 추출
3. 동적 UPDATE 쿼리 생성
4. 상세 로깅 추가
결과:
- 모든 테이블의 UPDATE 동작
- 동적 기본키 처리
2025-10-01 15:48:29 +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
352d4c3126
fix: query 함수 파라미터 배열 전달 오류 수정
...
문제:
- query() 함수에 스프레드 연산자로 파라미터 전달
- pg 라이브러리는 배열을 요구함
- 'Query values must be an array' 에러 발생
수정:
tableManagementService.ts (2곳):
- line 1501: query(...searchValues) → query(searchValues)
- line 1512: query(...searchValues, size, offset)
→ query([...searchValues, size, offset])
결과:
- ✅ 쿼리 파라미터 배열로 정확히 전달
- ✅ 테이블 데이터 조회 정상 동작
2025-10-01 15:21:08 +09:00
kjs
401bbf85dc
Merge branch 'main' into feature/prisma-to-raw-query-phase1-complete
2025-10-01 15:07:07 +09:00
dohyeons
62d36abb65
리포트 템플릿 저장 구현
2025-10-01 15:03:52 +09:00
kjs
ec5fae1a4d
fix: Prisma 에러 처리 코드를 PostgreSQL 에러 코드로 변경
...
변경사항:
1. errorHandler.ts:
- Prisma 에러 처리 제거
- PostgreSQL 에러 코드 기반 처리 추가:
* 23505: unique_violation (중복 데이터)
* 23503: foreign_key_violation (참조 무결성)
* 23502: not_null_violation (필수값 누락)
2. dataflowDiagramController.ts:
- P2002 (Prisma) → 23505 (PostgreSQL)
- unique constraint 에러 처리 개선
3. commonCodeController.ts:
- Prisma 에러 처리 주석 수정
- PostgreSQL 23505 에러 코드 추가
최종 확인:
- ✅ prisma. 호출: 0개
- ✅ PrismaClient import: 0개
- ✅ Prisma 파일: 0개
- ✅ package.json Prisma 의존성: 0개
- ✅ TypeScript 컴파일 에러: 0개
- ✅ 모든 Prisma 관련 코드 제거 완료
2025-10-01 14:57:25 +09:00
kjs
643f6e0d7d
chore: Prisma 관련 파일 완전 제거 🧹
...
제거된 파일들:
1. 컴파일된 파일:
- backend-node/dist/config/database.js
2. 테스트 파일 (3개):
- backend-node/src/tests/database.test.ts
- backend-node/src/tests/authService.test.ts
- backend-node/src/tests/integration/auth.integration.test.ts
3. Prisma 관련 스크립트 (10개):
- test-db.js, check-password.js, check-actual-password.js
- update-password.js, create-test-user.js, simple-test-user.js
- clean-screen-tables.js, test-jwt.js, test-token.js
- test-token.txt
4. Prisma 디렉토리:
- backend-node/prisma/schema.prisma
- backend-node/prisma/migrations/
수정된 파일들:
1. backend-node/package.json:
✅ Prisma 스크립트 제거 (prisma:generate, migrate, studio, seed)
✅ @prisma/client 의존성 제거
✅ prisma 개발 의존성 제거
✅ keywords: prisma → postgresql
2. .gitignore:
✅ Prisma 관련 항목 제거
3. src/services/dataflowDiagramService.ts:
✅ 포맷팅 수정
최종 상태:
- ✅ Prisma 호출: 0개
- ✅ Prisma 관련 파일: 0개
- ✅ Raw Query 기반 시스템으로 완전 전환
2025-10-01 14:54:44 +09:00
kjs
440803e203
fix: dbTypeCategoryService 타입 에러 수정
...
문제:
- queryOne이 null을 반환할 수 있지만 타입이 undefined 예상
해결:
- category || undefined로 null을 undefined로 변환
최종 확인:
- ✅ TypeScript 컴파일 에러: 0개
- ✅ Prisma 호출: 0개
- ✅ 모든 전환 완료: 469/469 (100%)
2025-10-01 14:47:29 +09:00
kjs
b5fe2117af
feat: Prisma 완전 제거 완료 🎉
...
최종 작업:
1. config/database.ts 삭제:
- Prisma 기반 database.ts 완전 제거
- 더 이상 사용되지 않는 파일
2. referenceCacheService.ts 전환 (3개):
- ✅ getTableRowCount: $queryRawUnsafe → query
- ✅ cacheReferenceTable: $queryRawUnsafe → query
- ✅ batchLookup: $queryRaw → query (ANY 연산자)
전체 완료:
- ✅ 모든 Prisma 호출 전환 완료
- ✅ PrismaClient import 완전 제거 (에러핸들러 제외)
- ✅ database.ts 삭제
- ✅ Raw Query 기반 시스템으로 완전 전환
최종 진행률: 54/54 (100%) 🎉
2025-10-01 14:44:49 +09:00
kjs
e444dd9d39
fix: multiConnectionQueryService 변수명 충돌 해결
...
문제:
- 로컬 변수 'query'와 import한 함수 'query'가 충돌
- TypeScript 에러: 'query' is used before being assigned
해결:
- 로컬 변수 'query'를 'sql'로 변경
- SELECT 쿼리 문자열 변수명 통일 (query → sql)
영향:
- executeMainDbOperation의 select case만 수정
- insert, update, delete는 이미 고유한 변수명 사용
2025-10-01 14:41:46 +09:00
kjs
bc54d37ff2
feat: Routes & Service Prisma 전환 완료
...
완료된 파일:
1. ddlRoutes.ts (2개):
- ✅ health check: PrismaClient 동적 import 제거
- ✅ SELECT 1 쿼리를 query() 함수로 변경
2. companyManagementRoutes.ts (2개):
- ✅ findUnique → queryOne (회사 존재 확인)
- ✅ update → query (soft delete)
3. multiConnectionQueryService.ts (4개):
- ✅ executeSelect: $queryRawUnsafe → query
- ✅ executeInsert: $queryRawUnsafe → query
- ✅ executeUpdate: $queryRawUnsafe → query
- ✅ executeDelete: $queryRawUnsafe → query
기술적 개선:
- 동적 import 제거로 성능 향상
- 일관된 쿼리 인터페이스 사용
- 파라미터 전달 방식 통일 (...params → params)
전체 진행률: 50/54 (92.6%)
남은 작업: database.ts (4개 - 제거 예정)
2025-10-01 14:41:04 +09:00
kjs
97f4d11870
fix: buttonActionStandardController pool 사용을 transaction 함수로 변경
...
문제:
- pool이 null일 수 있다는 TypeScript 에러 발생
- pool.connect()를 직접 사용하는 것은 안전하지 않음
해결:
- pool import를 transaction으로 변경
- 수동 트랜잭션 관리 코드를 transaction 함수로 교체
- BEGIN/COMMIT/ROLLBACK 자동 처리
- 파라미터 개수 최적화 (updated_date를 NOW()로 변경)
장점:
- 타입 안전성 향상
- 에러 처리 자동화
- 코드 간소화
2025-10-01 14:38:14 +09:00
kjs
fcf887ae76
fix: pool export 추가로 buttonActionStandardController 컴파일 에러 해결
...
문제:
- buttonActionStandardController에서 pool을 import하려 했으나
- db.ts에서 pool이 export되지 않아 컴파일 에러 발생
해결:
- db.ts에 'export { pool }' 추가
- pool 직접 접근이 필요한 경우를 위해 명시적 export
영향받는 파일:
- backend-node/src/database/db.ts
- backend-node/src/controllers/buttonActionStandardController.ts (사용)
2025-10-01 14:37:33 +09:00
dohyeons
2ee4dd0b58
외부 db연동 구현
2025-10-01 14:36:46 +09:00
kjs
f2f0c33bad
feat: webTypeStandardController & fileController Prisma 전환 완료
...
컨트롤러 레이어 전환:
webTypeStandardController.ts (11개):
- ✅ getWebTypes: findMany → query (동적 WHERE, ILIKE)
- ✅ getWebType: findUnique → queryOne
- ✅ createWebType: findUnique + create → queryOne (중복 체크 + INSERT)
- ✅ updateWebType: update → query (동적 UPDATE, 11개 필드)
- ✅ deleteWebType: delete → query (RETURNING)
- ✅ updateSortOrder: $transaction → transaction (batch update)
- ✅ getCategories: groupBy → query (GROUP BY, COUNT)
fileController.ts (1개):
- ✅ downloadFile: findUnique → queryOne
기술적 구현:
- 동적 WHERE 절: ILIKE를 사용한 검색
- 동적 UPDATE: 11개 필드 조건부 업데이트
- 트랜잭션: transaction 함수로 batch update
- GROUP BY: 카테고리별 집계
전체 진행률: 42/29 (145%) - 컨트롤러 완료
남은 작업: Routes(4), Service(4), Config(4)
2025-10-01 14:36:36 +09:00
kjs
7919079362
docs: Phase 4 남은 Prisma 호출 전환 계획서 작성
...
현재 상황 분석 및 문서화:
컨트롤러 레이어:
- ✅ adminController.ts (28개) 완료
- ✅ screenFileController.ts (2개) 완료
- 🔄 남은 파일 (12개 호출):
* webTypeStandardController.ts (11개)
* fileController.ts (1개)
Routes & Services:
- ddlRoutes.ts (2개)
- companyManagementRoutes.ts (2개)
- multiConnectionQueryService.ts (4개)
Config:
- database.ts (4개 - 제거 예정)
새로운 계획서:
- PHASE4_REMAINING_PRISMA_CALLS.md (상세 전환 계획)
- 파일별 Prisma 호출 상세 분석
- 전환 패턴 및 우선순위 정리
전체 진행률: 445/444 (100.2%)
남은 작업: 12개 (추가 조사 필요한 파일 제외)
2025-10-01 14:33:08 +09:00
dohyeons
12087cbdd7
리포트 복사 및 삭제 기능 구현
2025-10-01 14:27:44 +09:00