/// <summary>
        /// Obteners the respuestas.
        /// </summary>
        /// <param name="respuesta">The respuesta.</param>
        /// <returns></returns>
        private List<miRespuesta> ObtenerRespuestas(RespuestaPreguntaAnalisis respuesta)
        {
            List<miRespuesta> listaRespuestasLocal = new List<miRespuesta>();
            miRespuesta laRespuesta = new miRespuesta();

            EscalaMedicion escala = new EscalaMedicion();
            escala.idEscala = respuesta.idEscalaPonderacion;

            BLValorEscala objBLValorEscala = new BLValorEscala();
            List<ValorEscalaMedicion> valoresEscala = objBLValorEscala.GetValoresEscalasMedicion(escala);

            //EVITO PROCESAR LA ESCALA TEXTUAL
            if (respuesta.idEscalaPonderacion != 3)
            {
                int index = 0;
                foreach (ValoresSeleccionados valores in respuesta.valoresSeleccionados)
                {
                    laRespuesta.respuesta = valoresEscala[index].nombre;
                    laRespuesta.cantidad = valores.cantidad;
                    listaRespuestasLocal.Add(laRespuesta);
                    index++;
                }
            }

            return listaRespuestasLocal;
        }
        private void SubirUnNivel(int idSeleccionado)
        {
            ValorEscalaMedicion valorEscalaUp = listaValoresEscala.Find(c => c.idValorEscala == idSeleccionado);
            ValorEscalaMedicion valorEscalaDown = listaValoresEscala.Find(c => c.orden == valorEscalaUp.orden - 1);

            valorEscalaDown.orden = valorEscalaUp.orden;
            valorEscalaUp.orden = valorEscalaUp.orden - 1;

            BLValorEscala objBLValorEscalaDown = new BLValorEscala(valorEscalaDown);
            BLValorEscala objBLValorEscalaUp = new BLValorEscala(valorEscalaUp);

            objBLValorEscalaDown.Save();
            objBLValorEscalaUp.Save();
        }
        /// <summary>
        /// Guardars the valor escala.
        /// </summary>
        /// <param name="entidad">The entidad.</param>
        private void GuardarValorEscala(ValorEscalaMedicion entidad)
        {
            entidad.idEscalaMedicion = escalaMedicionSesion.idEscala;
            BLValorEscala objBLValorEscala = new BLValorEscala(entidad);

            objBLValorEscala.Save();
        }
        /// <summary>
        /// Eliminar la pregunta.
        /// </summary>
        private void EliminarValorEscala()
        {
            ValorEscalaMedicion objEliminar = new ValorEscalaMedicion();
            objEliminar.idValorEscala = propValorEscala.idValorEscala;
            objEliminar.idEscalaMedicion = escalaMedicionSesion.idEscala;

            //escalaMedicionSesion.valoresEscalas.Clear();
            //escalaMedicionSesion.valoresEscalas.Add(objEliminar);

            objBLValorEscala = new BLValorEscala(objEliminar);
            objBLValorEscala.Delete();

            CargarPresentacion();
            BuscarValoresEscala(null);
        }
 /// <summary>
 /// Cargars the lista.
 /// </summary>
 /// <param name="entidad">The entidad.</param>
 private void CargarLista(EscalaMedicion entidad)
 {
     objBLValorEscala = new BLValorEscala(propValorEscala);
     listaValoresEscala = objBLValorEscala.GetValoresEscalasMedicion(entidad);
 }
Example #6
0
        /// <summary>
        /// Generars the esqueleto.
        /// </summary>
        /// <param name="entidad">The entidad.</param>
        private void generarEsqueleto(Encuesta entidad)
        {
            objBLEncuesta = new BLEncuesta();

            objBLPregunta = new BLPregunta();

            if (listaCategorias.Count == 0)
                listaCategorias = objBLEncuesta.GetCategoriasPorEncuesta(entidad);

            lblNombreEncuesta.Text = entidad.nombreEncuesta;

            Label lblCategoria;

            AjaxControlToolkit.AccordionPane pn;
            int i = 0;
            int contador = 0;
            List<string> textoPregunta = new List<string>();
            foreach (CategoriaPregunta categoria in listaCategorias)
            {
                List<Pregunta> preguntasPorCategoria = objBLPregunta.GetPreguntasPorCategoria(categoria, entidad);

                lblCategoria = new Label();

                lblCategoria.Text = categoria.nombre;

                pn = new AjaxControlToolkit.AccordionPane();
                pn.ID = "Panel_" + i;

                pn.HeaderContainer.Controls.Add(lblCategoria);

                if (preguntasPorCategoria.Count > 0)
                {
                    Label lblPregunta;

                    foreach (Pregunta pregunta in preguntasPorCategoria)
                    {
                        contador++;
                        Panel panelRespuesta = new Panel();
                        panelRespuesta.ID = "pregunta_" + contador.ToString();

                        //PREGUNTA
                        lblPregunta = new Label();

                        textoPregunta = new List<string>();

                        textoPregunta = UIUtilidades.StringWrap(pregunta.textoPregunta, 130);

                        foreach (string item in textoPregunta)
                            lblPregunta.Text += item + "<br />";

                        lblPregunta.Font.Bold = true;
                        lblPregunta.Font.Size = 11;

                        panelRespuesta.Controls.Add(lblPregunta);

                        respuestaSkeleton.pregunta = pregunta;

                        Respuesta miRespuesta = null;
                        //RESPUESTA
                        if (pregunta.escala.nombre.Equals("Conceptual literal"))
                        {
                            TextBox txtRespuesta = new TextBox();
                            txtRespuesta.ID = "respuesta_" + pregunta.idPregunta.ToString();
                            txtRespuesta.Rows = 5;
                            txtRespuesta.Columns = 75;
                            txtRespuesta.AutoPostBack = false;
                            txtRespuesta.CssClass = "txtMultilinea99";
                            txtRespuesta.TextMode = TextBoxMode.MultiLine;
                            txtRespuesta.Wrap = false;
                            txtRespuesta.MaxLength = 4000;

                            if (ListaRespuestas != null)
                            {
                                miRespuesta = ListaRespuestas.Find(p => p.pregunta.textoPregunta == txtRespuesta.ID);
                                if (miRespuesta != null) txtRespuesta.Text = miRespuesta.respuestaTextual;
                            }
                            txtRespuesta.TextChanged += new EventHandler(this.text_Changed);
                            txtRespuesta.Attributes.Add("onBlur", "GuardarRespuesta(this);");

                            panelRespuesta.Controls.Add(new LiteralControl("<br/>"));
                            panelRespuesta.Controls.Add(txtRespuesta);
                            panelRespuesta.Controls.Add(new LiteralControl("<br/>"));
                        }
                        else
                        {
                            List<ValorEscalaMedicion> lista = new List<ValorEscalaMedicion>();
                            BLValorEscala objBL = new BLValorEscala();
                            EscalaMedicion miEscala = new EscalaMedicion();
                            lista = objBL.GetValoresEscalasMedicion(pregunta.escala);

                            RadioButtonList botonera = new RadioButtonList();
                            botonera.AutoPostBack = true;
                            botonera.ID = "respuesta_" + pregunta.idPregunta.ToString();
                            botonera.SelectedIndexChanged += new EventHandler(botonera_SelectedIndexChanged);
                            foreach (ValorEscalaMedicion item in lista)
                                botonera.Items.Add(new ListItem(item.nombre, item.idValorEscala.ToString()));

                            panelRespuesta.Controls.Add(botonera);
                            cantRespuestasMinimas++;
                        }

                        pn.ContentContainer.Controls.Add(panelRespuesta);
                        pn.ContentContainer.Controls.Add(new LiteralControl("<br/>"));
                    }
                }
                CuestionarioAccordion.Panes.Add(pn);
                ++i;
            }
        }