private void CargarInformacionInicial(int id_proyecto) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.Select(id_proyecto); if (dt.Rows.Count > 0) { CargarRiesgos(id_proyecto); CargarRecursos(id_proyecto); CargarMinutas(id_proyecto); DataRow proyecto = dt.Rows[0]; hdfid_proyecto.Value = id_proyecto.ToString(); lblproyect.Text = proyecto["proyecto"].ToString(); //lblresumen.Text = proyecto["descripcion"].ToString(); lblmonto.Text = Convert.ToDecimal(proyecto["costo_usd"]).ToString("C2") + " USD / " + Convert.ToDecimal(proyecto["costo_mn"]).ToString("C2") + " MN"; lblperiodo.Text = proyecto["periodo"].ToString(); lblestatus.Text = proyecto["estatus"].ToString(); lbltecnologia.Text = proyecto["tecnologia"].ToString(); lblcped.Text = proyecto["cped"].ToString(); lblempleado.Text = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(proyecto["empleado"].ToString().ToLower()); } } catch (Exception ex) { Toast.Error("Error al cargar información del proyecto. " + ex.Message, this); } }
private void CargarProyectos(string usuario, bool administrador, string usuario_filtro) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.sp_get_proyects_info(0, usuario, administrador, Convert.ToInt32(Session["id_cliente"]), usuario_filtro, false).Tables[0]; th_pm.Visible = (administrador && Convert.ToInt32(Session["id_cliente"]) == 0); div_combo_pm_x_proyecto.Visible = (administrador && Convert.ToInt32(Session["id_cliente"]) == 0); if (dt.Rows.Count > 0) { repeat_mis_proyectos.DataSource = dt.AsEnumerable().Take(10).CopyToDataTable(); repeat_mis_proyectos.DataBind(); } else { repeat_mis_proyectos.DataSource = null; repeat_mis_proyectos.DataBind(); } if (usuario_filtro == "") { DataTable dt_pm = proyectos.sp_combo_pm_x_proyecto().Tables[0]; ddlpm_x_proyecto.DataTextField = "pm"; ddlpm_x_proyecto.DataValueField = "usuario"; ddlpm_x_proyecto.DataSource = dt_pm; ddlpm_x_proyecto.DataBind(); } } catch (Exception ex) { Alert.ShowAlertError(ex.Message, this); } }
private string Eliminar(proyectos id_proyecto) { ProyectosCOM Proyecto = new ProyectosCOM(); string vmensaje = Proyecto.Elimina(id_proyecto); return(vmensaje); }
private string Editar(proyectos id_proyecto, List <proyectos_historial_tecnologias> tecnologias) { ProyectosCOM Proyecto = new ProyectosCOM(); string vmensaje = Proyecto.Editar(id_proyecto, tecnologias); return(vmensaje); }
public static void ActualizaAvances() { try { ProyectosCOM proyecto_actualiza = new ProyectosCOM(); DataSet dsss = proyecto_actualiza.actualizar_avances(); } catch (Exception) { throw; } }
private bool ProyectoTerminado() { try { ProyectosCOM proyectos = new ProyectosCOM(); bool terminado = proyectos.ProyectoTerminado(Convert.ToInt32(funciones.de64aTexto(Request.QueryString["id_proyecto"]))); return(terminado); } catch (Exception ex) { Toast.Error("Error al cargar información del cierre de proyecto: " + ex.Message, this); return(false); } }
private proyectos GetProyecto(int id_proyecto) { proyectos dt = new proyectos(); try { ProyectosCOM Proyecto = new ProyectosCOM(); dt = Proyecto.proyecto(id_proyecto); } catch (Exception) { dt = null; } return(dt); }
private DataTable Getreporte_proyectos(int num_empleado, bool ver_Todos_los_empleados, int id_proyecto_estatus, DateTime fecha_inicio, DateTime fecha_fin) { DataTable dt = new DataTable(); try { ProyectosCOM Proyectos = new ProyectosCOM(); dt = Proyectos.reporte_proyectos(num_empleado, ver_Todos_los_empleados, id_proyecto_estatus, fecha_inicio, fecha_fin); } catch (Exception ex) { dt = new DataTable(); } return(dt); }
private void CargarComboCliente() { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt_pm = proyectos.sp_COMBO_CLIENTES_PROYECTOS().Tables[0]; ddlcliente_x_proyecto.DataTextField = "razon_social"; ddlcliente_x_proyecto.DataValueField = "idcliente"; ddlcliente_x_proyecto.DataSource = dt_pm; ddlcliente_x_proyecto.DataBind(); } catch (Exception ex) { Toast.Error(ex.Message, this); } }
private void CargarComboPM() { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt_pm = proyectos.sp_combo_pm_x_proyecto().Tables[0]; ddlpm_x_proyecto.DataTextField = "pm"; ddlpm_x_proyecto.DataValueField = "usuario"; ddlpm_x_proyecto.DataSource = dt_pm; ddlpm_x_proyecto.DataBind(); } catch (Exception ex) { Toast.Error(ex.Message, this); } }
public String ProyectosWidget(int num_empleado) { try { string value = ""; ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = new DataTable(); dt = proyectos.SelectWidget(num_empleado, false); value = JsonConvert.SerializeObject(dt); return(value); } catch (Exception ex) { return(""); } }
private void CargarProyectos(int id_proyecto, string usuario, bool administrador) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.sp_get_proyects_info(id_proyecto, usuario, administrador, Convert.ToInt32(Session["id_cliente"]), "", false).Tables[0]; rdl_proyectos.DataTextField = "proyecto"; rdl_proyectos.DataValueField = "id_proyecto"; rdl_proyectos.DataSource = dt; rdl_proyectos.DataBind(); } catch (Exception ex) { Toast.Error(ex.Message, this); } }
private void CargarProyectos(string usuario, bool administrador) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.sp_get_proyects_info(0, usuario, administrador, Convert.ToInt32(Session["id_cliente"]), "", false).Tables[0]; if (dt.Rows.Count > 0) { bool cliente = Convert.ToBoolean(Session["cliente"]); grid_proyectos.DataSource = dt; grid_proyectos.DataBind(); grid_proyectos.Columns[0].Visible = !cliente; grid_proyectos.Columns[1].Visible = false; } } catch (Exception ex) { Alert.ShowAlertError(ex.Message, this); } }
private DataTable GetProyectos(int id_proyecto_estatus) { DataTable dt = new DataTable(); try { int num_empleado = Convert.ToInt32(Session["num_empleado"]); Boolean ver_Todos_los_empleados = Convert.ToBoolean(Session["ver_Todos_los_empleados"]); if (funciones.Permisos(Session["usuario"] as string, 4)) { ver_Todos_los_empleados = true; } ProyectosCOM Proyectos = new ProyectosCOM(); dt = Proyectos.SelectAll(num_empleado, ver_Todos_los_empleados, id_proyecto_estatus); } catch (Exception ex) { dt = new DataTable(); } return(dt); }
private void CargarProyectos(int id_proyecto, string usuario, bool administrador) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.sp_get_proyects_info(id_proyecto, usuario, administrador, Convert.ToInt32(Session["id_cliente"]), "", false).Tables[0]; DataRow row = dt.Rows[0]; txtid_proyecto.Text = id_proyecto.ToString(); rtxtproyecto.Text = row["proyecto"].ToString(); rtxtdescripcion.Text = row["descripcion"].ToString(); rtxtavance.Text = row["avance"].ToString(); if (row["fecha_inicio"] != DBNull.Value) { rdtpinicio.SelectedDate = Convert.ToDateTime(row["fecha_inicio"]); rdtpfin.SelectedDate = Convert.ToDateTime(row["fecha_fin"]); } } catch (Exception ex) { Alert.ShowAlertError(ex.Message, this); } }
private void CargarInformacionInicial(int id_proyecto) { try { ProyectosCOM proyectos = new ProyectosCOM(); DataTable dt = proyectos.Select(id_proyecto); if (dt.Rows.Count > 0) { CargarRecursos(id_proyecto); Cargarroles(); DataRow proyecto = dt.Rows[0]; lblproyect.Text = proyecto["proyecto"].ToString(); lblmonto.Text = Convert.ToDecimal(proyecto["costo_usd"]).ToString("C2") + " USD / " + Convert.ToDecimal(proyecto["costo_mn"]).ToString("C2") + " MN"; lbltecnologia.Text = proyecto["tecnologia"].ToString(); lblcped.Text = proyecto["cped"].ToString(); } } catch (Exception ex) { Toast.Error("Error al cargar información del proyecto. " + ex.Message, this); } }
public string AgregarProyecto() { try { int id_proyect = 0; string vmensaje = ""; if (rtxtproyecto.Text == "") { vmensaje = "Ingrese el Nombre del Proyecto"; } else if (rtxtdescripcion.Text == "") { vmensaje = "Ingrese la Descripción del Proyecto"; } else if (!rdtpinicio.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Inicial del Proyecto"; } else if (!rdtpfin.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Final del Proyecto"; } else if (rtxtavance.Text == "") { vmensaje = "Ingrese un Avance del Proyecto"; } else if (Convert.ToInt32(rtxtavance.Text) > 100) { rtxtavance.Text = "100"; vmensaje = "Ingrese un Avance del Proyecto menor a 100"; } else { DateTime dinicial = rdtpinicio.SelectedDate.Value; DateTime difinal = rdtpfin.SelectedDate.Value; string fechainicio = dinicial.ToString("dddd dd MMMM, yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string fechafin = difinal.ToString("dddd dd MMMM , yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string proyecto = rtxtproyecto.Text; string descripcion = rtxtdescripcion.Text; int avance = Convert.ToInt32(rtxtavance.Text); proyectos entidad = new proyectos(); entidad.proyecto = proyecto; entidad.descripcion = descripcion; entidad.fecha_inicio = dinicial; entidad.codigo_proyecto = "1"; entidad.fecha_fin = difinal; entidad.fecha_inicio_str = fechainicio; entidad.fecha_fin_str = fechafin; entidad.usuario = Session["usuario"] as string; entidad.avance = Convert.ToByte(avance); entidad.duración = (difinal.Date - dinicial.Date).TotalDays == 1 ? (difinal.Date - dinicial.Date).TotalHours.ToString() + " horas" : (difinal.Date - dinicial.Date).TotalDays.ToString() + " dias"; ProyectosCOM proyecto_ = new ProyectosCOM(); string[] return_array = proyecto_.Agregar(entidad); vmensaje = return_array[0]; 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 usuarios = new UsuariosCOM(); if (vmensaje == "") { vmensaje = usuarios.Agregar(entidadus)[0]; } } if (vmensaje == "") { funciones.ActualizaAvances(); ProyectosCOM proyecto_actualiza = new ProyectosCOM(); DataSet dsss = proyecto_actualiza.actualizar_avances(); } return(vmensaje); } catch (Exception ex) { return(ex.Message); } }
/// <summary> /// Actualiza el proyecto /// </summary> /// <returns></returns> private string ActualizarProyecto() { try { string vmensaje = ""; if (rtxtproyecto.Text == "") { vmensaje = "Ingrese el Nombre del Proyecto"; } else if (rtxtdescripcion.Text == "") { vmensaje = "Ingrese la Descripción del Proyecto"; } else if (!rdtpinicio.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Inicial del Proyecto"; } else if (!rdtpfin.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Final del Proyecto"; } else if (rtxtavance.Text == "") { vmensaje = "Ingrese un Avance del Proyecto"; } else if (Convert.ToInt32(rtxtavance.Text) > 100) { rtxtavance.Text = "100"; vmensaje = "Ingrese un Avance del Proyecto menor a 100"; } else { DateTime dinicial = rdtpinicio.SelectedDate.Value; DateTime difinal = rdtpfin.SelectedDate.Value; string fechainicio = dinicial.ToString("dddd dd MMMM, yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string fechafin = difinal.ToString("dddd dd MMMM , yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string proyecto = rtxtproyecto.Text; string descripcion = rtxtdescripcion.Text; int avance = Convert.ToInt32(rtxtavance.Text); proyectos entidad = new proyectos(); entidad.id_proyecto = Convert.ToInt32(txtid_proyecto.Text.Trim()); entidad.proyecto = proyecto; entidad.fecha_inicio = dinicial; entidad.fecha_fin = difinal; entidad.fecha_inicio_str = fechainicio; entidad.fecha_fin_str = fechafin; entidad.usuario_edicion = Session["usuario"] as string; entidad.avance = Convert.ToByte(avance); entidad.duración = (difinal.Date - dinicial.Date).TotalDays == 1 ? (difinal.Date - dinicial.Date).TotalHours.ToString() + " horas" : (difinal.Date - dinicial.Date).TotalDays.ToString() + " dias"; ProyectosCOM proyecto_ = new ProyectosCOM(); vmensaje = proyecto_.Editar(entidad); } funciones.ActualizaAvances(); return(vmensaje); } catch (Exception ex) { return(ex.Message); } }
protected void lnkguardarempleado_Click(object sender, EventArgs e) { IList <RadListBoxItem> collection = rdlempleadosproyecto.SelectedItems; string vmensaje = ""; try { if (collection.Count == 0) { vmensaje = "Seleccione minimo 1 empleado."; } string correos_pm = ""; if (ProyectoTerminado()) { vmensaje = "El proyecto fue terminado y no puede generarse información adicional."; } int id_rol = Convert.ToInt32(ddlperfil.SelectedValue); if (id_rol == 0) { vmensaje = "Seleccione un rol para el empleado"; } if (vmensaje == "") { ProyectosEmpleadosCOM proyectos = new ProyectosEmpleadosCOM(); foreach (RadListBoxItem item in collection) { string usuario = item.Value; int id_proyecto = Convert.ToInt32(funciones.de64aTexto(Request.QueryString["id_proyecto"])); string usuario_registro = Session["usuario"] as string; vmensaje = proyectos.Agregar(id_proyecto, id_rol, usuario, usuario_registro); if (vmensaje == "") { ProyectosCOM proyectos2 = new ProyectosCOM(); datos.proyectos proyecto = proyectos2.proyecto(Convert.ToInt32(funciones.de64aTexto(Request.QueryString["id_proyecto"]))); if (proyecto != null) { string tecnologias = ""; string usuario_resp = usuario; ICollection <datos.proyectos_historial_tecnologias> n = proyecto.proyectos_historial_tecnologias; foreach (datos.proyectos_historial_tecnologias tecnologia in n) { if (tecnologia.activo) { datos.proyectos_tecnologias tecn = tecnologia.proyectos_tecnologias; tecnologias = tecnologias + tecn.nombre + ","; } } if (tecnologias.Length > 1) { tecnologias = tecnologias.Substring(0, tecnologias.Length - 1); } EmpleadosCOM usuarios = new EmpleadosCOM(); DataTable dt_usuario = usuarios.GetUsers(); DataView dv = dt_usuario.DefaultView; dv.RowFilter = "usuario_red = '" + usuario_resp.Trim().ToUpper() + "'"; DataTable dt_result = dv.ToTable(); if (dt_result.Rows.Count > 0) { string saludo = DateTime.Now.Hour > 13 ? "Buenas tardes" : "Buenos dias"; DataRow drusuario = dt_result.Rows[0]; string mail_to = drusuario["mail"].ToString() == "" ? "" : (drusuario["mail"].ToString() + ";"); string subject = "Módulo de proyectos - Proyecto relacionado"; string mail = "<div>" + saludo + " <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(drusuario["empleado"].ToString().ToLower()) + "</strong> <div>" + "<br>" + "<p>Le fue asignado el proyecto <strong>" + proyecto.proyecto + "</strong>" + "</p>" + "<p><strong>Descripción</strong> <br/> " + (proyecto.descripcion == "" || proyecto.descripcion == null ? proyecto.proyecto : proyecto.descripcion) + "</p> " + "<p><strong>CPED</strong> <br/> " + proyecto.cped + "</p> " + "<p><strong>Tecnología(s)</strong><br/> " + tecnologias + "</p> " + "<p><strong>Costo</strong><br/> " + proyecto.costo_usd.ToString("C2") + " USD / " + proyecto.costo_mn.ToString("C2") + " MN</p> " + "<p><strong>Duración</strong><br/> " + proyecto.duración + " dia(s). Del " + Convert.ToDateTime(proyecto.fecha_inicio).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")) + " al " + Convert.ToDateTime(proyecto.fecha_fin).ToString("dddd dd MMMM, yyyy", CultureInfo.CreateSpecificCulture("es-MX")) + "</p> " + "<br/><p>Este movimiento fue realizado por <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(Session["nombre"].ToString().ToLower()) + "</strong> el dia <strong>" + DateTime.Now.ToString("dddd dd MMMM, yyyy hh:mm:ss tt", CultureInfo.CreateSpecificCulture("es-MX")) + "</strong>" + "</p>"; CorreosCOM correos = new CorreosCOM(); bool correct = correos.SendMail(mail, subject, mail_to); if (!correct) { break; } } } if (vmensaje != "") { break; } } } if (vmensaje != "") { Toast.Error(vmensaje, this); } else { string url = "proyectos_recursos.aspx?id_proyecto=" + Request.QueryString["id_proyecto"]; ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "AlertGO('Configuración Guardada Correctamente', '" + url + "');", true); } } else { Toast.Error("Error al guardar lista de empleados: " + vmensaje, this); } } catch (Exception ex) { Toast.Error("Error al guardar lista de empleados. " + ex.Message, this); } }
public void AgregarProyecto() { try { int id_proyect = 0; string vmensaje = ""; if (rtxtproyecto.Text == "") { vmensaje = "Ingrese el Nombre del Proyecto"; } else if (rtxtdescripcion.Text == "") { vmensaje = "Ingrese la Descripción del Proyecto"; } else if (!rdtpinicio.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Inicial del Proyecto"; } else if (!rdtpfin.SelectedDate.HasValue) { vmensaje = "Ingrese la Fecha Final del Proyecto"; } else if (rtxtavance.Text == "") { vmensaje = "Ingrese un Avance del Proyecto"; } else if (Convert.ToInt32(rtxtavance.Text) > 100) { rtxtavance.Text = "100"; vmensaje = "Ingrese un Avance del Proyecto menor a 100"; } else { DateTime dinicial = rdtpinicio.SelectedDate.Value; DateTime difinal = rdtpfin.SelectedDate.Value; string fechainicio = dinicial.ToString("dddd dd MMMM, yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string fechafin = difinal.ToString("dddd dd MMMM , yyyy hh:mm:ss:tt", CultureInfo.CreateSpecificCulture("es-MX")); string proyecto = rtxtproyecto.Text; string descripcion = rtxtdescripcion.Text; int avance = Convert.ToInt32(rtxtavance.Text); proyectos entidad = new proyectos(); entidad.proyecto = proyecto; entidad.descripcion = descripcion; entidad.fecha_inicio = dinicial; entidad.codigo_proyecto = "1"; entidad.fecha_fin = difinal; entidad.fecha_inicio_str = fechainicio; entidad.fecha_fin_str = fechafin; entidad.usuario = Session["usuario"] as string; entidad.avance = Convert.ToByte(avance); entidad.duración = (difinal.Date - dinicial.Date).TotalDays == 1 ? (difinal.Date - dinicial.Date).TotalHours.ToString() + " horas" : (difinal.Date - dinicial.Date).TotalDays.ToString() + " dias"; ProyectosCOM proyecto_ = new ProyectosCOM(); string[] return_array = proyecto_.Agregar(entidad); vmensaje = return_array[0]; 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(); entidadus.password = Convert.ToString(Session["contraseña"]).Trim(); UsuariosCOM pusuarios = new UsuariosCOM(); if (vmensaje == "") { vmensaje = pusuarios.Agregar(entidadus)[0]; } } if (vmensaje == "") { funciones.ActualizaAvances(); 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 Agregado Correctamente', '" + url + "');", true); } else { div_proyecto_manual.Visible = true; div_errormodal2.Visible = true; lblerrormodal2.Text = vmensaje; ModalShow("#myModalExcel"); } } catch (Exception ex) { div_errormodal2.Visible = true; lblerrormodal2.Text = ex.Message; ModalShow("#myModalExcel"); } }
protected void AsyncUpload1_FileUploaded(object sender, Telerik.Web.UI.FileUploadedEventArgs e) { try { int r = AsyncUpload1.UploadedFiles.Count; if (r == 0) { Toast.Error("Error al terminar proyecto: Seleccione un archivo.", this); } else { DirectoryInfo dirInfo = new DirectoryInfo(Server.MapPath("~/"));//path localDateTime localDate = DateTime.Now; string path_local = "files/documents/proyectos/"; DateTime localDate = DateTime.Now; string date = localDate.ToString(); date = date.Replace("/", "_"); date = date.Replace(":", "_"); date = date.Replace(" ", ""); string name = path_local + Path.GetFileNameWithoutExtension(e.File.FileName) + "_" + date + Path.GetExtension(e.File.FileName); //funciones.UploadFile(fuparchivo, dirInfo.ToString() + name.Trim(), this.Page); e.File.SaveAs(dirInfo.ToString() + name.Trim()); int id_proyecto = Convert.ToInt32(hdfid_proyecto.Value); documentos documento = new documentos(); documento.id_proyecto = id_proyecto; documento.path = funciones.deTextoa64(name); documento.nombre = Path.GetFileName(funciones.de64aTexto(funciones.deTextoa64(name))); documento.tamaño = e.File.ContentLength.ToString(); documento.publico = true; documento.extension = Path.GetExtension(funciones.de64aTexto(funciones.deTextoa64(name))); documento.contentType = funciones.ContentType(documento.extension); documento.fecha = DateTime.Now; documento.usuario = Session["usuario"] as string; documento.id_documento_tipo = 2; documento.comentarios = txtcomentarioscierre.Text; ProyectosCOM proyectos = new ProyectosCOM(); string vmensaje = proyectos.Cerrar(id_proyecto, Session["usuario"] as string, documento); if (vmensaje == "") { proyectos proyecto = proyectos.proyecto(id_proyecto); //string usuario_resp = proyecto.usuario_resp; //EmpleadosCOM usuarios = new EmpleadosCOM(); //DataTable dt_usuario = usuarios.GetUsers(); //DataView dv = dt_usuario.DefaultView; //dv.RowFilter = "usuario_red = '" + usuario_resp.Trim().ToUpper() + "'"; //DataTable dt_result = dv.ToTable(); ProyectosEmpleadosCOM empleados = new ProyectosEmpleadosCOM(); DataTable users = empleados.empleados_proyecto(id_proyecto); if (users.Rows.Count > 0) { foreach (DataRow row in users.Rows) { string saludo = DateTime.Now.Hour > 13 ? "Buenas tardes" : "Buenos dias"; DataRow usuario = row; string mail_to = usuario["correo"].ToString() == "" ? "" : (usuario["correo"].ToString() + ";"); string subject = "Módulo de proyectos - Proyecto cerrado"; string mail = "<div>" + saludo + " <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(usuario["nombre"].ToString().ToLower()) + "</strong> <div>" + "<br>" + "<p>Se le comunica que el proyecto <strong>" + proyecto.proyecto + "</strong>, fue cerrado el dia <strong>" + DateTime.Now.ToString("dddd dd MMMM, yyyy hh:mm:ss tt", CultureInfo.CreateSpecificCulture("es-MX")) + "</strong>" + "</p>" + "<p><strong>Documento de cierre</strong><br>" + (txtcomentarioscierre.Text == "" ? "" : txtcomentarioscierre.Text) + "<br><a href='https://apps.migesa.com.mx/portal_connext/" + name + "' download>Descargar documento</a></p>" + "<br><p>Este movimiento fue realizado por <strong>" + System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(Session["nombre"].ToString().ToLower()) + "</strong>" + " el dia <strong> " + DateTime.Now.ToString("dddd dd MMMM, yyyy hh:mm:ss tt", System.Globalization.CultureInfo.CreateSpecificCulture("es-MX")) + "</strong>" + "</p>"; CorreosCOM correos = new CorreosCOM(); bool correct = correos.SendMail(mail, subject, mail_to); } } System.Web.UI.ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), "AlertGO('Proyecto terminado correctamente.','mis_proyectos.aspx');", true); } else { Toast.Error("Error al terminar proyecto: " + vmensaje, this); } } } catch (Exception ex) { Toast.Error("Error al terminar proyecto: " + ex.Message, this); } }
/// <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"); } }