SIU_Dran_net/Server/Controller/DAOCarrera.js

26 lines
1.2 KiB
JavaScript

import Conexion from './Conexion.js'; // Asegúrate de tener la ruta correcta al archivo de conexión
import Carrera from '../Model/Carrera.js'; // Asegúrate de tener la ruta correcta al archivo de Carrera
import logger from '../utils/logger.js'; // Importa el logger
import DAORegistro from './DAORegistro.js'; // Asegúrate de tener la ruta correcta al archivo de DAORegistro
class DAOCarrera {
static async dameCarreras() {
const conexion = new Conexion();
const conexionEstablecida = await conexion.conectar();
try {
const sql = "SELECT * FROM carrera";
const [rows] = await conexionEstablecida.query(sql);
const resultado = rows.map(row => new Carrera(row.id, row.nombre, row.area, row.campus, row.descripcion, row.mision, row.vision, row.objetivo));
await DAORegistro.registrar({ getMatricula: () => 'SYSTEM' }, 'Consultó carreras', new Date().toISOString());
return resultado;
} catch (error) {
logger.error(`Error al obtener carreras: ${error.message}`);
return [];
} finally {
conexion.cerrarConexion();
}
}
}
export default DAOCarrera;