diff --git a/controller/Dashboard.js b/controller/Dashboard.js index ac47d3e..c0dc769 100644 --- a/controller/Dashboard.js +++ b/controller/Dashboard.js @@ -71,7 +71,39 @@ const analytics = async (req, res) => { }); } }; +const analyticsLast7Days = async (req, res) => { + try { + + const query = ` + SELECT + DATE(created) AS date, + COUNT(DISTINCT session_id) AS sessions, + COUNT(*) FILTER (WHERE status = 1) AS chats, + COUNT(DISTINCT user_id) AS users, + COUNT(*) AS queries + FROM useraskquestion + WHERE created >= CURRENT_DATE - INTERVAL '6 days' + GROUP BY DATE(created) + ORDER BY DATE(created); + `; + + const result = await postgre.query(query); + + return res.status(200).json({ + success: true, + data: result.rows + }); + + } catch (error) { + console.error("Analytics Error:", error); + + return res.status(500).json({ + success: false, + message: error.message + }); + } +}; module.exports = { - analytics, -}; \ No newline at end of file + analyticsLast7Days,analytics +}; diff --git a/route/route.js b/route/route.js index 29a8084..a957bb6 100644 --- a/route/route.js +++ b/route/route.js @@ -35,6 +35,7 @@ router.post('/upload', upload.single("pdf"), authMiddleware, qdrantinsert.upload //*********************************Dashboard************************************************ router.get('/analytics',authMiddleware, Dashboard.analytics); +router.get('/analyticsLast7Days',authMiddleware, Dashboard.analyticsLast7Days); module.exports = router;