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 Boolean crearAvance(Avance avance) { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); db.conectar(); string query = "insert into Avance values ('{0}', '{1}', '{2}', '{3}', '{4}')"; query = string.Format(query, avance.id, avance.Fecha.ToString("yyyy-MM-dd"), avance.HorasDedicadas, avance.descripción, avance.creador.id); bool result = db.executeNonQuery(query); foreach (Evidencia evidencia in avance.evidencias) { result &= agregarEvidencia(evidencia, avance.id); } db.desconectar(); return(result); }
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); }
public static Boolean eliminarAvance(string id) { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); db.conectar(); string query = "Delete from EvidenciaPorAvance where id_avance = {0}"; query = string.Format(query, id); bool result = db.executeNonQuery(query); query = "Delete from AvancePorTarea where id_avance = {0}"; query = string.Format(query, id); bool result2 = db.executeNonQuery(query); query = "Delete from Avance where id_avance = {0}"; query = string.Format(query, id); bool result3 = db.executeNonQuery(query); db.desconectar(); return(result && result2 && result3); }
public static bool agregarEvidencia(Evidencia evidencia, string idAvance) { gestor.bd.PostgresBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); db.conectar(); //Query Npgsql.NpgsqlCommand objCom = new Npgsql.NpgsqlCommand("insert into EvidenciaPorAvance " + " (id_avance, tipo, documento) values (:id, :tipo, :doc)", db.conn); //Id avance Npgsql.NpgsqlParameter idAvanceParam = new Npgsql.NpgsqlParameter("@id", NpgsqlTypes.NpgsqlDbType.Numeric); idAvanceParam.Value = decimal.Parse(idAvance); objCom.Parameters.Add(idAvanceParam); //Tipo de documento Npgsql.NpgsqlParameter tipoParam = new Npgsql.NpgsqlParameter("@tipo", NpgsqlTypes.NpgsqlDbType.Varchar); tipoParam.Value = evidencia.tipo; objCom.Parameters.Add(tipoParam); //Documento Npgsql.NpgsqlParameter docParam = new Npgsql.NpgsqlParameter("@doc", NpgsqlTypes.NpgsqlDbType.Bytea); docParam.Value = evidencia.documento; objCom.Parameters.Add(docParam); bool result = objCom.ExecuteNonQuery() != 0; db.desconectar(); return(result); }
public static Boolean agregarTarea(Tarea tarea, string idPadre, string idProyecto) { gestor.GestorBaseDatos db = new gestor.bd.PostgresBaseDatos("35.239.31.249", "postgres", "5432", "E@05face", "asana_upgradedb"); string query = ""; if (tarea.isFinalizada) { if (tarea.fchEntrega.ToString("yyyy-MM-dd") != "0001-01-01") { query = "insert into Tarea (id_tarea, \"idEncargado\", \"fchFinalizacion\", \"fchEntrega\", \"id_tareaPadre\", id_proyecto, nombre, nota) values ('{0}', '{1}', '{2}', '{3}', {4}, '{5}', '{6}', '{7}')"; query = string.Format(query, tarea.codigo, tarea.encargado == null ? "null" : tarea.encargado.id, tarea.fchFinalizacion.ToString("yyyy-MM-dd"), tarea.fchEntrega.ToString("yyyy-MM-dd"), idPadre == null ? "null" : "'" + idPadre + "'", idProyecto, tarea.nombre, tarea.notas); } else { query = "insert into Tarea (id_tarea, \"idEncargado\", \"fchFinalizacion\", \"id_tareaPadre\", id_proyecto, nombre, nota) values ('{0}', '{1}', '{2}', {3}, '{4}', '{5}', '{6}')"; query = string.Format(query, tarea.codigo, tarea.encargado == null ? "null" : tarea.encargado.id, tarea.fchFinalizacion.ToString("yyyy-MM-dd"), idPadre == null ? "null" : "'" + idPadre + "'", idProyecto, tarea.nombre, tarea.notas); } } else { if (tarea.fchEntrega.ToString("yyyy-MM-dd") != "0001-01-01") { query = "insert into Tarea (id_tarea, \"idEncargado\", \"fchEntrega\", \"id_tareaPadre\", id_proyecto, nombre, nota) values ('{0}', '{1}', '{2}', {3}, '{4}', '{5}', '{6}')"; query = string.Format(query, tarea.codigo, tarea.encargado == null ? "null" : tarea.encargado.id, tarea.fchEntrega.ToString("yyyy-MM-dd"), idPadre == null ? "null" : "'" + idPadre + "'", idProyecto, tarea.nombre, tarea.notas); } else { query = "insert into Tarea (id_tarea, \"idEncargado\", \"id_tareaPadre\", id_proyecto, nombre, nota) values ('{0}', '{1}', {2}, '{3}', '{4}', '{5}')"; query = string.Format(query, tarea.codigo, tarea.encargado == null ? "null" : tarea.encargado.id, idPadre == null ? "null" : "'" + idPadre + "'", idProyecto, tarea.nombre, tarea.notas); } } db.conectar(); bool result = db.executeNonQuery(query); db.desconectar(); return(result); }
private static List <Tarea> consultarTareaHijas(long tareaPadre, string id_proyecto, bool isTarea) { 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; if (isTarea) { tareas = DbConnection.consultar(new Consulta().Select("*").From("Tarea t") .Where( String.Format("id_proyecto = {0} AND \"id_tareaPadre\" IS NULL AND EXISTS ({1})", id_proyecto, new Consulta().Select("*").From("tareaporseccion ts") .Where(String.Format("t.id_tarea = ts.id_tarea and ts.id_seccion = '{0}'", tareaPadre)).Get())) .OrderBy("t.id_tarea").Get(), 8); } else { tareas = DbConnection.consultar(new Consulta().Select("*").From("Tarea").Where(String.Format("\"id_tareaPadre\" = '{0}' ", tareaPadre)).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(); long id = 0; if (Int64.TryParse(datosTarea[0], out id)) { t.codigo = datosTarea[0]; if (isTarea) { t.tareas = consultarTareaHijas(id, id_proyecto, false); } } Usuario encargado = DAOUsuario.consultarUsuario(datosTarea[1]); if (encargado == null) { Console.WriteLine("tarea" + t.codigo + "no tiene encargado"); } 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); }