REFACTOR: IF das entidades refatorado para receber id e name.
- processController e glpiModel alterados para receber id e name.
This commit is contained in:
parent
b88c6fdb9e
commit
c41c099e92
@ -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);
|
||||
|
||||
@ -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;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user