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); } }
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); }
public static Boolean agregarProyecto(Proyecto proyecto) { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); DAOUsuario.agregarUsuario(proyecto.administradorProyecto); db.conectar(); string query = string.Format("insert into Proyecto values ('{0}', '{1}', '{2}')", proyecto.id, proyecto.nombre, proyecto.administradorProyecto.id); bool result = db.executeNonQuery(query); db.desconectar(); foreach (Usuario usuario in proyecto.miembros) { DAOUsuario.agregarUsuario(usuario); result &= agregarMiembroPorProyecto(proyecto.id, usuario.id); } foreach (Tarea seccion in proyecto.secciones) { if (seccion.codigo != null) { result &= agregarTarea(seccion, null, proyecto.id); result &= agregarTareaPorProyecto(proyecto.id, seccion.codigo); } foreach (Tarea tarea in seccion.tareas) { agregarTarea(tarea, seccion, proyecto); } } return(result); }
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); }