/// <summary> /// Borra todas las tareas /// </summary> /// <param name="entidad"></param> /// <returns></returns> public Boolean BorrarAll(proyectos_tareas entidad) { try { DataTable dt_tareas = GetAll(entidad.id_proyecto); foreach (DataRow tarea in dt_tareas.Rows) { entidad.id_tarea = Convert.ToInt32(tarea["id_tarea"]); entidad.id_proyecto = Convert.ToInt32(tarea["id_proyecto"]); entidad.comentarios_borrado = "borrado por actualizacion"; Borrar(entidad); } return(true); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return(false); } }
/// <summary> /// Borra una tarea por id /// </summary> /// <param name="entidad"></param> /// <returns></returns> public string Borrar(proyectos_tareas entidad) { try { Model context = new Model(); proyectos_tareas tarea = context.proyectos_tareas .First(i => i.id_proyecto == entidad.id_proyecto && i.id_tarea == entidad.id_tarea); tarea.fecha_borrado = DateTime.Now; tarea.comentarios_borrado = entidad.comentarios_borrado; tarea.usuario_borrado = entidad.usuario_borrado; context.SaveChanges(); return(""); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }
/// <summary> /// Agrega una Tarea /// </summary> /// <param name="entidad"></param> /// <returns></returns> public string[] Agregar(proyectos_tareas entidad) { string[] return_array = new string[2]; try { if (entidad.tarea == "") { return_array[0] = "Ingrese un nombre de proyecto"; } else { proyectos_tareas tarea = new proyectos_tareas { codigo_tarea = entidad.codigo_tarea, tarea = entidad.tarea, id_proyecto = entidad.id_proyecto, nivel_esquema = Convert.ToByte(entidad.nivel_esquema), duración = entidad.duración, actividades_predecesoras = entidad.actividades_predecesoras, recursos = entidad.recursos, avance = Convert.ToByte(entidad.avance), fecha_inicio_str = entidad.fecha_inicio_str, fecha_fin_str = entidad.fecha_fin_str, fecha_fin = entidad.fecha_fin, fecha_inicio = entidad.fecha_inicio, fecha_registro = DateTime.Now, usuario = entidad.usuario }; Model context = new Model(); context.proyectos_tareas.Add(tarea); context.SaveChanges(); int id_entity = tarea.id_tarea; return_array[0] = ""; return_array[1] = id_entity.ToString(); } return(return_array); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return_array[0] = fullErrorMessage.ToString(); return_array[1] = 0.ToString(); return(return_array); } }
/// <summary> /// Edita una Tarea mediante el codigo de tarea interno(del proyecto) /// </summary> /// <param name="entidad"></param> /// <returns></returns> public string Editar(proyectos_tareas entidad) { try { Model context = new Model(); proyectos_tareas tarea = context.proyectos_tareas .First(i => i.id_proyecto == entidad.id_proyecto && i.id_tarea == entidad.id_tarea); tarea.tarea = entidad.tarea; tarea.id_proyecto = entidad.id_proyecto; tarea.nivel_esquema = Convert.ToByte(entidad.nivel_esquema); tarea.duración = entidad.duración; tarea.actividades_predecesoras = entidad.actividades_predecesoras; tarea.recursos = entidad.recursos; tarea.avance = Convert.ToByte(entidad.avance); tarea.fecha_inicio_str = entidad.fecha_inicio_str; tarea.fecha_fin_str = entidad.fecha_fin_str; tarea.fecha_edicion = DateTime.Now; tarea.fecha_fin = entidad.fecha_fin; tarea.fecha_inicio = entidad.fecha_inicio; tarea.fecha_borrado = null; tarea.usuario_borrado = null; tarea.comentarios_borrado = null; tarea.usuario_edicion = entidad.usuario_edicion; context.SaveChanges(); int id_entity = tarea.id_tarea; return(""); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return(fullErrorMessage.ToString()); } }
/// <summary> /// Devuelve un DatatTable con las tareas filtradas por id_tarea /// </summary> /// <param name="id_proyect"></param> /// <returns></returns> public DataTable Get(proyectos_tareas entidad) { DataTable dt = new DataTable(); try { Model context = new Model(); var query = context.proyectos_tareas .Where(s => s.id_proyecto == entidad.id_proyecto && s.id_tarea == entidad.id_tarea && s.usuario_borrado == null) .Select(u => new { u.id_tarea, u.codigo_tarea, u.id_proyecto, u.id_tarea_padre, u.tarea, u.duración, u.avance, u.fecha_inicio_str, u.fecha_fin_str, u.fecha_inicio, u.fecha_fin, u.recursos, u.actividades_predecesoras, u.nivel_esquema, u.fecha_registro, u.usuario, u.usuario_edicion, u.fecha_edicion, u.usuario_borrado, u.fecha_borrado, u.comentarios_borrado, }); dt = To.DataTable(query.ToList()); return(dt); } catch (Exception ex) { return(dt); } }
/// <summary> /// Devuelve un valor booleano si existe una tarea activa por id interno(del proyecto) /// </summary> /// <param name="entidad"></param> /// <returns></returns> public bool Exist(proyectos_tareas entidad) { try { Model context = new Model(); bool exist = context.proyectos_tareas .Any(i => i.id_proyecto == entidad.id_proyecto && i.usuario_borrado == null && i.codigo_tarea == entidad.codigo_tarea); return(exist); } catch (DbEntityValidationException ex) { // Retrieve the error messages as a list of strings. var errorMessages = ex.EntityValidationErrors .SelectMany(x => x.ValidationErrors) .Select(x => x.ErrorMessage); // Join the list to a single string. var fullErrorMessage = string.Join("; ", errorMessages); return(false); } }
/// <summary> /// Actualiza el Proyecto mediante archivo de Excel /// </summary> private void AgregarProyectoExcel(Byte[] archivo, string file_name, string ext, string tamaño, string contentType, bool publico) { try { DataTable dt = ViewState["dt_comidas"] as DataTable; int id_proyect = 0; if (dt.Rows.Count > 0) { bool isEnglish = funciones.Format(dt); string vmensaje = ""; foreach (DataRow row in dt.Rows) { int nivel = Convert.ToInt32(row["NIVEL_DE_ESQUEMA"]); if (id_proyect == 0 && nivel >= 2) { break; } switch (nivel) { case 1: proyectos entidad = new proyectos(); entidad.codigo_proyecto = row["ID"].ToString().Trim(); entidad.proyecto = row["NOMBRE"].ToString().Trim(); entidad.duración = row["DURACIÓN"].ToString().Trim(); entidad.fecha_inicio = Convert.ToDateTime(funciones.RetunrFirmatDate(row["COMIENZO"].ToString().Trim(), isEnglish)); entidad.fecha_inicio_str = Convert.ToDateTime(entidad.fecha_inicio).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")); entidad.fecha_fin = Convert.ToDateTime(funciones.RetunrFirmatDate(row["FIN"].ToString().Trim(), isEnglish)); entidad.fecha_fin_str = Convert.ToDateTime(entidad.fecha_fin).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")); entidad.usuario = Session["usuario"] as string; entidad.avance = Convert.ToByte(row["Porcentaje_completado"].ToString().Replace("%", "").Trim() == "" ? "0" : row["Porcentaje_completado"].ToString().Replace("%", "").Trim()); ProyectosCOM proyectos = new ProyectosCOM(); string[] return_array = proyectos.Agregar(entidad); vmensaje = return_array[0]; if (vmensaje != "") { div_errormodal2.Visible = true; lblerrormodal2.Text = "Error al subir el proyecto." + vmensaje.ToString(); ModalShow("#myModalExcel"); break; } else { id_proyect = Convert.ToInt32(return_array[1]); usuarios entidadus = new usuarios(); entidadus.id_cliente = null; entidadus.id_uperfil = 3; entidadus.usuario = Convert.ToString(Session["usuario"]).Trim().ToUpper(); entidadus.password = Convert.ToString(Session["contraseña"]).Trim().ToUpper(); UsuariosCOM pusuarios = new UsuariosCOM(); if (pusuarios.Agregar(entidadus)[0] != "") { div_errormodal2.Visible = true; lblerrormodal2.Text = "Error al subir el proyecto. Hubo un error al anexar al usuario. Verifique esta situación con su administrador."; ModalShow("#myModalExcel"); break; } } break; case 2: default: proyectos_tareas entidad2 = new proyectos_tareas(); entidad2.id_proyecto = id_proyect; entidad2.codigo_tarea = row["ID"].ToString().Trim(); entidad2.tarea = row["NOMBRE"].ToString().Trim(); entidad2.duración = row["DURACIÓN"].ToString().Trim(); entidad2.fecha_inicio = Convert.ToDateTime(funciones.RetunrFirmatDate(row["COMIENZO"].ToString().Trim(), isEnglish)); entidad2.fecha_inicio_str = Convert.ToDateTime(entidad2.fecha_inicio).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")); entidad2.fecha_fin = Convert.ToDateTime(funciones.RetunrFirmatDate(row["FIN"].ToString().Trim(), isEnglish)); entidad2.fecha_fin_str = Convert.ToDateTime(entidad2.fecha_fin).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")); entidad2.usuario = Session["usuario"] as string; entidad2.avance = Convert.ToByte(row["Porcentaje_completado"].ToString().Replace("%", "").Trim() == "" ? "0" : row["Porcentaje_completado"].ToString().Replace("%", "").Trim()); entidad2.recursos = row["Nombres_de_los_recursos"].ToString().Trim();; entidad2.actividades_predecesoras = row["Predecesoras"].ToString().Trim(); entidad2.nivel_esquema = Convert.ToByte(row["Nivel_de_esquema"].ToString().Replace("%", "").Trim() == "" ? "0" : row["Nivel_de_esquema"].ToString().Replace("%", "").Trim()); TareasCOM tareas = new TareasCOM(); string[] return_array2 = tareas.Agregar(entidad2); vmensaje = return_array2[0]; if (vmensaje != "") { div_errormodal2.Visible = true; lblerrormodal2.Text = "ERROR EN LA TAREA CON ID " + row["ID"].ToString().Trim() + " " + vmensaje.ToString(); ModalShow("#myModalExcel"); break; } break; } } if (vmensaje == "") { TareasCOM componente = new TareasCOM(); DataSet ds = componente.sp_genera_tareas_padres(id_proyect); vmensaje = ds.Tables[0].Rows[0]["mensaje"].ToString(); if (vmensaje == "") { funciones.ActualizaAvances(); AgregarDocumento(id_proyect, archivo, file_name, ext, tamaño, contentType, true); ProyectosCOM proyecto_actualiza = new ProyectosCOM(); DataSet dsss = proyecto_actualiza.actualizar_avances(); string url = "proyecto_general.aspx?id_proyecto=" + funciones.deTextoa64(id_proyect.ToString()); System.Web.UI.ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "ModalClose();", true); System.Web.UI.ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "AlertGO('Proyecto Subido Correctamente', '" + url + "');", true); } else { div_errormodal2.Visible = true; lblerrormodal2.Text = "ERROR CON LA RELACION DE TAREAS"; ModalShow("#myModalExcel"); } } else { div_errormodal2.Visible = true; lblerrormodal2.Text = vmensaje; ModalShow("#myModalExcel"); } } } catch (Exception ex) { div_errormodal2.Visible = true; lblerrormodal2.Text = ex.Message; ModalShow("#myModalExcel"); } }