Agregado toping en los menus

This commit is contained in:
Pablinux
2025-05-25 12:10:15 -05:00
parent c7aabd4d1f
commit 0b8549c63c
53 changed files with 3235 additions and 2916 deletions

View File

@@ -1,5 +1,5 @@
const controlador = {};
const axios = require('axios').default;
//const axios = require('axios').default;
controlador.verClientesJsonApp = (req, res) => {
req.getConnection((err, conn) => {
@@ -173,35 +173,59 @@ controlador.buscarCli_sri = (req, res) => {
switch (selc) {
case 0:
axios.post(arrayUrl[selc] + "?ruc=" + idCli)
.then(function (resp_sri) {
//console.log(resp_sri.data);
//var consulta = {"resp_consulta":resp_sri};
var json = { nombre: "NOMBRE", empresa: "empresa", direccion: "Santo Domingo" };
var consulta = { "resp_consulta": json };
fetch(arrayUrl[selc] + "?ruc=" + idCli, {
method: 'POST',
})
.then(resp => resp.text()) // Si esperas JSON, usa .json() en su lugar
.then(data => {
// Aquí puedes usar la respuesta real si lo deseas: console.log(data);
const json = { nombre: "NOMBRE", empresa: "empresa", direccion: "Santo Domingo" };
const consulta = { "resp_consulta": json };
res.json(json);
})
.catch(error => {
console.error("Error al hacer fetch:", error);
res.status(500).json({ error: 'Error al consultar servicio remoto' });
});
break;
case 1:
axios({
fetch(arrayUrl[selc] + "?ID_CLIENTE=" + idCli, {
method: 'POST',
url: arrayUrl[selc]+"?ID_CLIENTE="+idCli,
})
.then(function (resp_sri) {
console.log(resp_sri.data);
res.json(resp_sri.data);
return resp_sri.json(); // Parsea la respuesta como JSON
})
.then(function (data) {
console.log(data);
// Asumiendo que 'res' es el objeto de respuesta de Express o similar,
// puedes enviarle los datos directamente.
// Si 'res' no está disponible en este contexto, necesitarás ajustar esta línea.
// Por ejemplo, si estás en el lado del cliente, solo necesitarías 'console.log(data)'.
res.json(data);
})
.catch(function (error) {
console.error('Hubo un problema con la petición Fetch:', error);
});
break;
case 2:
axios.post(arrayUrl[selc] + "?ruc=" + idCli)
fetch(arrayUrl[selc] + "?ruc=" + idCli, {
method: 'POST', // fetch por defecto es GET, así que especificamos POST
})
.then(function (resp_sri) {
console.log(resp_sri.data);
var data_toArray = resp_sri.data;
return resp_sri.text(); // Usamos .text() porque la respuesta se va a dividir por '***'
})
.then(function (data_toArray) {
console.log(data_toArray);
let arr = data_toArray.split('***');
console.log(arr);
var obj_json = { nombre: arr[1], empresa: arr[2], direccion: arr[9] };
//var consulta = {"resp_consulta":json};
res.json(obj_json);
res.json(obj_json); // Enviamos el JSON al cliente
})
.catch(function (error) {
console.error('Hubo un problema con la petición Fetch:', error);
// Podrías enviar un error al cliente si 'res' está disponible
// res.status(500).send('Error en la consulta');
});
break;
@@ -235,34 +259,44 @@ controlador.api_consultaCliente = (req, res) => {
console.log("Encontrado en Servidor Local:");
res.json(rows);
} else {
axios.post(arrayUrl[1] + "?ID_CLIENTE=" + idCli)
fetch(arrayUrl[1] + "?ID_CLIENTE=" + idCli, {
method: 'POST', // Especificamos el método POST
})
.then(function (resp_sri) {
// Si esperamos un array de objetos JSON, usamos .json()
return resp_sri.json();
})
.then(function (resp) {
console.log("Encontrado en Servidor SRI:");
console.log(resp_sri.data);
var resp = resp_sri.data;
if(resp.length > 0){
var obj_json = {
nombre: resp[0].CLI_NOMBRE,
nombre_comercial: resp[0].CLI_NOMBRE,
console.log(resp);
if (resp.length > 0) {
var obj_json = {
nombre: resp[0].CLI_NOMBRE,
nombre_comercial: resp[0].CLI_NOMBRE, // Se mantiene si es el mismo valor
direccion: resp[0].CLI_DIRECCION,
ciudad:"", telefono:
resp[0].CLI_TELEFONOS,
email: resp[0].CLI_EMAIL };
res.json([obj_json]);
}else{
res.json({"RESP":"DATA NO ENCONTRADA"});
//axios.post(arrayUrl[1] + "?ID_CLIENTE=" + idCli).then(function (resp_sri) {});
ciudad: "", // Este campo parece venir vacío, se mantiene
telefono: resp[0].CLI_TELEFONOS,
email: resp[0].CLI_EMAIL
};
res.json([obj_json]); // Enviamos un array con el objeto JSON
} else {
res.json({ "RESP": "DATA NO ENCONTRADA" });
// La línea comentada de Axios que hacía otra petición sin efecto se omite aquí.
}
}).catch(function (err) {
console.log(err);
})
.catch(function (err) {
console.error("Hubo un error con la petición Fetch:", err);
// Puedes enviar un error al cliente si lo consideras necesario, por ejemplo:
// res.status(500).json({ "RESP": "ERROR EN EL SERVIDOR" });
});
}
});
});
}
async function consulta_clientes(idCli) {
if(false){
/*async function consulta_clientes(idCli) {
if (false) {
axios.post(arrayUrl[1] + "?ID_CLIENTE=" + idCli)
.then(function (resp_sri) {
console.log("Encontrado en Servidor SRI:");
@@ -277,7 +311,7 @@ async function consulta_clientes(idCli) {
console.log(err);
});
}
}
}*/
module.exports = controlador;