Files
red_de_investigacion/routes/datos_modificar.js
T
2020-01-28 12:50:23 -06:00

172 lines
6.1 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.get('/datos_modificar', async(req, res) => {
const id = req.query.id_proyecto;
//console.log(id);
let respuesta = {};
try {
let cad = `select * from proyecto where id_proyecto=${id}`;
let r = await query(cad);
respuesta.proyecto = r;
} catch {
return;
}
try {
let campo = '';
let cad = `select nombre,c.id_campo from campo_conocimiento as c inner join proyecto_campo as p where p.id_proyecto=${id} and p.id_campo=c.id_campo;`;
let r = await query(cad);
let reg = [];
r.forEach(element => {
reg.push(element.id_campo);
})
respuesta.campo_proyecto = reg;
} catch {
return;
}
try {
let cad = `select objetivo_texto from proyecto_objetivo where id_proyecto=${id} ;`;
let r = await query(cad);
respuesta.objetivo = r;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
try {
let cad = `select p.id_producto from producto as p inner join proyecto_producto as pp where pp.id_proyecto=${id} and p.id_producto=pp.id_producto;`;
let r = await query(cad);
let aux = [];
r.forEach(element => {
// console.log(element);
aux.push(element.id_producto);
})
respuesta.producto = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
//this.entidades_seleccionadas.push({id_entidad: null, nombre: 'Seleccione la Entidad', nombre_de_entidad:''});
try {
let cad = `select p.id_entidad, e.tipo, p.nombre_entidad from entidades as e inner join proyecto_entidad as p where p.id_proyecto=${ id } and p.id_entidad=e.id_entidad;`;
let r = await query(cad);
//console.log(r);
let aux = [];
r.forEach(element => {
let con = {};
con.id_entidad = element.id_entidad;
con.nombre = element.tipo;
con.nombre_de_entidad = element.nombre_entidad;
aux.push(con);
})
//console.log("entidad ", r);
respuesta.entidad = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
// alumnos_internos:[{nombre: '', participacion:'Tipo de participación'}],
try {
let cad = `select nombre, tipo_particicipacion from persona as p inner join proyecto_entidad as p_e where p_e.nombre_entidad = "FES-Acatlan"and p_e.id_pro_entidad = p.id_proyecto_entidad and p.tipo = "alumno"and p_e.id_proyecto = ${ id };`;
let r = await query(cad);
let aux = [];
r.forEach(element => {
let con = {};
con.nombre = element.nombre;
con.participacion = element.tipo_particicipacion;
aux.push(con);
})
respuesta.alumnos_internos = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
//alumnos_externos:[{nombre: '', participacion: 'Tipo de participación', entidad:'Seleccione Entidad',id_entidad:null}],
try {
let cad = `select nombre, tipo_particicipacion, nombre_entidad, id_pro_entidad from persona as p inner join proyecto_entidad as p_e inner join entidades as e where e.id_entidad = p_e.id_entidad and p_e.nombre_entidad != "FES-Acatlan"and p_e.id_pro_entidad = p.id_proyecto_entidad and p.tipo = "alumno" and p_e.id_proyecto = ${ id };`;
let r = await query(cad);
let aux = [];
r.forEach(element => {
let con = {};
con.nombre = element.nombre;
con.participacion = element.tipo_particicipacion;
con.entidad = element.nombre_entidad;
con.id_entidad = element.id_pro_entidad;
aux.push(con);
})
respuesta.alumnos_externos = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
// profesores_internos:[{nombre: '', participacion: 'Tipo de participación', n:1, use: false }],
try {
let cad = `select nombre, tipo_particicipacion from persona as p inner join proyecto_entidad as p_e where p_e.nombre_entidad = "FES-Acatlan"and p_e.id_pro_entidad = p.id_proyecto_entidad and p.tipo = "profesor"and p_e.id_proyecto = ${ id };`;
let r = await query(cad);
let aux = []
//console.log(r);
for (let i = 0; i < r.length; i++) {
let con = {};
con.nombre = r[i].nombre;
con.participacion = r[i].tipo_particicipacion;
con.n = i + 1;
con.use = true;
aux.push(con);
}
respuesta.profesores_internos = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
//profesores_externos:[{nombre: '', participacion: 'Tipo de participación', entidad:'Seleccione Entidad',id_entidad:null}],
try {
let cad = `select nombre, tipo_particicipacion, nombre_entidad, id_pro_entidad from persona as p inner join proyecto_entidad as p_e inner join entidades as e where e.id_entidad = p_e.id_entidad and p_e.nombre_entidad != "FES-Acatlan"and p_e.id_pro_entidad = p.id_proyecto_entidad and p.tipo = "profesor"and p_e.id_proyecto = ${ id };`;
let r = await query(cad);
let aux = [];
r.forEach(element => {
let con = {};
con.nombre = element.nombre;
con.participacion = element.tipo_particicipacion;
con.entidad = element.nombre_entidad;
con.id_entidad = element.id_pro_entidad;
aux.push(con);
})
respuesta.profesores_externos = aux;
} catch (error) {
res.status(400).json({ msj: "MALO", res: error })
}
res.status(200).json({ msj: "exito", data: respuesta })
});
module.exports = app;