diff --git a/funtions.js b/funtions.js index 2420cc2..8d4783c 100644 --- a/funtions.js +++ b/funtions.js @@ -191,28 +191,33 @@ async function ConsultaClaves(cedula, chang = null) { const fs = require('fs'); async function ConsultaTasaRecoleccion(cedula, index) { return new Promise((resolve) => { - const array = { ok: false, data: [], msg: null }; + const result = { ok: false, data: [], msg: null }; + try { const data = fs.readFileSync('trb.json', 'utf8'); const json = JSON.parse(data); + if (!Array.isArray(json)) { - array.msg = 'El JSON no es un arreglo'; - return resolve(array); + result.msg = 'El JSON no es un arreglo'; + return resolve(result); } - const response = json.find( + + const response = json.filter( item => String(item.documento).trim() === String(cedula).trim() ); - if (response) { - array.ok = true; - array.data = response; - array.msg = 'Consulta exitosa'; + + if (response.length > 0) { + result.ok = true; + result.data = response; // ← ahora es un array + result.msg = 'Consulta exitosa'; } else { - array.msg = 'No se encontraron valores disponibles'; + result.msg = 'No se encontraron valores disponibles'; } - resolve(array); + + resolve(result); } catch (error) { - array.msg = error.message; - resolve(array); + result.msg = error.message; + resolve(result); } }); } diff --git a/metodos.js b/metodos.js index 4252fd9..fd2853b 100644 --- a/metodos.js +++ b/metodos.js @@ -604,20 +604,36 @@ async function Func_MiTasaRecoleccionBasura(agent, req, res, lery) { } if (data_context != null && data_context != "") { let legion = await funcion.ConsultaTasaRecoleccion(data_context.cedula, lery); + console.log(legion); if (legion['ok'] == true) { - // let count = legion['data'].length; - var msger = '*Tasa de recolección de basura CC: ' + legion['data'].cc + '* (' + legion['data'].direccion + ') \n\n'; - if (legion['data'].documento != undefined) { - let suma = 0; - let meses_arr = ['Enero 2026', 'Feberero 2026', 'Marzo 2026']; - meses_arr.forEach(element => { - suma += Number(legion['data'].promedio); - msger = msger + '🚛 ' + element + ' : *$' + legion['data'].promedio + '*\n'; + let count = legion['data'].length; + var msger = ''; + if (count > 0) { + legion['data'].forEach(elem_legio => { + let suma = 0; + console.log(elem_legio); + msger = msger + '\n*Tasa de recolección de basura CC: ' + elem_legio.cc + '* (' + elem_legio.direccion + ') \n'; + let meses_arr = ['Enero 2026', 'Feberero 2026', 'Marzo 2026']; + meses_arr.forEach(element => { + suma += Number(elem_legio.promedio); + msger = msger + '🚛 ' + element + ' : *$' + elem_legio.promedio + '*\n'; + }); + msger = msger + '💵 *Total a pagar: $' + suma.toFixed(2) + '*\n'; }); - msger = msger + '\n💵 *Total a pagar: $' + suma.toFixed(2) + '*'; + } else { - msger = msger + "No se encontrarón valores pendientes de pago"; + } + // console.log(count); + // if (legion['data'].documento != undefined) { + // meses_arr.forEach(element => { + // suma += Number(legion['data'].promedio); + // msger = msger + '🚛 ' + element + ' : *$' + legion['data'].promedio + '*\n'; + // }); + // msger = msger + '\n💵 *Total a pagar: $' + suma.toFixed(2) + '*'; + // } else { + // msger = msger + "No se encontrarón valores pendientes de pago"; + // } agent.add(msger); return Fun_RetornarAlinicio(agent, req, res, funcion.conver_name(data_context.name)); } else {