34 lines
1.4 KiB
JavaScript
34 lines
1.4 KiB
JavaScript
const express = require('express');
|
||
const router = express.Router();
|
||
const adminController = require('../controllers/adminController');
|
||
const { protect } = require('../middleware/authMiddleware');
|
||
const adminMiddleware = require('../middleware/adminMiddleware');
|
||
const {
|
||
getAllReports,
|
||
getReportById,
|
||
updateReportStatus,
|
||
getReportsStats
|
||
} = require('../controllers/reportController');
|
||
|
||
// Все маршруты защищены middleware для проверки авторизации и прав администратора
|
||
router.use(protect, adminMiddleware);
|
||
|
||
// Маршруты для управления пользователями
|
||
router.get('/users', adminController.getAllUsers);
|
||
router.get('/users/:id', adminController.getUserDetails);
|
||
router.put('/users/:id/toggle-active', adminController.toggleUserActive);
|
||
|
||
// Маршруты для просмотра статистики
|
||
router.get('/statistics', adminController.getAppStatistics);
|
||
|
||
// Маршруты для управления жалобами
|
||
router.get('/reports', getAllReports);
|
||
router.get('/reports/stats', getReportsStats);
|
||
router.get('/reports/:id', getReportById);
|
||
router.put('/reports/:id', updateReportStatus);
|
||
|
||
// Маршруты для просмотра диалогов и сообщений
|
||
router.get('/conversations', adminController.getAllConversations);
|
||
router.get('/conversations/:id/messages', adminController.getConversationMessages);
|
||
|
||
module.exports = router; |