Files
red_de_investigacion/routes/datos_proyecto_3.js
T
2020-01-21 16:06:32 -06:00

84 lines
3.2 KiB
JavaScript

const connection = require('../conf/connection');
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.post('/datos_proyecto_3', async(req, res) => {
if (req.body.financiamiento == undefined || req.body.presupuesto == undefined || req.body.entidades == undefined ||
req.body.producto == undefined || req.body.id_proyecto == undefined || req.body.no_registro == undefined) {
console.log("No estan los datos que requiere la appi");
res.status(400).json({ error: true, msj: "No estan los datos que requiere la appi" });
return;
}
req.body.no_registro = req.body.no_registro.replace(/'/g, "''");
for (let i = 0; i < req.body.entidades.length; i++) {
//console.log(req.body.entidades[i]);
req.body.entidades[i][1] = req.body.entidades[i][1].replace(/'/g, "''");
}
try {
let cad = `update proyecto set financiamiento='${req.body.financiamiento}', presupuesto=${req.body.presupuesto},
numero_registro='${req.body.no_registro}' where id_proyecto=${req.body.id_proyecto};`
let respuesta = query(cad);
await respuesta.catch(function(reason) {
console.log('entro al reason');
console.log(reason);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto' });
return;
})
} catch (error) {
console.log(error);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto-entidad' });
return;
}
try {
await req.body.entidades.forEach(async element => {
let cad = `insert into proyecto_entidad values (null, ${element[0]}, ${req.body.id_proyecto}, '${element[1]}');`
let respuesta = query(cad);
await respuesta.catch(function(reason) {
console.log(reason);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto-entidad' });
return;
})
});
} catch (error) {
console.log(error);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto-entidad' });
return;
}
try {
let i = 1;
await req.body.producto.forEach(async element => {
let cad = `insert into proyecto_producto values (null, ${req.body.id_proyecto},${element});`;
let respuesta = query(cad);
await respuesta.catch(function(reason) {
console.log(reason);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto-producto' });
return;
})
if (i == req.body.producto.length) {
res.status(200).json({ error: false, msj: 'exito' });
}
i++;
})
} catch (error) {
console.log(error);
res.status(400).json({ error: true, msj: 'Error al insertar en la base, proyecto-entidad' });
return;
}
});
module.exports = app;