Files
TK-FB-Project/api.hyungi.net/routes/workAnalysisRoutes.js

61 lines
2.3 KiB
JavaScript

// routes/workAnalysisRoutes.js
const express = require('express');
const router = express.Router();
const workAnalysisController = require('../controllers/workAnalysisController');
// 🏠 대시보드용 종합 데이터 (가장 많이 사용될 것 같아서 맨 위에)
router.get('/dashboard', workAnalysisController.getDashboardData);
// 📊 기본 통계
router.get('/stats', workAnalysisController.getStats);
// 📈 일별 작업시간 추이
router.get('/daily-trend', workAnalysisController.getDailyTrend);
// 👥 작업자별 통계
router.get('/worker-stats', workAnalysisController.getWorkerStats);
// 📋 프로젝트별 통계
router.get('/project-stats', workAnalysisController.getProjectStats);
// 🔧 작업유형별 통계
router.get('/work-type-stats', workAnalysisController.getWorkTypeStats);
// 🕐 최근 작업 현황
router.get('/recent-work', workAnalysisController.getRecentWork);
// 📅 요일별 패턴 분석
router.get('/weekday-pattern', workAnalysisController.getWeekdayPattern);
// ❌ 에러 분석
router.get('/error-analysis', workAnalysisController.getErrorAnalysis);
// 📊 월별 비교 분석
router.get('/monthly-comparison', workAnalysisController.getMonthlyComparison);
// 🎯 작업자별 전문분야 분석
router.get('/worker-specialization', workAnalysisController.getWorkerSpecialization);
// 📋 헬스체크 및 API 정보
router.get('/health', (req, res) => {
res.json({
success: true,
message: '작업 분석 API가 정상 작동 중입니다.',
endpoints: [
'GET /work-analysis/dashboard - 대시보드 종합 데이터',
'GET /work-analysis/stats - 기본 통계',
'GET /work-analysis/daily-trend - 일별 추이',
'GET /work-analysis/worker-stats - 작업자별 통계',
'GET /work-analysis/project-stats - 프로젝트별 통계',
'GET /work-analysis/work-type-stats - 작업유형별 통계',
'GET /work-analysis/recent-work - 최근 작업 현황',
'GET /work-analysis/weekday-pattern - 요일별 패턴',
'GET /work-analysis/error-analysis - 에러 분석',
'GET /work-analysis/monthly-comparison - 월별 비교',
'GET /work-analysis/worker-specialization - 작업자 전문분야'
],
timestamp: new Date().toISOString()
});
});
module.exports = router;