+34
-2
@@ -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 = {
|
module.exports = {
|
||||||
analytics,
|
analyticsLast7Days,analytics
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ router.post('/upload', upload.single("pdf"), authMiddleware, qdrantinsert.upload
|
|||||||
|
|
||||||
//*********************************Dashboard************************************************
|
//*********************************Dashboard************************************************
|
||||||
router.get('/analytics',authMiddleware, Dashboard.analytics);
|
router.get('/analytics',authMiddleware, Dashboard.analytics);
|
||||||
|
router.get('/analyticsLast7Days',authMiddleware, Dashboard.analyticsLast7Days);
|
||||||
|
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
Reference in New Issue
Block a user