import { Router } from 'express'; import { authenticateToken, requireRole } from '../middleware/auth.middleware'; import * as organismoController from '../controllers/organismo-operador.controller'; const router = Router(); /** * All routes require authentication */ router.use(authenticateToken); /** * GET /organismos-operadores * List all organismos operadores (ADMIN and ORGANISMO_OPERADOR) */ router.get('/', requireRole('ADMIN', 'ORGANISMO_OPERADOR'), organismoController.getAll); /** * GET /organismos-operadores/:id * Get a single organismo by ID */ router.get('/:id', requireRole('ADMIN', 'ORGANISMO_OPERADOR'), organismoController.getById); /** * GET /organismos-operadores/:id/projects * Get projects belonging to an organismo */ router.get('/:id/projects', requireRole('ADMIN', 'ORGANISMO_OPERADOR'), organismoController.getProjects); /** * POST /organismos-operadores * Create a new organismo operador (ADMIN only) */ router.post('/', requireRole('ADMIN'), organismoController.create); /** * PUT /organismos-operadores/:id * Update an organismo operador (ADMIN only) */ router.put('/:id', requireRole('ADMIN'), organismoController.update); /** * DELETE /organismos-operadores/:id * Delete an organismo operador (ADMIN only) */ router.delete('/:id', requireRole('ADMIN'), organismoController.remove); export default router;