diff --git a/api.hyungi.net/controllers/dailyWorkReportController.js b/api.hyungi.net/controllers/dailyWorkReportController.js index ea593d7..3973e7e 100644 --- a/api.hyungi.net/controllers/dailyWorkReportController.js +++ b/api.hyungi.net/controllers/dailyWorkReportController.js @@ -491,6 +491,41 @@ const getErrorTypes = (req, res) => { }); }; +/** + * πŸ“Š λˆ„μ  ν˜„ν™© 쑰회 + */ +const getAccumulatedReports = (req, res) => { + const { date, worker_id } = req.query; + + if (!date || !worker_id) { + return res.status(400).json({ + error: 'date와 worker_idκ°€ ν•„μš”ν•©λ‹ˆλ‹€.', + example: 'date=2024-06-16&worker_id=1' + }); + } + + console.log(`πŸ“Š λˆ„μ  ν˜„ν™© 쑰회: date=${date}, worker_id=${worker_id}`); + + dailyWorkReportModel.getAccumulatedReportsByDate(date, worker_id, (err, data) => { + if (err) { + console.error('λˆ„μ  ν˜„ν™© 쑰회 였λ₯˜:', err); + return res.status(500).json({ + error: 'λˆ„μ  ν˜„ν™© 쑰회 쀑 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.', + details: err.message + }); + } + + console.log(`πŸ“Š λˆ„μ  ν˜„ν™© 쑰회 κ²°κ³Ό: ${data.length}개`); + res.json({ + date, + worker_id, + total_entries: data.length, + accumulated_data: data, + timestamp: new Date().toISOString() + }); + }); +}; + // λͺ¨λ“  컨트둀러 ν•¨μˆ˜ 내보내기 (λ¦¬νŒ©ν† λ§λœ ν•¨μˆ˜ μœ„μ£Όλ‘œ μž¬κ΅¬μ„±) module.exports = { // πŸ“ V2 핡심 CRUD ν•¨μˆ˜ diff --git a/api.hyungi.net/package-lock.json b/api.hyungi.net/package-lock.json index 86bb5b1..a328e0a 100644 --- a/api.hyungi.net/package-lock.json +++ b/api.hyungi.net/package-lock.json @@ -744,9 +744,9 @@ } }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "license": "MIT", "optional": true, "dependencies": { @@ -4075,9 +4075,9 @@ } }, "node_modules/tar-fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz", - "integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.3.tgz", + "integrity": "sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==", "license": "MIT", "dependencies": { "chownr": "^1.1.1", diff --git a/api.hyungi.net/routes/analysisRoutes.js b/api.hyungi.net/routes/analysisRoutes.js index a9ca63b..e0d9c92 100644 --- a/api.hyungi.net/routes/analysisRoutes.js +++ b/api.hyungi.net/routes/analysisRoutes.js @@ -2,9 +2,9 @@ const express = require('express'); const router = express.Router(); const { getAnalysisData } = require('../controllers/analysisController'); -const authMiddleware = require('../middlewares/authMiddleware'); // 인증 미듀웨어 μΆ”κ°€ +const { verifyToken } = require('../middlewares/authMiddleware'); // 인증 미듀웨어 μΆ”κ°€ // GET /api/analysis?startDate=...&endDate=... -router.get('/', authMiddleware, getAnalysisData); +router.get('/', verifyToken, getAnalysisData); module.exports = router; \ No newline at end of file