diff --git a/src/controladores/controlador_Areas.js b/src/controladores/controlador_Areas.js new file mode 100644 index 0000000..7784d81 --- /dev/null +++ b/src/controladores/controlador_Areas.js @@ -0,0 +1,30 @@ +const controladorAreas = { + + /** + * @function listarAreas + * @description Lista todas las áreas de acceso configuradas en la tabla `areas_configuracion`. + * @param {Object} req - Objeto de solicitud de Express. + * @param {Object} res - Objeto de respuesta de Express. + */ + listarAreas: (req, res) => { + req.getConnection((err, connection) => { + if (err) { + console.error('Error al obtener conexión para listar áreas:', err); + return res.status(500).json({ mensaje: 'Error interno del servidor al obtener conexión', error: err.message }); + } + connection.query('SELECT id_area, nombre_area, descripcion, estado_area FROM areas_configuracion WHERE estado_area = "ACTIVA" ORDER BY nombre_area', (err, rows) => { + if (err) { + console.error('Error al listar áreas de configuración:', err); + return res.status(500).json({ mensaje: 'Error interno del servidor al listar áreas', error: err.message }); + } + res.json(rows); + }); + }); + }, + + // Puedes añadir otros métodos aquí si necesitas CRUD completo para las áreas de configuración + // por ejemplo: obtenerAreaPorId, crearArea, actualizarArea, eliminarArea +}; + +module.exports = controladorAreas; +// Este controlador maneja las operaciones relacionadas con las áreas de configuración \ No newline at end of file diff --git a/src/controladores/controlador_Membresias.js b/src/controladores/controlador_Membresias.js index b80b584..f963c16 100644 --- a/src/controladores/controlador_Membresias.js +++ b/src/controladores/controlador_Membresias.js @@ -225,4 +225,5 @@ const controladorMembresias = { } }; + module.exports = controladorMembresias; \ No newline at end of file diff --git a/src/rutas/rt_clientes.js b/src/rutas/rt_clientes.js index b715a8e..eb1b781 100644 --- a/src/rutas/rt_clientes.js +++ b/src/rutas/rt_clientes.js @@ -5,6 +5,7 @@ const controladorClientes = require('../controladores/controlador_Clientes'); // Importa el NUEVO controlador de Membresías const controladorMembresias = require('../controladores/controlador_Membresias'); const controladorMiembros = require('../controladores/controlador_Miembros'); +const controladorAreas = require('../controladores/controlador_Areas'); // Controlador para áreas de configuración //indice inical rutas.get('/clientes', controladorClientes.ver);//ver lista de clientes @@ -73,6 +74,8 @@ rutas.get('/api/miembros/estado/:estado', controladorMiembros.listarMiembrosPorE // GET /api/tipos-membresia/:id_tipo_membresia/miembros rutas.get('/api/tipos-membresia/:id_tipo_membresia/miembros', controladorMiembros.listarMiembrosPorTipoMembresia); +// Rutas para la gestión de Áreas de Configuración +rutas.get('/api/areas', controladorAreas.listarAreas); // Endpoint para listar todas las áreas // Ruta para obtener ciudades rutas.get('/api/ciudades', controladorClientes.obtenerCiudades);