private void ObtenerTesinas() { Automatizacion auto = new Aplicativo.Automatizacion(); List <Tesina> tesinas = auto.Obtener_tesinas_por_notificar(); List <itemgrilla_tesina> tesinas_tema_recortado = (from t in tesinas select new itemgrilla_tesina { tesis_id = t.tesina_id, tesista = t.Tesista.Persona.persona_nomyap, tema_recortado = t.tesina_tema.Length > 20 ? t.tesina_tema.Substring(0, 20) + "..." : t.tesina_tema, tema_completo = t.tesina_tema, estado = t.Estado.estado_tesina_estado, prioridad_orden = Obtener_prioridad(t.Estado.estado_tesina_estado), fecha_fin = t.tesina_plan_fch_presentacion.AddMonths(t.tesina_plan_duracion_meses) }).OrderBy(ii => ii.prioridad_orden).ToList(); if (tesinas_tema_recortado.Count > 0) { gv_tesinas.DataSource = tesinas_tema_recortado; gv_tesinas.DataBind(); lbl_sin_tesinas.Visible = false; } else { lbl_sin_tesinas.Visible = true; gv_tesinas.DataSource = null; gv_tesinas.DataBind(); btn_enviar_correos.Visible = false; } //no muestro la columna prioridad gv_tesinas.Columns[0].Visible = false; lbl_no_existe_tesina.InnerHtml = "<strong> Buen trabajo!</strong> No existen Tesistas por notificar."; }
protected void btn_enviar_correos_ServerClick(object sender, EventArgs e) { Automatizacion auto = new Aplicativo.Automatizacion(); auto.Enviar_correos_notificacion_automatica(); ObtenerTesinas(); MessageBox.Show(this, "Se han enviado correctamente las notificaciones"); }
protected void btn_verificar_correos_Click(object sender, EventArgs e) { Automatizacion auto = new Aplicativo.Automatizacion(); auto.Enviar_correos_notificacion_automatica(); }
private void ObtenerTesinas() { using (HabProfDBContainer cxt = new HabProfDBContainer()) { gv_tesinas.Columns[2].Visible = true; Persona usuario_logueado = Session["UsuarioLogueado"] as Persona; List <Tesina> tesinas = new List <Tesina>(); Automatizacion auto = new Aplicativo.Automatizacion(); auto.Verificar_y_marcar_tesinas_vencidas(); if (Session["Perfil"].ToString() == "Administrador") { //administrador: obtengo todas las tesinas tesinas = (from t in cxt.Tesinas where t.Tesista.tesista_baja_definitiva == null //&& (t.tesina_categoria == categoria || categoria == "Todas las categorias") select t ).ToList(); lbl_no_existe_tesina.InnerHtml = "<strong> No existen Tesinas!</strong> Pruebe agregar algunos para comenzar."; } else { if (Session["Perfil"].ToString() == "Director") { //director: obtengo las tesinas asociadas al director Director dire = cxt.Personas.FirstOrDefault(pp => pp.persona_id == usuario_logueado.persona_id).Director; tesinas = (from t in cxt.Tesinas where (t.director_id == dire.director_id || t.codirector_id == dire.director_id) && t.Tesista.tesista_baja_definitiva == null //&& (t.tesina_categoria == categoria || categoria == "Todas las categorias") select t ).ToList(); btn_agregar_tesina.Visible = false; lbl_small_titulo.Text = "Listado de Tesinas bajo su supervisión"; lbl_no_existe_tesina.InnerHtml = "<strong> No existen Tesinas!</strong> Aún no tiene tesinas asignadas."; } else { //tesista: obtengo la tesina del tesista Tesista tesista = cxt.Personas.FirstOrDefault(pp => pp.persona_id == usuario_logueado.persona_id).Tesista; tesinas = (from t in cxt.Tesinas where t.tesista_id == tesista.tesista_id select t ).ToList(); btn_agregar_tesina.Visible = false; lbl_small_titulo.Text = "Tesina presentada"; lbl_no_existe_tesina.InnerHtml = "<strong> No existe Tesina!</strong> Aún no se cargo su tesina."; } } List <itemgrilla_tesina> tesinas_tema_recortado = (from t in tesinas where VerificarTesina(t) == true select new itemgrilla_tesina { tesis_id = t.tesina_id, tesista = t.Tesista.Persona.persona_nomyap, director = t.Director.Persona.persona_nomyap, tema_recortado = t.tesina_tema.Length > 20 ? t.tesina_tema.Substring(0, 20) + "..." : t.tesina_tema, tema_completo = t.tesina_tema, categoria = t.tesina_categoria, estado = t.Estado.estado_tesina_estado, prioridad_orden = Obtener_prioridad(t.Estado.estado_tesina_estado) }).OrderBy(ii => ii.prioridad_orden).ToList(); if (tesinas_tema_recortado.Count > 0) { gv_tesinas.DataSource = tesinas_tema_recortado; gv_tesinas.DataBind(); lbl_sin_tesinas.Visible = false; div_filtro_categorias.Visible = true; lbl_titulo_filtro_categoria.Visible = true; lbl_no_existen_tesinas_con_ese_filtro.Visible = false; if ((rb_categoria.Checked && ddl_categorias.SelectedItem.Text != "Todas las categorias")) { gv_tesinas.Columns[2].Visible = false; } } else { gv_tesinas.DataSource = null; gv_tesinas.DataBind(); if (tesinas.Count == 0) { lbl_sin_tesinas.Visible = true; div_filtro_categorias.Visible = false; lbl_titulo_filtro_categoria.Visible = false; } else { lbl_no_existen_tesinas_con_ese_filtro.Visible = true; } } //no muestro la columna prioridad gv_tesinas.Columns[0].Visible = false; //si no es administrador escondo la columna para eliminar o editar la tesina y el baner de que no existen tesinas if (Session["Perfil"].ToString() != "Administrador") { gv_tesinas.Columns[6].Visible = false; lbl_sin_tesinas.Visible = false; } } if (rb_grupo.Checked) { lbl_categoria_seleccionada.InnerHtml = "Mostrando resultados de filtrar por el grupo: <b>" + ddl_grupos.SelectedItem.Text + "</b>."; rb_grupo.Checked = true; } else { lbl_categoria_seleccionada.InnerHtml = "Mostrando resultados de filtrar por la categoria: <b>" + ddl_categorias.SelectedItem.Text + "</b>."; rb_categoria.Checked = true; } }