const express = require('express'); const router = express.Router(); const { submitFeedback, getFeedback, getFeedbackList, processFeedback, getFeedbackStats } = require('../controllers/feedbackController'); const { authenticate, authorize } = require('../middleware/auth'); const { validate, schemas } = require('../middleware/validation'); // All feedback routes require authentication router.use(authenticate); // Feedback submission (public to authenticated users) router.post('/submit', validate(schemas.submitFeedback), submitFeedback); // Feedback management (admin only) router.get('/stats', authorize('admin'), getFeedbackStats); router.get('/', authorize('admin'), getFeedbackList); router.get('/:feedbackId', authorize('admin'), getFeedback); router.put('/:feedbackId/process', authorize('admin'), processFeedback); module.exports = router;