예제 #1
0
        protected void btn_aceptar_eliminacion_Click(object sender, EventArgs e)
        {
            int id_mesa = Convert.ToInt32(id_item_por_eliminar.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Mesa mesa = cxt.Mesas.FirstOrDefault(pp => pp.mesa_id == id_mesa);
                if (mesa.mesa_estado == "Generada")
                {
                    List <int> id_jueces = mesa.Jueces.Select(jj => jj.juez_id).ToList();
                    foreach (int id_juez in id_jueces)
                    {
                        Jurado j = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == id_juez);
                        mesa.Jueces.Remove(j);
                    }

                    List <int> id_tesinas = mesa.Tesinas.Select(tt => tt.tesina_id).ToList();
                    foreach (int id_tesina in id_tesinas)
                    {
                        Tesina t = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == id_tesina);
                        mesa.Tesinas.Remove(t);
                    }

                    cxt.Mesas.Remove(mesa);
                    cxt.SaveChanges();
                    MessageBox.Show(this, "Se ha eliminado correctamente la mesa", MessageBox.Tipo_MessageBox.Success);
                }
                else
                {
                    MessageBox.Show(this, "No se puede eliminar una mesa que tenga estado distinta de Generada", MessageBox.Tipo_MessageBox.Danger);
                }
            }

            ObtenerMesas();
        }
예제 #2
0
        protected void btn_aceptar_eliminacion_Click(object sender, EventArgs e)
        {
            int id_juez = Convert.ToInt32(id_item_por_eliminar.Value);

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                Jurado juez = cxt.Jueces.FirstOrDefault(pp => pp.juez_id == id_juez);
                juez.juez_fecha_baja = DateTime.Today;
                if (
                    (juez.Persona.Administrador == null || juez.Persona.Administrador.administrador_fecha_baja != null) && //no tiene el perfil o esta dado de baja
                    (juez.Persona.Tesista == null || juez.Persona.Tesista.tesista_fecha_baja != null) &&                   //no tiene el perfil o esta dado de baja
                    (juez.Persona.Director == null || juez.Persona.Director.director_fecha_baja != null)                   //no tiene el perfil o esta dado de baja
                    )
                {
                    juez.Persona.persona_usuario = "";
                    juez.Persona.persona_clave   = "";
                    juez.Persona.persona_email   = "";
                }

                cxt.SaveChanges();
                MessageBox.Show(this, "Se ha eliminado correctamente al jurado " + juez.Persona.persona_nomyap, MessageBox.Tipo_MessageBox.Success);
            }

            ObtenerJueces();
        }
예제 #3
0
        protected void btn_editar_ServerClick(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_juez = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Jurado juez = cxt.Jueces.FirstOrDefault(pp => pp.juez_id == id_juez);
                if (juez != null)
                {
                    tb_dni_juez.Value                = juez.Persona.persona_dni.ToString();
                    tb_domicilio.Value               = juez.Persona.persona_domicilio;
                    tb_email.Value                   = juez.Persona.persona_email;
                    tb_nombre_juez.Value             = juez.Persona.persona_nomyap;
                    tb_telefono.Value                = juez.Persona.persona_telefono;
                    lbl_agregar_actualizar_juez.Text = "Editar ";

                    tb_dni_juez.Disabled     = true;
                    btn_chequear_dni.Visible = false;

                    btn_guardar.Visible = true;

                    tb_tabla_resto_campos.Visible = true;

                    hidden_id_juez_editar.Value = juez.juez_id.ToString();

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#agregar_juez').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
예제 #4
0
        protected void btn_ver_ServerClick1(object sender, EventArgs e)
        {
            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                int id_juez = Convert.ToInt32(((HtmlButton)sender).Attributes["data-id"]);

                Jurado juez = cxt.Jueces.FirstOrDefault(pp => pp.juez_id == id_juez);
                if (juez != null)
                {
                    lbl_ver_juez_dni.Text       = juez.Persona.persona_dni.ToString();
                    lbl_ver_juez_domicilio.Text = juez.Persona.persona_domicilio;
                    lbl_ver_juez_email.Text     = juez.Persona.persona_email;
                    lbl_ver_juez_nomyap.Text    = juez.Persona.persona_nomyap;
                    lbl_ver_juez_telefono.Text  = juez.Persona.persona_telefono;

                    string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#panel_ver_juez').modal('show')});</script>";
                    ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
                }
            }
        }
예제 #5
0
        protected void btn_aceptar_seleccion_jurado_Click(object sender, EventArgs e)
        {
            List <item_jurado> items_seleccionados  = new List <item_jurado>();
            string             texto_para_el_hidden = string.Empty;

            using (HabProfDBContainer cxt = new HabProfDBContainer())
            {
                foreach (GridViewRow fila in gv_seleccionar_jurado.Rows)
                {
                    CheckBox chk = ((CheckBox)fila.Cells[3].Controls[1]);

                    int    jurado_id = Convert.ToInt32(chk.AccessKey);
                    Jurado jurado    = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == jurado_id);
                    if (chk.Checked)
                    {
                        items_seleccionados.Add(new item_jurado()
                        {
                            juez_id             = jurado.juez_id,
                            juez_persona_nomyap = jurado.Persona.persona_nomyap,
                            juez_persona_dni    = jurado.Persona.persona_dni,
                            juez_persona_email  = jurado.Persona.persona_email
                        });

                        texto_para_el_hidden = texto_para_el_hidden + chk.AccessKey + ",";
                    }
                }
            }

            hidden_ids_jueces.Value = texto_para_el_hidden;

            if (items_seleccionados.Count > 0)
            {
                gv_jurados.DataSource = items_seleccionados;
                gv_jurados.DataBind();
            }
            else
            {
                gv_jurados.DataSource = null;
                gv_jurados.DataBind();
            }
        }
예제 #6
0
        protected void btn_crear_mesa_Click(object sender, EventArgs e)
        {
            Validate();
            if (IsValid)
            {
                string str_mesa_id = Request.QueryString["m"];
                int    mesa_id     = 0;
                if (str_mesa_id == null || int.TryParse(str_mesa_id, out mesa_id))
                {
                    using (HabProfDBContainer cxt = new Aplicativo.HabProfDBContainer())
                    {
                        Mesa mesa = new Mesa();
                        if (str_mesa_id == null)
                        {
                            //mesa nueva
                            mesa = new Aplicativo.Mesa();
                            cxt.Mesas.Add(mesa);
                        }
                        else
                        {
                            mesa = cxt.Mesas.FirstOrDefault(mm => mm.mesa_id == mesa_id);
                            //elimino los jueces y tesinas que tenia asignada para cargar los nuevos
                            List <int> id_jueces = mesa.Jueces.Select(jj => jj.juez_id).ToList();
                            foreach (int id_juez in id_jueces)
                            {
                                Jurado j = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == id_juez);
                                mesa.Jueces.Remove(j);
                            }

                            List <int> id_tesinas = mesa.Tesinas.Select(tt => tt.tesina_id).ToList();
                            foreach (int id_tesina in id_tesinas)
                            {
                                Tesina t = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == id_tesina);
                                mesa.Tesinas.Remove(t);
                            }
                        }

                        string[] jurados_ids = hidden_ids_jueces.Value.Split(',');
                        string[] tesinas_ids = hidden_tesinas_seleccionadas.Value.Split(',');

                        //Agrego jueces
                        foreach (string str_jurado_id in jurados_ids)
                        {
                            int jurado_id;
                            if (int.TryParse(str_jurado_id, out jurado_id))
                            {
                                Jurado jurado = cxt.Jueces.FirstOrDefault(jj => jj.juez_id == jurado_id);
                                mesa.Jueces.Add(jurado);
                            }
                        }

                        //agrego tesinas
                        foreach (string str_tesina_id in tesinas_ids)
                        {
                            int tesina_id;
                            if (int.TryParse(str_tesina_id, out tesina_id))
                            {
                                Tesina tesina = cxt.Tesinas.FirstOrDefault(tt => tt.tesina_id == tesina_id);
                                mesa.Tesinas.Add(tesina);
                            }
                        }

                        mesa.mesa_fecha          = Convert.ToDateTime(tb_fecha_mesa.Value);
                        mesa.mesa_codigo_carrera = Convert.ToInt32(tb_cod_carrera.Text);
                        mesa.mesa_codigo_materia = Convert.ToInt32(tb_cod_materia.Text);
                        mesa.mesa_codigo_plan    = Convert.ToInt32(tb_cod_plan.Text);

                        mesa.mesa_estado = "Generada";

                        /*
                         * Envio_mail em_codirector = new Envio_mail()
                         * {
                         *  persona_id = tesina.Codirector.Persona.persona_id,
                         *  envio_email_destino = tesina.Codirector.Persona.persona_email,
                         *  envio_fecha_hora = DateTime.Now,
                         *  envio_respuesta_clave = "no se usa",
                         *  envio_tipo = MiEmail.tipo_mail.notificacion_eliminacion_tesina_director.ToString()
                         * };
                         * cxt.Envio_mails.Add(em_codirector);
                         * MiEmail me_codirector = new MiEmail(em_codirector, tesina);
                         * me_codirector.Enviar_mail();
                         */

                        foreach (Jurado jurado in mesa.Jueces)
                        {
                            Envio_mail em_jurado = new Envio_mail()
                            {
                                persona_id            = jurado.Persona.persona_id,
                                envio_email_destino   = jurado.Persona.persona_email,
                                envio_fecha_hora      = DateTime.Now,
                                envio_respuesta_clave = "no se usa",
                                envio_tipo            = MiEmail.tipo_mail.notificacion_alta_mesa_jurado.ToString()
                            };
                            cxt.Envio_mails.Add(em_jurado);
                            MiEmail me_jurado = new MiEmail(em_jurado, "Jurado", mesa.mesa_fecha);
                            me_jurado.Enviar_mail();
                        }

                        foreach (Tesina tesina in mesa.Tesinas)
                        {
                            Envio_mail em_tesista = new Envio_mail()
                            {
                                persona_id            = tesina.Tesista.Persona.persona_id,
                                envio_email_destino   = tesina.Tesista.Persona.persona_email,
                                envio_fecha_hora      = DateTime.Now,
                                envio_respuesta_clave = "no se usa",
                                envio_tipo            = MiEmail.tipo_mail.notificacion_alta_mesa_tesista.ToString()
                            };
                            cxt.Envio_mails.Add(em_tesista);
                            MiEmail me_tesista = new MiEmail(em_tesista, "Tesista", mesa.mesa_fecha);
                            me_tesista.Enviar_mail();

                            Envio_mail em_director = new Envio_mail()
                            {
                                persona_id            = tesina.Director.Persona.persona_id,
                                envio_email_destino   = tesina.Director.Persona.persona_email,
                                envio_fecha_hora      = DateTime.Now,
                                envio_respuesta_clave = "no se usa",
                                envio_tipo            = MiEmail.tipo_mail.notificacion_alta_mesa.ToString()
                            };
                            cxt.Envio_mails.Add(em_director);
                            MiEmail me_director = new MiEmail(em_director, "Director", mesa.mesa_fecha);
                            me_director.Enviar_mail();

                            if (tesina.Codirector != null)
                            {
                                Envio_mail em_codirector = new Envio_mail()
                                {
                                    persona_id            = tesina.Codirector.Persona.persona_id,
                                    envio_email_destino   = tesina.Codirector.Persona.persona_email,
                                    envio_fecha_hora      = DateTime.Now,
                                    envio_respuesta_clave = "no se usa",
                                    envio_tipo            = MiEmail.tipo_mail.notificacion_alta_mesa.ToString()
                                };
                                cxt.Envio_mails.Add(em_codirector);
                                MiEmail me_codirector = new MiEmail(em_codirector, tesina);
                                me_codirector.Enviar_mail();
                            }
                        }

                        cxt.SaveChanges();

                        MessageBox.Show(this, "La mesa se creo correctamente", MessageBox.Tipo_MessageBox.Success, "Exito", "../Aplicativo/admin_mesas.aspx");
                    }
                }
                else
                {
                    MessageBox.Show(this, "No se encontro la mesa buscada", MessageBox.Tipo_MessageBox.Danger, "Atención", "../Aplicativo/admin_mesas.aspx");
                }
            }
        }
예제 #7
0
        protected void btn_guardar_ServerClick(object sender, EventArgs e)
        {
            if (this.IsValid)
            {
                Persona usuario = Session["UsuarioLogueado"] as Persona;
                int     id_juez = Convert.ToInt32(hidden_id_juez_editar.Value);

                Persona p_juez = null;
                Jurado  juez   = null;

                using (HabProfDBContainer cxt = new HabProfDBContainer())
                {
                    int dni = 0;
                    int.TryParse(tb_dni_juez.Value, out dni);
                    if (id_juez != 0)
                    {
                        //abrio por editar juez y cambio el DNI, obtengo el juez a editar
                        juez   = cxt.Jueces.Include("Persona").FirstOrDefault(pp => pp.juez_id == id_juez);
                        p_juez = juez.Persona;
                    }
                    else
                    {
                        p_juez = cxt.Personas.FirstOrDefault(pp => pp.persona_dni == dni);
                        if (p_juez != null)
                        {
                            juez = p_juez.Jurado;
                            juez.juez_fecha_baja = null;
                        }
                    }

                    //agrego o actualizo el juez
                    if (p_juez == null)
                    {
                        p_juez = new Persona();
                        p_juez.persona_nomyap    = tb_nombre_juez.Value;
                        p_juez.persona_dni       = dni;
                        p_juez.licenciatura_id   = usuario.licenciatura_id;
                        p_juez.persona_email     = tb_email.Value;
                        p_juez.persona_domicilio = tb_domicilio.Value;
                        p_juez.persona_telefono  = tb_telefono.Value;
                        p_juez.persona_usuario   = "";
                        p_juez.persona_clave     = "";
                        p_juez.persona_estilo    = "Slate";

                        cxt.Personas.Add(p_juez);
                    }
                    else
                    {
                        p_juez.persona_nomyap    = tb_nombre_juez.Value;
                        p_juez.persona_dni       = dni;
                        p_juez.persona_email     = tb_email.Value;
                        p_juez.persona_domicilio = tb_domicilio.Value;
                        p_juez.persona_telefono  = tb_telefono.Value;
                    }


                    if (juez == null)
                    {
                        //no existe hago un insert
                        juez = new Jurado()
                        {
                            Persona = p_juez
                        };

                        cxt.Jueces.Add(juez);
                    }


                    try
                    {
                        cxt.SaveChanges();

                        tb_dni_juez.Value           = string.Empty;
                        tb_domicilio.Value          = string.Empty;
                        tb_email.Value              = string.Empty;
                        tb_nombre_juez.Value        = string.Empty;
                        tb_telefono.Value           = string.Empty;
                        hidden_id_juez_editar.Value = "0";

                        MessageBox.Show(this, "Se guardó correctamente el jurado!", MessageBox.Tipo_MessageBox.Success, "Exito!");
                    }
                    catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)
                    {
                        Exception raise = dbEx;
                        foreach (var validationErrors in dbEx.EntityValidationErrors)
                        {
                            foreach (var validationError in validationErrors.ValidationErrors)
                            {
                                string message = string.Format("{0}:{1}",
                                                               validationErrors.Entry.Entity.ToString(),
                                                               validationError.ErrorMessage);
                                // raise a new exception nesting
                                // the current instance as InnerException
                                raise = new InvalidOperationException(message, raise);
                            }
                        }


                        MessageBox.Show(this, raise.Message);
                    }
                }

                ObtenerJueces();
            }
            else
            {
                string script = "<script language=\"javascript\"  type=\"text/javascript\">$(document).ready(function() { $('#agregar_juez').modal('show')});</script>";
                ScriptManager.RegisterStartupScript(Page, this.GetType(), "ShowPopUp", script, false);
            }
        }