public static Proyecto consultarProyecto(String id) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Object[][] resultSet = DbConnection.consultar(new Consulta().Select("*").From("Proyecto").Where(String.Format("id_proyecto = {0}", id)).Get(), 3); Proyecto proyecto = new Proyecto(); try { String[] proyAttrib = Array.ConvertAll(resultSet[0], p => (p ?? String.Empty).ToString()); proyecto.id = proyAttrib[0]; proyecto.nombre = proyAttrib[1]; Usuario administrador = DAOUsuario.consultarUsuario(proyAttrib[2]); if (administrador != null) { administrador.isAdministrador = true; proyecto.administradorProyecto = administrador; } asignarMiembros(proyecto); proyecto.secciones = consultarTarea(id); } catch (Exception e) { Console.WriteLine(e.StackTrace); } return(proyecto); }
private static void consultarAvances(Tarea tarea) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Consulta consulta = new Consulta() .Select("a.id_avance, fecha, horasdedicadas,descripcion,creador") .From("avance a inner join avanceportarea t on (a.id_avance = t.id_avance)") .Where("t.id_tarea = '" + tarea.codigo + "'"); Object[][] resultSet = DbConnection.consultar(consulta.Get(), 5); for (int i = 0; i < resultSet.Count(); i++) { Avance a = new Avance(); String[] result = Array.ConvertAll(resultSet[i], p => (p ?? String.Empty).ToString()); a.id = result[0]; DateTime fchEntrega; string fchs = result[1].Split()[0]; try { a.Fecha = DateTime.ParseExact(fchs, "d/M/yyyy", CultureInfo.InvariantCulture); } catch (Exception e) { Console.WriteLine(e.Message); } a.HorasDedicadas = int.Parse(result[2]); a.descripción = result[3]; a.creador = DAOUsuario.consultarUsuario(result[4]); a.nbrActividad = tarea.nombre; consultarEvidencias(a); tarea.avances.Add(a); } }
private static List <Tarea> consultarTarea(string proyecto) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); List <Tarea> result = new List <Tarea>(); Object[][] tareas = DbConnection.consultar(new Consulta().Select("*").From("Tarea t") .Where( String.Format("id_proyecto = {0} AND \"id_tareaPadre\" IS NULL AND EXISTS ({1})", proyecto, new Consulta().Select("*").From("tareaporseccion ts").Where("t.id_tarea = ts.id_seccion").Get())) .OrderBy("t.nombre").Get(), 8); for (int i = 0; i < tareas.Count(); i++) { String[] datosTarea = Array.ConvertAll(tareas[i], p => (p ?? String.Empty).ToString()); Tarea t = new Tarea(); Int64 id = 0; if (Int64.TryParse(datosTarea[0], out id)) { t.codigo = datosTarea[0]; t.tareas = consultarTareaHijas(id, proyecto, true); //RETORNA 0 SIEMPRE } Usuario encargado = DAOUsuario.consultarUsuario(datosTarea[1]); if (encargado == null) { Console.WriteLine("tarea " + t.codigo + " no tiene encargado"); } //TODO: Asignar Seguidores t.encargado = encargado; t.seguidores = asignarSeguidores(t.codigo); string fechaprueba; try { fechaprueba = datosTarea[2].Split()[0]; t.fchFinalizacion = DateTime.ParseExact(fechaprueba, "d/M/yyyy", CultureInfo.InvariantCulture); } catch (Exception e) { Console.WriteLine(e.Message); } try { fechaprueba = datosTarea[3].Split()[0]; t.fchEntrega = DateTime.ParseExact(fechaprueba, "d/M/yyyy", CultureInfo.InvariantCulture); } catch (Exception e) { Console.WriteLine(e.Message); } t.nombre = datosTarea[4]; t.notas = datosTarea[5]; consultarAvances(t); result.Add(t); } return(result); }
private static void asignarMiembros(Proyecto proyecto) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Object[][] resultSet = DbConnection.consultar(new Consulta().Select("id_usuario").From("miembroporproyecto").Where(String.Format("id_proyecto = {0}", proyecto.id)).Get(), 1); for (int i = 0; i < resultSet.Count(); i++) { String[] result = Array.ConvertAll(resultSet[i], p => (p ?? String.Empty).ToString()); Usuario u = DAOUsuario.consultarUsuario(result[0]); proyecto.miembros.Add(u); } }
private static List <Usuario> asignarSeguidores(string codigo) { List <Usuario> seguidores = new List <Usuario>(); gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Object[][] resultSet = DbConnection.consultar(new Consulta().Select("id_usuario").From("seguidorportarea").Where(String.Format("id_tarea = {0}", codigo)).Get(), 1); for (int i = 0; i < resultSet.Count(); i++) { String[] result = Array.ConvertAll(resultSet[i], p => (p ?? String.Empty).ToString()); Usuario u = DAOUsuario.consultarUsuario(result[0]); seguidores.Add(u); } return(seguidores); }
public static List <Usuario> consultarUsuarios() { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Object[][] response = db.consultar(new Consulta().Select("id_usuario,nombre").From("usuario").Get(), 2); List <Usuario> usuarios = new List <Usuario>(); for (int i = 0; i < response.Count(); i++) { Usuario usr = new Usuario(); String[] result = Array.ConvertAll(response[i], p => (p ?? String.Empty).ToString()); usr.id = result[0]; usr.nombre = result[1]; usuarios.Add(usr); } return(usuarios); }
public static List <Tarea> consultarActividades(string idProyecto) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); List <Tarea> tareas = new List <Tarea>(); Consulta consulta = new Consulta().Select("t.id_tarea,t.nombre").From("Tarea t").Where("t.id_proyecto = '" + idProyecto + "'"); Object[][] resultSet = DbConnection.consultar(consulta.Get(), 2); for (int i = 0; i < resultSet.Count(); i++) { Tarea t = new Tarea(); String[] result = Array.ConvertAll(resultSet[i], p => (p ?? String.Empty).ToString()); t.codigo = result[0]; t.nombre = result[1]; tareas.Add(t); } return(tareas); }
public static Usuario consultarUsuario(String usr) { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Object[][] response = db.consultar(new Consulta().Select("*").From("usuario").Where(String.Format("id_usuario = '{0}'", usr)).Get(), 6); if (response.Count() > 0) { Usuario user = new Usuario(); String[] userData = Array.ConvertAll(response[0], p => (p ?? String.Empty).ToString()); user.id = userData[0]; user.nombre = userData[1]; // userData[2] --> usuario user.contraseña = userData[3]; user.correo = userData[4]; user.isAdministrador = Boolean.Parse(userData[5]); return(user); } else { return(null); } }
private static void consultarEvidencias(Avance avance) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); Consulta consulta = new Consulta() .Select("tipo,documento") .From("evidenciaporavance") .Where("id_avance = '" + avance.id + "'"); Object[][] resultSet = DbConnection.consultar(consulta.Get(), 2); avance.cantidadEvidencias = 0; for (int i = 0; i < resultSet.Count(); i++) { Evidencia e = new Evidencia(); object[] result = resultSet[i]; e.tipo = (string)result[0]; e.documento = getByteArrayFromObjectArray(result[1]); avance.evidencias.Add(e); avance.cantidadEvidencias++; } }
public static List <Proyecto> consultarProyectos(Usuario usr) { gestor.GestorBaseDatos DbConnection = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); List <Proyecto> proyectos = new List <Proyecto>(); Consulta consulta = new Consulta().Select("p.id_proyecto,p.nombre").From("Proyecto p"); if (!usr.isAdministrador) { consulta.Join("miembroporproyecto m", "p.id_proyecto = m.id_proyecto").Where("m.id_usuario = '" + usr.id + "'"); } Object[][] resultSet = DbConnection.consultar(consulta.Get(), 2); for (int i = 0; i < resultSet.Count(); i++) { Proyecto pr = new Proyecto(); String[] result = Array.ConvertAll(resultSet[i], p => (p ?? String.Empty).ToString()); pr.id = result[0]; pr.nombre = result[1]; proyectos.Add(pr); } return(proyectos); }