Files
ASINEA-API/routes/get_persona.js
T
2020-03-09 21:46:56 -06:00

104 lines
3.0 KiB
JavaScript

const connection = require('../conf/connection.js');
const express = require('express');
const bcrypt = require('bcrypt');
const fs = require('fs');
var app = express()
function query(consulta) {
return new Promise(function(resolve, reject) {
connection.query(`${consulta}`, (error, results, files) => {
if (error) reject(error);
resolve(results);
});
})
}
function depurado(cadena) {
if (cadena != null) {
cadena = cadena.replace(/'/g, "''");
cadena = cadena.replace(/;/g, "m");
return cadena;
} else
return null;
}
app.get('/get_persona', async(req, res) => {
try {
//console.log(req.query);
let id_persona = req.query.id_persona;
let cad = `select * from persona where id_persona=${id_persona};`;
//console.log(cad);
let respuesta = query(cad);
// console.log(respuesta);
let ans = {}
respuesta.then(async r => {
// console.log(r, r.length);
ans.persona = r[0];
ans.persona.comprobante_pago = false;
ans.persona.carta_aceptacion = false;
ans.persona.factura=false;
let n_cad=`select * from factura where id_persona=${id_persona};`;
let n_ans=await query(n_cad);
if(n_ans.length>0)
ans.persona.factura=true;
if (fs.existsSync(`./files/carta_aceptacion-${id_persona}.docx`)) {
ans.persona.carta_aceptacion = true;
}
if (fs.existsSync(`./files/comprobante_pago-${id_persona}.docx`)) {
ans.persona.comprobante_pago = true;
}
console.log("carta: ", ans.persona.carta_aceptacion);
console.log("comprobante: ", ans.persona.comprobante_pago);
delete(ans.persona.password);
cad = `select asi.*, e.* from asistencia as asi inner join evento as e where asi.id_persona=${id_persona} and e.id_evento=asi.id_evento;`;
n_ans = query(cad);
n_ans.then(async n => {
for (let i = 0; i < n.length; i++) {
//console.log(n);
await delete(n[i].cupo);
}
ans.evento = n;
return res.status(200).json({ error: false, data: ans });
}).catch(err => {
console.log(err);
res.status(400).json({ error: true, msj: "error al elegir todos los eventos", type: err });
return;
})
}
).catch(err => {
console.log(err);
res.status(400).json({ error: true, msj: "Error al seleccionar a la persona", type: err });
return;
})
} catch (err) {
console.log("afuera ", err);
res.status(400).json({ error: true, msj: err });
return;
}
});
module.exports = app;