| import express from 'express'; | |
| import { | |
| getEventMapData, | |
| getHeatmapData, | |
| getThemeCoverage, | |
| getOrganizationStats, | |
| getTrainerActivity, | |
| getDistrictCoverage, | |
| exportAnalyticsToCsv, | |
| getDashboardOverview | |
| } from '../controller/analytics.controller'; | |
| import authMiddleware from '../middleware/auth.middleware'; | |
| const router = express.Router(); | |
| // ==================== GIS & MAPPING ==================== | |
| // Get event locations for map visualization | |
| router.get('/map', authMiddleware, getEventMapData); | |
| // Get heatmap data (coverage intensity) | |
| router.get('/heatmap', authMiddleware, getHeatmapData); | |
| // District-wise coverage | |
| router.get('/coverage/district', authMiddleware, getDistrictCoverage); | |
| // ==================== STATISTICS & INSIGHTS ==================== | |
| // Dashboard overview (totals, rates, etc.) | |
| router.get('/overview', authMiddleware, getDashboardOverview); | |
| // Theme coverage statistics | |
| router.get('/coverage/theme', authMiddleware, getThemeCoverage); | |
| // Organization-wise statistics | |
| router.get('/organizations', authMiddleware, getOrganizationStats); | |
| // Trainer activity report | |
| router.get('/trainers', authMiddleware, getTrainerActivity); | |
| // ==================== EXPORT ==================== | |
| // Export analytics to CSV | |
| router.get('/export/csv', authMiddleware, exportAnalyticsToCsv); | |
| export default router; |