71 lines
2.3 KiB
JavaScript
71 lines
2.3 KiB
JavaScript
const connection = require('../conf/connection.js');
|
|
const express = require('express');
|
|
|
|
|
|
var app = express()
|
|
|
|
function query(consulta) {
|
|
return new Promise(function(resolve, reject) {
|
|
connection.query(`${consulta}`, (error, results, files) => {
|
|
if (error) reject(error);
|
|
resolve(results);
|
|
});
|
|
})
|
|
}
|
|
|
|
app.get('/getFactura', async(req, res) => {
|
|
try {
|
|
|
|
let idPersona = req.query.idPersona;
|
|
|
|
let sqlString = `SELECT * FROM persona WHERE validarPago = true and requiereFactura = true order by participacion;`;
|
|
let pagados = await query(sqlString);
|
|
|
|
//console.log(pagados);
|
|
|
|
|
|
|
|
|
|
|
|
for(indice in pagados){
|
|
|
|
sqlString = `SELECT * FROM asistencia where idPersona = ${pagados[indice].idPersona};`;
|
|
let asistenciaPersona = await query ( sqlString );
|
|
|
|
let actividad = [];
|
|
let estudiosPractica = [];
|
|
let recorridos = [];
|
|
|
|
for( indiceAsistencia in asistenciaPersona ){
|
|
sqlString = `SELECT * FROM evento where idEvento = ${ asistenciaPersona[indiceAsistencia].idEvento }; `;
|
|
let eventoPersona = await query ( sqlString );
|
|
|
|
if( eventoPersona[0].tipoEvento === 'Actividad' ) actividad.push(eventoPersona[0]);
|
|
if( eventoPersona[0].tipoEvento === 'Estudios de practica' ) estudiosPractica.push(eventoPersona[0]);
|
|
if( eventoPersona[0].tipoEvento === 'Recorridos' ) recorridos.push(eventoPersona[0]);
|
|
|
|
}
|
|
|
|
pagados[indice].actividad = actividad;
|
|
pagados[indice].estudiosPractica = estudiosPractica;
|
|
pagados[indice].recorridos = recorridos;
|
|
|
|
sqlString = `Select * from factura where idPersona = ${pagados[indice].idPersona}`;
|
|
let facturaDatos = await query ( sqlString );
|
|
pagados[indice].facturaDatos = facturaDatos;
|
|
|
|
}
|
|
|
|
res.status(200).json({error: false, msj: '', datos: pagados });
|
|
|
|
|
|
}
|
|
catch(error){
|
|
console.log(error);
|
|
res.status(400).json({ error: true, msj: `Sucedio un error al traer a las personas inscritas msj: ${error}` });
|
|
return;
|
|
}
|
|
});
|
|
|
|
module.exports = app;
|