diff --git a/controller/processController.js b/controller/processController.js index 1940e8f..96d34e3 100644 --- a/controller/processController.js +++ b/controller/processController.js @@ -221,17 +221,17 @@ const processAtendimento = async (ticketData) => { const selectedEntityCodServico = await glpiModel.selectEntityId(ticketData.codigo_servico); // Prioriza a entidade do serviço; se não existir tenta pelo cliente; fallback para 0 - if (selectedEntityCodServico.include(ticketData.codigo_cliente)) { - ticketData.entidades_id = selectedEntityCodServico; - logInfo(`Entidade encontrada por serviço: ${selectedEntityCodServico}`); + if (selectedEntityCodServico.name.include(ticketData.codigo_cliente)) { + ticketData.entidades_id = selectedEntityCodServico.id; + logInfo(`Entidade encontrada por serviço: ${selectedEntityCodServico.name}`); } else { const selectedEntityCodCliente = await glpiModel.selectEntityId(ticketData.codigo_cliente); if (selectedEntityCodCliente) { - ticketData.entidades_id = selectedEntityCodCliente; - logInfo(`Entidade encontrada por cliente: ${selectedEntityCodCliente}`); + ticketData.entidades_id = selectedEntityCodCliente.id; + logInfo(`Entidade encontrada por cliente: ${selectedEntityCodCliente.name}`); } else { ticketData.entidades_id = 0; - logInfo(`Nenhuma entidade encontrada para serviço="${ticketData.codigo_servico}" ou cliente="${ticketData.codigo_cliente}", atribuindo 0`); + logInfo(`Nenhuma entidade encontrada para serviço="${ticketData.codigo_servico}" ou cliente="${ticketData.codigo_cliente}", atribuindo contratos ativos`); } } await createGlpiTicket(ticketData); diff --git a/model/glpiModel.js b/model/glpiModel.js index 180246e..4df0025 100644 --- a/model/glpiModel.js +++ b/model/glpiModel.js @@ -66,8 +66,8 @@ class GlpiModel { static async selectEntityId(id) { - const query = `SELECT id FROM glpi_entities WHERE name LIKE ? OR name LIKE ? LIMIT 1;`; - const values = [`%${id} -%`, `%${id}-%`]; + const query = `SELECT id, name FROM glpi_entities WHERE name LIKE ? OR name LIKE ? LIMIT 1;`; + const values = [`${id} -%`, `${id}-%`]; try { const [rows] = await pool.execute(query, values); @@ -79,7 +79,7 @@ class GlpiModel { logInfo(`Entidade encontrada para: ${id}`); - return Number(rows[0].id); + return { id: Number(rows[0].id), name: rows[0].name }; } catch (err) { logError(`Erro ao buscar entidade: ${err}`); throw err;