att
This commit is contained in:
@@ -1,62 +0,0 @@
|
||||
function defineStructure() {
|
||||
|
||||
}
|
||||
function onSync(lastSyncDate) {
|
||||
|
||||
}
|
||||
function createDataset(fields, constraints, sortFields) {
|
||||
|
||||
var dataset = DatasetBuilder.newDataset();
|
||||
|
||||
dataset.addColumn("nomeOcorrencia");
|
||||
|
||||
// Adicione dados para o dataset, exemplo:
|
||||
dataset.addRow(["Rádio Parada"]);
|
||||
dataset.addRow(["Câmera Parada"]);
|
||||
dataset.addRow(["Organização do Rack"]);
|
||||
dataset.addRow(["PDV Não Liga"]);
|
||||
dataset.addRow(["PDV Vencido"]);
|
||||
dataset.addRow(["PDV Lento"]);
|
||||
dataset.addRow(["Adquirir PDV"]);
|
||||
dataset.addRow(["Ativar PDV"]);
|
||||
dataset.addRow(["Computador de ER parado"]);
|
||||
dataset.addRow(["Nobreak Apitando"]);
|
||||
dataset.addRow(["Nobreak Não liga"]);
|
||||
dataset.addRow(["Manutenção Periódica do Nobreak"]);
|
||||
dataset.addRow(["Impressora 4200"]);
|
||||
dataset.addRow(["Impressora 5100"]);
|
||||
dataset.addRow(["Impressora Brother HL-L5102DW"]);
|
||||
dataset.addRow(["Impressora sem imprimir"]);
|
||||
dataset.addRow(["Mobshop Parado"]);
|
||||
dataset.addRow(["Mobpin Parado"]);
|
||||
dataset.addRow(["Ativar Mobshop"]);
|
||||
dataset.addRow(["Trocar Mobshop"]);
|
||||
dataset.addRow(["Solicitar Equipamentos"]);
|
||||
dataset.addRow(["Entregar Equipamentos"]);
|
||||
dataset.addRow(["Solicitar chip"]);
|
||||
dataset.addRow(["Email sem acesso"]);
|
||||
dataset.addRow(["Internet sem funcionar"]);
|
||||
dataset.addRow(["Resgatar Imagens"]);
|
||||
dataset.addRow(["Internet"]);
|
||||
dataset.addRow(["Outros"]);
|
||||
dataset.addRow(["Criar Email de colaborador"]);
|
||||
dataset.addRow(["Acesso a VPN"]);
|
||||
dataset.addRow(["Acesso as Pastas da Rede"]);
|
||||
dataset.addRow(["Protheus"]);
|
||||
dataset.addRow(["Instalação de Desktop"]);
|
||||
dataset.addRow(["Instalação de Equipamentos"]);
|
||||
dataset.addRow(["Instalação Câmera"]);
|
||||
dataset.addRow(["Instalação de Impressora"]);
|
||||
dataset.addRow(["Configuração de RB"]);
|
||||
dataset.addRow(["Redes"]);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return dataset;
|
||||
}
|
||||
|
||||
function onMobileSync(user) {
|
||||
|
||||
}
|
||||
@@ -3,71 +3,172 @@ function createDataset(fields, constraints, sortFields) {
|
||||
|
||||
dataset.addColumn("C8_FILIAL");
|
||||
dataset.addColumn("C8_NUM");
|
||||
dataset.addColumn("C8_NUMPRO");
|
||||
dataset.addColumn("C8_ITEM");
|
||||
dataset.addColumn("C8_PRODUTO");
|
||||
dataset.addColumn("C8_QUANT");
|
||||
dataset.addColumn("C8_PRECO");
|
||||
dataset.addColumn("C8_TOTAL");
|
||||
dataset.addColumn("C8_DATPRF");
|
||||
dataset.addColumn("C8_EMISSAO");
|
||||
dataset.addColumn("C8_FORNECE");
|
||||
dataset.addColumn("C8_LOJA");
|
||||
dataset.addColumn("C8_COND");
|
||||
dataset.addColumn("C8_NUMSC");
|
||||
dataset.addColumn("C8_ITEMSC");
|
||||
dataset.addColumn("C8_NUMPED");
|
||||
dataset.addColumn("C8_ITEMPED");
|
||||
dataset.addColumn("C8_DATPRF");
|
||||
dataset.addColumn("A2_NOME");
|
||||
dataset.addColumn("A2_NREDUZ");
|
||||
dataset.addColumn("B1_DESC");
|
||||
dataset.addColumn("B1_UM");
|
||||
dataset.addColumn("B1_TIPO");
|
||||
dataset.addColumn("C8_DESCRI");
|
||||
dataset.addColumn("STATUS");
|
||||
dataset.addColumn("data_consulta");
|
||||
dataset.addColumn("hora_consulta");
|
||||
dataset.addColumn("sucesso");
|
||||
dataset.addColumn("erro");
|
||||
|
||||
function emptyRow(sucesso, erro) {
|
||||
return [
|
||||
"", "", "", "", "", "", "", "", "", "", "",
|
||||
"", "", "", "", "", "", "", "", "", "", "",
|
||||
"", "", sucesso ? "true" : "false", erro || ""
|
||||
];
|
||||
}
|
||||
|
||||
function normalizeDoc(value) {
|
||||
var v = String(value || "").trim();
|
||||
return v.replace(/^0+/, "");
|
||||
}
|
||||
|
||||
function consultarCotacao(clientService, numeroCot) {
|
||||
var endpoints = [
|
||||
"/UF_MATA130/" + numeroCot,
|
||||
"/rest/UF_MATA130/" + numeroCot,
|
||||
"/rest/uf_mata130/" + numeroCot
|
||||
];
|
||||
|
||||
var ultimoErro = "";
|
||||
|
||||
for (var e = 0; e < endpoints.length; e++) {
|
||||
try {
|
||||
var data = {
|
||||
companyId: "1",
|
||||
serviceCode: "Postprod",
|
||||
endpoint: endpoints[e],
|
||||
method: "get",
|
||||
timeoutService: "60000",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
}
|
||||
};
|
||||
|
||||
var response = clientService.invoke(JSON.stringify(data));
|
||||
if (!response || !response.getResult()) {
|
||||
ultimoErro = "Sem resposta da API";
|
||||
continue;
|
||||
}
|
||||
|
||||
var result = JSON.parse(response.getResult());
|
||||
if (result && result.sucesso && result.cotacoes && result.cotacoes.length) {
|
||||
return {
|
||||
sucesso: true,
|
||||
endpoint: endpoints[e],
|
||||
result: result
|
||||
};
|
||||
}
|
||||
|
||||
if (result && !result.sucesso && result.message) {
|
||||
ultimoErro = String(result.message);
|
||||
} else {
|
||||
ultimoErro = "Cotacao sem itens retornados";
|
||||
}
|
||||
} catch (errEndpoint) {
|
||||
ultimoErro = String(errEndpoint);
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
sucesso: false,
|
||||
erro: ultimoErro || "Falha ao consultar cotacao"
|
||||
};
|
||||
}
|
||||
|
||||
try {
|
||||
var numeroCot = null;
|
||||
var numeroCot = "";
|
||||
if (constraints) {
|
||||
for (var i = 0; i < constraints.length; i++) {
|
||||
if (constraints[i].fieldName == "numCotacao") {
|
||||
numeroCot = constraints[i].initialValue;
|
||||
numeroCot = String(constraints[i].initialValue || "").trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!numeroCot) {
|
||||
dataset.addRow(emptyRow(false, "Numero da cotacao nao informado"));
|
||||
return dataset;
|
||||
}
|
||||
|
||||
var clientService = fluigAPI.getAuthorizeClientService();
|
||||
var data = {
|
||||
companyId: "1",
|
||||
serviceCode: "Postprod",
|
||||
endpoint: "/rest/uf_mata131", // sem número -> ele retorna todos
|
||||
method: "get",
|
||||
timeoutService: "60000"
|
||||
};
|
||||
var retorno = consultarCotacao(clientService, numeroCot);
|
||||
if (!retorno.sucesso) {
|
||||
dataset.addRow(emptyRow(false, retorno.erro));
|
||||
return dataset;
|
||||
}
|
||||
|
||||
var vo = clientService.invoke(JSON.stringify(data));
|
||||
if (vo && vo.getResult()) {
|
||||
var objData = JSON.parse(vo.getResult());
|
||||
var itens = objData["solicitacoes"];
|
||||
var result = retorno.result;
|
||||
var cotacoes = result.cotacoes || [];
|
||||
if (!cotacoes.length) {
|
||||
dataset.addRow(emptyRow(false, "Cotacao sem itens retornados"));
|
||||
return dataset;
|
||||
}
|
||||
|
||||
if (itens && itens.length > 0) {
|
||||
for (var i = 0; i < itens.length; i++) {
|
||||
var item = itens[i];
|
||||
var filtro = normalizeDoc(numeroCot);
|
||||
var adicionados = 0;
|
||||
for (var j = 0; j < cotacoes.length; j++) {
|
||||
var item = cotacoes[j] || {};
|
||||
|
||||
// 🔎 se veio constraint, filtra pelo C8_NUM
|
||||
if (numeroCot && item["C8_NUM"] != numeroCot) {
|
||||
continue;
|
||||
}
|
||||
|
||||
dataset.addRow([
|
||||
item["C8_FILIAL"] || "",
|
||||
item["C8_NUM"] || "",
|
||||
item["C8_ITEM"] || "",
|
||||
item["C8_PRODUTO"] || "",
|
||||
item["C8_QUANT"] || "",
|
||||
item["C8_PRECO"] || "",
|
||||
item["C8_TOTAL"] || "",
|
||||
item["C8_DATPRF"] || "",
|
||||
item["C8_EMISSAO"] || "",
|
||||
item["C8_NUMSC"] || "",
|
||||
item["B1_DESC"] || "",
|
||||
item["B1_UM"] || "",
|
||||
item["B1_TIPO"] || ""
|
||||
]);
|
||||
}
|
||||
var numeroItem = String(item.C8_NUM || "").trim();
|
||||
if (filtro && normalizeDoc(numeroItem) !== filtro) {
|
||||
continue;
|
||||
}
|
||||
|
||||
dataset.addRow([
|
||||
item.C8_FILIAL || "",
|
||||
numeroItem,
|
||||
item.C8_NUMPRO || "",
|
||||
item.C8_ITEM || "",
|
||||
item.C8_PRODUTO || "",
|
||||
item.C8_QUANT || "",
|
||||
item.C8_PRECO || "",
|
||||
item.C8_TOTAL || "",
|
||||
item.C8_FORNECE || "",
|
||||
item.C8_LOJA || "",
|
||||
item.C8_COND || "",
|
||||
item.C8_NUMSC || "",
|
||||
item.C8_ITEMSC || "",
|
||||
item.C8_NUMPED || "",
|
||||
item.C8_ITEMPED || "",
|
||||
item.C8_DATPRF || "",
|
||||
item.A2_NOME || "",
|
||||
item.A2_NREDUZ || "",
|
||||
item.B1_DESC || "",
|
||||
item.B1_UM || "",
|
||||
item.C8_DESCRI || "",
|
||||
item.STATUS || "",
|
||||
result.data_consulta || "",
|
||||
result.hora_consulta || "",
|
||||
"true",
|
||||
""
|
||||
]);
|
||||
adicionados++;
|
||||
}
|
||||
|
||||
if (adicionados === 0) {
|
||||
dataset.addRow(emptyRow(false, "Numero da cotacao nao localizado no retorno"));
|
||||
}
|
||||
} catch (e) {
|
||||
dataset.addRow(["Erro: " + e.message]);
|
||||
dataset.addRow(emptyRow(false, "Erro ao consultar cotacao: " + e));
|
||||
}
|
||||
|
||||
return dataset;
|
||||
|
||||
@@ -22,9 +22,62 @@ function createDataset(fields, constraints, sortFields) {
|
||||
dataset.addColumn("data_consulta");
|
||||
dataset.addColumn("hora_consulta");
|
||||
dataset.addColumn("sucesso");
|
||||
dataset.addColumn("COTACOES_JSON");
|
||||
dataset.addColumn("COTACAO_ERRO");
|
||||
|
||||
function emptyRow() {
|
||||
return ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "false"];
|
||||
return ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "false", "", ""];
|
||||
}
|
||||
|
||||
function consultarCotacao(clientService, cotacao) {
|
||||
var endpoints = [
|
||||
"/UF_MATA130/" + cotacao,
|
||||
"/rest/UF_MATA130/" + cotacao,
|
||||
"/rest/uf_mata130/" + cotacao
|
||||
];
|
||||
|
||||
var ultimoErro = "";
|
||||
for (var i = 0; i < endpoints.length; i++) {
|
||||
try {
|
||||
var dataCot = {
|
||||
companyId: "1",
|
||||
serviceCode: "Postprod",
|
||||
endpoint: endpoints[i],
|
||||
method: "get",
|
||||
timeoutService: "60000",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
}
|
||||
};
|
||||
|
||||
var responseCot = clientService.invoke(JSON.stringify(dataCot));
|
||||
if (!responseCot || !responseCot.getResult()) {
|
||||
ultimoErro = "Sem resposta ao consultar cotacao";
|
||||
continue;
|
||||
}
|
||||
|
||||
var resultCot = JSON.parse(responseCot.getResult());
|
||||
if (resultCot && resultCot.sucesso && resultCot.cotacoes && resultCot.cotacoes.length > 0) {
|
||||
return {
|
||||
sucesso: true,
|
||||
cotacoes: resultCot.cotacoes
|
||||
};
|
||||
}
|
||||
|
||||
if (resultCot && resultCot.message) {
|
||||
ultimoErro = String(resultCot.message);
|
||||
} else {
|
||||
ultimoErro = "Cotacao sem itens retornados";
|
||||
}
|
||||
} catch (eCot) {
|
||||
ultimoErro = String(eCot);
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
sucesso: false,
|
||||
erro: ultimoErro || "Falha ao consultar cotacao"
|
||||
};
|
||||
}
|
||||
|
||||
try {
|
||||
@@ -66,6 +119,17 @@ function createDataset(fields, constraints, sortFields) {
|
||||
cotacao = "";
|
||||
}
|
||||
|
||||
var cotacoesJson = "";
|
||||
var cotacaoErro = "";
|
||||
if (cotacao) {
|
||||
var consultaCot = consultarCotacao(clientService, cotacao);
|
||||
if (consultaCot.sucesso) {
|
||||
cotacoesJson = JSON.stringify(consultaCot.cotacoes || []);
|
||||
} else {
|
||||
cotacaoErro = consultaCot.erro || "";
|
||||
}
|
||||
}
|
||||
|
||||
dataset.addRow([
|
||||
sc.C1_FILIAL || "",
|
||||
sc.C1_NUM || "",
|
||||
@@ -87,7 +151,9 @@ function createDataset(fields, constraints, sortFields) {
|
||||
sc.STATUS || "",
|
||||
result.data_consulta || "",
|
||||
result.hora_consulta || "",
|
||||
"true"
|
||||
"true",
|
||||
cotacoesJson,
|
||||
cotacaoErro
|
||||
]);
|
||||
} else {
|
||||
dataset.addRow(emptyRow());
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
function defineStructure() {
|
||||
addColumn("codigo");
|
||||
addColumn("nome");
|
||||
|
||||
}
|
||||
function onSync(lastSyncDate) {
|
||||
|
||||
}
|
||||
function createDataset(fields, constraints, sortFields) {
|
||||
|
||||
var dataset = DatasetBuilder.newDataset();
|
||||
var dataSource = "/jdbc/ProtheusDSs"; // Nome da conexão cadastrada no Fluig
|
||||
var ic = new javax.naming.InitialContext();
|
||||
var ds = ic.lookup(dataSource);
|
||||
var conn = ds.getConnection();
|
||||
var stmt = null;
|
||||
var rs = null;
|
||||
|
||||
try {
|
||||
log.info("Iniciando execução do dataset...");
|
||||
|
||||
var sql = "SELECT a2_cod, a2_nome FROM SA2010 where D_E_L_E_T_ = '';"
|
||||
log.info("Query SQL: " + sql);
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
rs = stmt.executeQuery();
|
||||
|
||||
dataset.addColumn("codigo");
|
||||
dataset.addColumn("nome");
|
||||
|
||||
var encontrouResultados = false;
|
||||
while (rs.next()) {
|
||||
encontrouResultados = true;
|
||||
log.info("Registro encontrado: " + rs.getString("a2_cod") + " - " + rs.getString("a2_nome"));
|
||||
dataset.addRow([rs.getString("a2_cod"), rs.getString("a2_nome")]);
|
||||
}
|
||||
|
||||
if (!encontrouResultados) {
|
||||
log.info("Nenhum registro encontrado para a consulta.");
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
log.error("Erro ao executar dataset: " + e.message);
|
||||
} finally {
|
||||
try {
|
||||
if (rs) rs.close();
|
||||
if (stmt) stmt.close();
|
||||
if (conn) conn.close();
|
||||
} catch (e) {
|
||||
log.error("Erro ao fechar recursos: " + e.message);
|
||||
}
|
||||
}
|
||||
|
||||
return dataset;
|
||||
|
||||
}
|
||||
|
||||
function onMobileSync(user) {
|
||||
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
function defineStructure() {
|
||||
|
||||
}
|
||||
function onSync(lastSyncDate) {
|
||||
|
||||
}
|
||||
function createDataset(fields, constraints, sortFields) {
|
||||
|
||||
var dataset = DatasetBuilder.newDataset();
|
||||
|
||||
dataset.addColumn("nomeOcorrenciaManutencao");
|
||||
|
||||
// Adicione dados para o dataset, exemplo:
|
||||
dataset.addRow(["Substituição de lâmpada AR 111"]);
|
||||
dataset.addRow(["Reparo em fita de led ( Serviço de solda )"]);
|
||||
dataset.addRow(["Fonte de 5ap para fita de led dos móveis"]);
|
||||
dataset.addRow(["Letreiro sem funcionar"]);
|
||||
dataset.addRow(["Disjuntor desarmando"]);
|
||||
dataset.addRow(["Tomadas do caixa sem funcionar"]);
|
||||
dataset.addRow(["Troca de lâmpadas tubular branco frio - 6500k 9w ER salão de vendas"]);
|
||||
dataset.addRow(["Substituição lâmpada bulbo 15w estoque"]);
|
||||
dataset.addRow(["Substituição de Painel de led 62,5x62,5 40w 6500k branco frio (ER,CD )"]);
|
||||
dataset.addRow(["Interruptor sem funcionar"]);
|
||||
dataset.addRow(["Painel de led 30x30 24W 6500k ( wc, copa )"]);
|
||||
dataset.addRow(["Ponto elétrico ( Copa, estoque, pdv , vendas)"]);
|
||||
dataset.addRow(["Visita emergencial ( Disjuntor geral desarmando )"]);
|
||||
dataset.addRow(["Fonte de 10ap para letreiro"]);
|
||||
dataset.addRow(["Central Nobreak 2 Contr. Motor Dc Porta Aço Enrolar Aut. 24v"]);
|
||||
dataset.addRow(["Central 2 Contr. Motor AC Porta Aço Enrolar Aut. 24v"]);
|
||||
dataset.addRow(["Motor De Porta De Enrolar De Aço Ac de 100 á 500 Kg 220v"]);
|
||||
dataset.addRow(["Motor P/porta De Aço De Enrolar Dc 100 á 800 kg 220v C/ com central Nobreak"]);
|
||||
dataset.addRow(["Manutenção preventiva em porta de enrolar automática"]);
|
||||
dataset.addRow(["Serviço emergencial porta de enrolar não quer abrir ou descer"]);
|
||||
dataset.addRow(["Controle para porta de enrolar automática + configuração"]);
|
||||
dataset.addRow(["Ar-condicionado"]);
|
||||
dataset.addRow(["Vazamento no estoque"]);
|
||||
dataset.addRow(["Torneira gotejando ( copa,wc )"]);
|
||||
dataset.addRow(["Vaso sanitário entupido"]);
|
||||
dataset.addRow(["Pintura da fachada"]);
|
||||
dataset.addRow(["Pintura do estoque"]);
|
||||
dataset.addRow(["Pintura geral da loja"]);
|
||||
dataset.addRow(["Caixa de gordura entupida"]);
|
||||
dataset.addRow(["Telhado com vazamento"]);
|
||||
dataset.addRow(["Instalação de porta copo, papel toalha etc..."]);
|
||||
dataset.addRow(["Reparo de gesso"]);
|
||||
dataset.addRow(["Fechadura para porta de vidro"]);
|
||||
dataset.addRow(["Puxador da porta caindo ( vidro, retaguarda, copa etc..."]);
|
||||
dataset.addRow(["Porta de vidro arrastando"]);
|
||||
dataset.addRow(["Cadeira de make com defeito"]);
|
||||
dataset.addRow(["Porta dos móveis caindo"]);
|
||||
dataset.addRow(["Confecção de móvel ( Copa, retaguarda etc...)"]);
|
||||
dataset.addRow(["Outros"]);
|
||||
dataset.addRow(["Demarcações"]);
|
||||
|
||||
return dataset;
|
||||
}
|
||||
|
||||
|
||||
|
||||
function onMobileSync(user) {
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user