git-subtree-dir: coordenador git-subtree-mainline:facbe2e340git-subtree-split:ce7af94d55
27 lines
1.2 KiB
JavaScript
27 lines
1.2 KiB
JavaScript
// @requires config.js hash.js slack.js
|
|
// Roda depois de "Data Table - Buscar Envios Recentes" (fetch por report_date=hoje), que existe
|
|
// so pra trazer os registros de envio ja existentes; os dados do digest sao lidos por nome
|
|
// (mesmo padrao ja usado em Code - Comparar Legacy x V2).
|
|
const digestData = $('Code - Montar Digest Coordenacao').first().json; // { mensagem, selected, excluded, dateStr, digest, changedBlocked }
|
|
const config = digestData.selected.length ? digestData.selected[0].config : parseConfig($('Config - Coordenador GLPI v2').first().json);
|
|
const existingRecords = $input.all().map((item) => item.json);
|
|
|
|
// $execution.mode: 'manual' quando disparado pelo Manual Trigger, senao ('trigger' no
|
|
// Schedule Trigger) tratamos como execucao agendada. Nao inventa um mecanismo novo de deteccao.
|
|
const runType = $execution.mode === 'manual' ? 'manual' : 'scheduled';
|
|
const messageHash = computeMessageHash(digestData.mensagem);
|
|
const guard = evaluateSendGuard({
|
|
config, existingRecords, reportDate: digestData.dateStr, runType, messageHash,
|
|
});
|
|
|
|
return [{
|
|
json: {
|
|
mensagem: digestData.mensagem,
|
|
dateStr: digestData.dateStr,
|
|
runType,
|
|
messageHash,
|
|
shouldSend: guard.shouldSend,
|
|
reason: guard.reason,
|
|
},
|
|
}];
|