Open gianbdev opened 1 month ago
Este código define un servicio llamado TarifarioAgenteAereoService que utiliza Prisma Client para interactuar con la base de datos. La función aereo recibe un id_agente y consulta la tabla tarifarios_agentes_aereos, devolviendo una lista de tarifas asociadas a ese agente. La consulta incluye campos específicos, así como relaciones con las tablas ubigeo y proveedores, y ordena los resultados por id en orden descendente. Este enfoque permite obtener de manera eficiente información relevante sobre tarifas aéreas para un agente específico.
Se añadieron nuevos atributos en los esquemas existentes de proveedores, ubigeo y tarifarios_agentes_aereos para facilitar las consultas en el servicio de tarifario aéreo. Estos cambios optimizan las relaciones entre proveedores y ubicaciones con los tarifarios, permitiendo obtener datos más completos en una sola consulta. Además, se ajustaron los campos de las relaciones para reflejar correctamente las dependencias entre los modelos en Prisma.
Este controlador de Express maneja la solicitud para listar las tarifas aéreas de un agente específico. La función listTarifaAgenteAereo recibe el id_agente desde los parámetros de la URL, llama al servicio TarifarioAgenteAereoService.aereo para obtener los datos y devuelve los resultados en formato JSON. En caso de error, se captura y responde con un mensaje de error 500.
Este código define una ruta en Express para manejar solicitudes GET en el endpoint /getAereoAgente/:id_agente. Utiliza el controlador TarifaAgenteController para gestionar la lógica de listar las tarifas aéreas de un agente basado en su id_agente, pero actualmente retorna una lista vacía porque no hay datos en la tabla correspondiente. La ruta se exporta para ser utilizada en otras partes de la aplicación.
Este servicio, TarifarioAgenteCourrierService, utiliza Prisma Client para interactuar con la base de datos y recuperar las tarifas de courrier asociadas a un agente específico. La función courrier toma un id_agente como parámetro y consulta la tabla tarifarios_agentes_courriers, seleccionando campos específicos y las relaciones con las tablas ubigeo y proveedores. Los resultados son ordenados por id en orden descendente y se devuelven como respuesta para su posterior uso.
La segunda ruta definida en este archivo es un endpoint GET en /getCourrierAgente/:id_agente, que utiliza el método listTarifaAgenteCourrier del controlador TarifaAgenteController para obtener las tarifas de courrier asociadas a un agente específico. Esta ruta recibe el id_agente como parámetro y devuelve una lista de tarifas o una respuesta vacía si no hay datos disponibles en la tabla correspondiente.
Enpoint: http://localhost:3001/api/tarifario/getAereoAgente/2
Enpoint: http://localhost:3001/api/tarifario/getCourrierAgente/2
Resultado: Estos endpoints retornan lista vacia, ya que aun no cuentan con registro en la Base de datos.
Listado para agente Aeros y testing