public void obtenerPreguntas(int pIdPrueba, Guid pClTokenExterno)
        {
            PreguntaNegocio nPregunta = new PreguntaNegocio();

            vPregunta = new List <E_PREGUNTA>();
            var vListaPreguntas = nPregunta.Obtener_K_PREGUNTA(ID_PRUEBA: vIdPrueba, CL_TOKEN_EXTERNO: vClTokenExterno);

            foreach (var pregunta in vListaPreguntas)
            {
                E_PREGUNTA vObjetoPregunta = new E_PREGUNTA();
                vObjetoPregunta.ID_PRUEBA = pregunta.ID_PRUEBA;
                vObjetoPregunta.ID_CUESTIONARIO_PREGUNTA = pregunta.ID_CUESTIONARIO_PREGUNTA;
                vObjetoPregunta.ID_CUESTIONARIO          = pregunta.ID_CUESTIONARIO;
                vObjetoPregunta.ID_PREGUNTA        = pregunta.ID_PREGUNTA;
                vObjetoPregunta.CL_PREGUNTA        = pregunta.CL_PREGUNTA;
                vObjetoPregunta.NB_PREGUNTA        = pregunta.NB_PREGUNTA;
                vObjetoPregunta.DS_PREGUNTA        = pregunta.DS_PREGUNTA;
                vObjetoPregunta.CL_TIPO_PREGUNTA   = pregunta.CL_TIPO_PREGUNTA;
                vObjetoPregunta.NO_VALOR           = pregunta.NO_VALOR;
                vObjetoPregunta.NO_VALOR_RESPUESTA = pregunta.NO_VALOR_RESPUESTA;
                vObjetoPregunta.NB_RESPUESTA       = pregunta.NB_RESPUESTA;
                vObjetoPregunta.FG_REQUERIDO       = pregunta.FG_REQUERIDO;
                vObjetoPregunta.FG_ACTIVO          = pregunta.FG_ACTIVO;
                vObjetoPregunta.ID_COMPETENCIA     = pregunta.ID_COMPETENCIA;
                vObjetoPregunta.ID_BITACORA        = pregunta.ID_BITACORA;
                vObjetoPregunta.DS_FILTRO          = pregunta.DS_FILTRO;
                vPregunta.Add(vObjetoPregunta);
            }
        }
Example #2
0
        protected void btnTerminar_Click(object sender, EventArgs e)
        {
            radPreg1Resp1.EditModes = radPreg1Resp1.EditModes ^ Telerik.Web.UI.EditModes.Html;
            PruebasNegocio nKprueba      = new PruebasNegocio();
            var            vObjetoPrueba = nKprueba.Obtener_K_PRUEBA(pIdPrueba: vIdPrueba, pClTokenExterno: vClToken);

            PreguntaNegocio nPregunta = new PreguntaNegocio();
            var             vPregunta = nPregunta.Obtener_K_PREGUNTA(ID_PRUEBA: vIdPrueba, CL_TOKEN_EXTERNO: vClToken);

            if (vPregunta.Count > 0)
            {
                if (radPreg1Resp1.Content.ToString().Length > 0)
                {
                    BackQuestionObject(radPreg1Resp1.Content.ToString(), vPregunta.Where(r => r.CL_PREGUNTA.Equals("REDACCION-A-0001")).FirstOrDefault());
                    var vXelements = vPregunta.Select(x =>
                                                      new XElement("RESPUESTA",
                                                                   new XAttribute("ID_PREGUNTA", x.ID_PREGUNTA),
                                                                   new XAttribute("ID_CUESTIONARIO_PREGUNTA", x.ID_CUESTIONARIO_PREGUNTA),
                                                                   new XAttribute("NB_PREGUNTA", x.NB_PREGUNTA),
                                                                   new XAttribute("NB_RESPUESTA", x.NB_RESPUESTA),
                                                                   new XAttribute("NO_VALOR_RESPUESTA", x.NO_VALOR_RESPUESTA),
                                                                   new XAttribute("CL_PREGUNTA", x.CL_PREGUNTA)
                                                                   ));
                    XElement RESPUESTAS =
                        new XElement("RESPUESTAS", vXelements
                                     );

                    CuestionarioPreguntaNegocio nCustionarioPregunta = new CuestionarioPreguntaNegocio();
                    PruebasNegocio objPrueba = new PruebasNegocio();
                    var            vPrueba   = objPrueba.Obtener_K_PRUEBA(pClTokenExterno: vClToken, pIdPrueba: vIdPrueba).FirstOrDefault();

                    if (vPrueba != null)
                    {
                        SPE_OBTIENE_K_PRUEBA_Result vPruebaTerminada = nKprueba.Obtener_K_PRUEBA(pClTokenExterno: vClToken, pIdPrueba: vIdPrueba).FirstOrDefault();
                        vPruebaTerminada.FE_TERMINO     = DateTime.Now;
                        vPruebaTerminada.CL_ESTADO      = E_ESTADO_PRUEBA.TERMINADA.ToString();
                        vPruebaTerminada.NB_TIPO_PRUEBA = "APLICACION";
                        E_RESULTADO vResultados = nKprueba.InsertaActualiza_K_PRUEBA(tipo_transaccion: E_TIPO_OPERACION_DB.A.ToString(), pID_PRUEBA: vIdPrueba, v_k_prueba: vPruebaTerminada, usuario: vClUsuario, programa: vNbPrograma);
                        string      vMensaje    = vResultados.MENSAJE.Where(w => w.CL_IDIOMA.Equals("ES")).FirstOrDefault().DS_MENSAJE;
                        if (vResultados.CL_TIPO_ERROR == E_TIPO_RESPUESTA_DB.WARNING && vMensaje == "NO")
                        {
                            UtilMensajes.MensajeResultadoDB(rnMensaje, "Usted ha tratado de capturar doble una prueba; los datos no fueron guardados.", E_TIPO_RESPUESTA_DB.SUCCESSFUL, 400, 150, "CloseTest");
                        }
                        else
                        {
                            E_RESULTADO vResultado = nCustionarioPregunta.InsertaActualiza_K_CUESTIONARIO_PREGUNTA(tipo_transaccion: E_TIPO_OPERACION_DB.A.ToString(), pIdEvaluado: vPrueba.ID_CANDIDATO, pIdEvaluador: null, pIdCuestionarioPregunta: 0, pIdCuestionario: 0, XML_CUESTIONARIO: RESPUESTAS.ToString(), pNbPrueba: "REDACCION", usuario: vClUsuario, programa: vNbPrograma);
                            string      vMensajes  = vResultado.MENSAJE.Where(w => w.CL_IDIOMA.Equals("ES")).FirstOrDefault().DS_MENSAJE;
                            UtilMensajes.MensajeResultadoDB(rnMensaje, vMensajes, vResultado.CL_TIPO_ERROR, 400, 150, "CloseTest");
                        }
                    }
                }
                else
                {
                    string vMensaje = "Debes de contestar la prueba.";
                    UtilMensajes.MensajeResultadoDB(rnMensaje, vMensaje, E_TIPO_RESPUESTA_DB.WARNING, 400, 150, "");
                }
            }
        }