ERP-node/backend-node/package.json

85 lines
2.1 KiB
JSON
Raw Normal View History

2025-08-21 09:41:46 +09:00
{
"name": "pms-backend-node",
"version": "1.0.0",
"description": "PLM System Backend - Node.js + TypeScript",
"main": "dist/app.js",
"scripts": {
"start": "node dist/app.js",
"dev": "nodemon src/app.ts",
"build": "tsc",
"test": "jest",
"test:watch": "jest --watch",
"lint": "eslint src/ --ext .ts",
"lint:fix": "eslint src/ --ext .ts --fix",
"format": "prettier --write src/"
2025-08-21 09:41:46 +09:00
},
"keywords": [
"plm",
"nodejs",
"typescript",
"express",
"postgresql"
2025-08-21 09:41:46 +09:00
],
"author": "",
"license": "ISC",
"dependencies": {
"@types/mssql": "^9.1.8",
2025-09-08 14:20:01 +09:00
"axios": "^1.11.0",
2025-08-21 09:41:46 +09:00
"bcryptjs": "^2.4.3",
"compression": "^1.7.4",
2025-08-21 09:41:46 +09:00
"cors": "^2.8.5",
"dotenv": "^16.3.1",
"express": "^4.18.2",
"express-rate-limit": "^7.1.5",
"helmet": "^7.1.0",
2025-10-01 16:15:53 +09:00
"imap": "^0.8.19",
"joi": "^17.11.0",
"jsonwebtoken": "^9.0.2",
2025-10-13 12:00:41 +09:00
"mailparser": "^3.7.5",
"mssql": "^11.0.1",
2025-08-21 09:41:46 +09:00
"multer": "^1.4.5-lts.1",
2025-09-23 10:45:53 +09:00
"mysql2": "^3.15.0",
"node-cron": "^4.2.1",
2025-10-01 16:15:53 +09:00
"nodemailer": "^6.10.1",
"oracledb": "^6.9.0",
"pg": "^8.16.3",
2025-08-21 09:41:46 +09:00
"redis": "^4.6.10",
"winston": "^3.11.0"
2025-08-21 09:41:46 +09:00
},
"devDependencies": {
"@types/bcryptjs": "^2.4.6",
"@types/compression": "^1.7.5",
2025-08-21 09:41:46 +09:00
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/fs-extra": "^11.0.4",
2025-10-01 17:01:31 +09:00
"@types/imap": "^0.8.42",
"@types/jest": "^29.5.11",
"@types/jsonwebtoken": "^9.0.5",
2025-10-01 17:01:31 +09:00
"@types/mailparser": "^3.4.6",
"@types/morgan": "^1.9.9",
2025-09-05 12:04:13 +09:00
"@types/multer": "^1.4.13",
"@types/node": "^20.10.5",
"@types/node-cron": "^3.0.11",
2025-10-01 16:15:53 +09:00
"@types/nodemailer": "^6.4.20",
"@types/oracledb": "^6.9.1",
"@types/pg": "^8.15.5",
2025-08-21 09:41:46 +09:00
"@types/sanitize-html": "^2.9.5",
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
"@types/supertest": "^6.0.3",
"@types/uuid": "^10.0.0",
"@typescript-eslint/eslint-plugin": "^6.14.0",
"@typescript-eslint/parser": "^6.14.0",
"eslint": "^8.55.0",
2025-08-21 09:41:46 +09:00
"jest": "^29.7.0",
2025-09-22 17:28:31 +09:00
"nodemon": "^3.1.10",
"prettier": "^3.1.0",
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
"supertest": "^6.3.4",
2025-08-21 09:41:46 +09:00
"ts-jest": "^29.1.1",
"ts-node": "^10.9.2",
"typescript": "^5.3.3"
2025-08-21 09:41:46 +09:00
},
"engines": {
"node": ">=20.10.0",
"npm": ">=10.0.0"
}
}