예제 #1
0
        private void _Carregar(int qtc_id, int qtr_id)
        {
            try
            {
                CLS_QuestionarioResposta Resposta = new CLS_QuestionarioResposta {
                    qtc_id = qtc_id, qtr_id = qtr_id
                };

                CLS_QuestionarioRespostaBO.GetEntity(Resposta);

                CLS_Questionario Questionario = CLS_QuestionarioBO.GetEntity(new CLS_Questionario {
                    qst_id = _VS_qst_id
                });
                CLS_QuestionarioConteudo Conteudo = CLS_QuestionarioConteudoBO.GetEntity(new CLS_QuestionarioConteudo {
                    qst_id = _VS_qst_id, qtc_id = _VS_qtc_id
                });
                ExibePeso = ((Conteudo.qtc_tipoResposta == (byte)QuestionarioTipoResposta.SelecaoUnica) || (Conteudo.qtc_tipoResposta == (byte)QuestionarioTipoResposta.MultiplaSelecao)) && (Questionario.qst_tipoCalculo != (byte)QuestionarioTipoCalculo.SemCalculo);

                _VS_qtr_id      = Resposta.qtr_id;
                _VS_qtc_id      = Resposta.qtc_id;
                _txtTexto.Text  = Resposta.qtr_texto;
                divPeso.Visible = ExibePeso;
                _txtPeso.Text   = divPeso.Visible ? String.Format("{0:0.00}", Resposta.qtr_peso) : String.Format("{0:0.00}", 0);
                _chkPermiteAdicionarTexto.Checked = Resposta.qtr_permiteAdicionarTexto;
            }
            catch (Exception e)
            {
                ApplicationWEB._GravaErro(e);
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar a resposta.", UtilBO.TipoMensagem.Erro);
            }
        }
예제 #2
0
        protected void UCComboQuestionario_SelectedIndexChanged()
        {
            try
            {
                if (UCComboQuestionario.Valor > 0)
                {
                    ddlPergunta.Items.Clear();
                    ddlPergunta.DataSource     = CLS_QuestionarioConteudoBO.SelectConteudoRespostaByQuestionario(UCComboQuestionario.Valor, (byte)QuestionarioTipoConteudo.Pergunta, (byte)QuestionarioTipoResposta.MultiplaSelecao);
                    ddlPergunta.DataTextField  = "qtc_texto";
                    ddlPergunta.DataValueField = "qtc_id";
                    ddlPergunta.Items.Insert(0, new ListItem("-- Selecione uma pergunta --", "-1", true));
                    ddlPergunta.AppendDataBoundItems = true;
                    ddlPergunta.DataBind();
                    ddlPergunta.Enabled = true;
                }
                else
                {
                    ddlPergunta.Enabled = false;
                }

                ddlPergunta.SelectedIndex = 0;
                ddlPergunta_SelectedIndexChanged(null, null);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao carregar perguntas.", UtilBO.TipoMensagem.Erro);
            }
        }
예제 #3
0
        protected void grvResultado_DataBound(object sender, EventArgs e)
        {
            // Mostra o total de registros
            UCTotalRegistros1.Total = CLS_QuestionarioConteudoBO.GetTotalRecords();

            if (grvResultado.Rows.Count > 0)
            {
                ((ImageButton)grvResultado.Rows[0].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                ((ImageButton)grvResultado.Rows[grvResultado.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
            }
        }
예제 #4
0
        protected void grvResultado_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Deletar")
            {
                try
                {
                    int index  = int.Parse(e.CommandArgument.ToString());
                    int qst_id = Convert.ToInt32(grvResultado.DataKeys[index].Values["qst_id"]);

                    CLS_Questionario entity = new CLS_Questionario {
                        qst_id = qst_id
                    };

                    //Verifica os conteúdos do questionário
                    DataTable ConteudosQuestionario = CLS_QuestionarioConteudoBO.SelectByQuestionario(qst_id);
                    var       listQtc_ids           = ConteudosQuestionario.AsEnumerable().Select(q => q.Field <int>("qtc_id")).ToArray();
                    string    qtc_ids = string.Join(",", listQtc_ids.Select(item => item.ToString()).ToArray());

                    //Verifica se o questionário não foi respondido
                    if (!CLS_QuestionarioConteudoPreenchimentoBO.ConteudoPreenchido(qtc_ids))
                    {
                        if (CLS_QuestionarioBO.Delete(entity))
                        {
                            grvResultado.PageIndex = 0;
                            grvResultado.DataBind();
                            ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "qst_id: " + qst_id);
                            lblMessage.Text = UtilBO.GetErroMessage("Questionário excluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                        }
                    }
                    else
                    {
                        grvResultado.PageIndex = 0;
                        grvResultado.DataBind();
                        throw new ValidationException("O questionário não pode ser excluído, pois já foi respondido.");
                    }
                }
                catch (ValidationException ex)
                {
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    lblMessage.Text = UtilBO.GetErroMessage("Erro ao excluir questionário.", UtilBO.TipoMensagem.Erro);
                }
            }
        }
예제 #5
0
        private void Pesquisar()
        {
            try
            {
                fdsResultado.Visible = true;
                CLS_QuestionarioConteudo Conteudo = CLS_QuestionarioConteudoBO.GetEntity(new CLS_QuestionarioConteudo {
                    qtc_id = _VS_qtc_id
                });
                CLS_Questionario Questionario = CLS_QuestionarioBO.GetEntity(new CLS_Questionario {
                    qst_id = _VS_qst_id
                });

                ExibePeso = ((Conteudo.qtc_tipoResposta == (byte)QuestionarioTipoResposta.MultiplaSelecao) || (Conteudo.qtc_tipoResposta == (byte)QuestionarioTipoResposta.SelecaoUnica)) && (Questionario.qst_tipoCalculo != (byte)QuestionarioTipoCalculo.SemCalculo);

                lblInfo.Text = "<b>Questionário: </b>" + CLS_QuestionarioBO.GetEntity(new CLS_Questionario {
                    qst_id = _VS_qst_id
                }).qst_titulo +
                               "<br><b>Conteúdo: </b>" + Conteudo.qtc_texto + "<br>";

                odsResultado.SelectParameters.Clear();

                grvResultado.PageIndex = 0;
                odsResultado.SelectParameters.Clear();
                odsResultado.SelectParameters.Add("qtc_id", _VS_qtc_id.ToString());

                // quantidade de itens por página
                string qtItensPagina = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.QT_ITENS_PAGINACAO);
                int    itensPagina   = string.IsNullOrEmpty(qtItensPagina) ? ApplicationWEB._Paginacao : Convert.ToInt32(qtItensPagina);

                // mostra essa quantidade no combobox
                UCComboQtdePaginacao1.Valor = itensPagina;
                // atribui essa quantidade para o grid
                grvResultado.PageSize = itensPagina;
                // atualiza o grid
                grvResultado.DataBind();

                grvResultado.Columns[indiceColunaPeso].Visible = ExibePeso;

                updResultado.Update();
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar respostas.", UtilBO.TipoMensagem.Erro);
            }
        }
예제 #6
0
 private void _Carregar(int qst_id, int qtc_id)
 {
     try
     {
         CLS_QuestionarioConteudo Conteudo = new CLS_QuestionarioConteudo {
             qst_id = qst_id, qtc_id = qtc_id
         };
         CLS_QuestionarioConteudoBO.GetEntity(Conteudo);
         _VS_qst_id     = Conteudo.qst_id;
         _VS_qtc_id     = Conteudo.qtc_id;
         _txtTexto.Text = Conteudo.qtc_texto;
         _ddlTipoConteudo.SelectedValue = Conteudo.qtc_tipo.ToString();
         lblTipoResposta.Text           = _cpvTipoResposta.Visible ? "Tipo de resposta *" : "Tipo de resposta";
         _ddlTipoResposta.SelectedValue = Conteudo.qtc_tipoResposta.ToString();
         _ddlTipoConteudo.Enabled       = _ddlTipoResposta.Enabled = !CLS_QuestionarioConteudoPreenchimentoBO.ConteudoPreenchido(Conteudo.qtc_id.ToString());
         _ddlTipoResposta.Enabled       = _cpvTipoResposta.Visible = Convert.ToByte(_ddlTipoConteudo.SelectedValue) == (byte)QuestionarioTipoConteudo.Pergunta;
     }
     catch (Exception e)
     {
         ApplicationWEB._GravaErro(e);
         _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o conteúdo.", UtilBO.TipoMensagem.Erro);
     }
 }
예제 #7
0
        private void _Salvar()
        {
            try
            {
                CLS_QuestionarioConteudo Conteudo = new CLS_QuestionarioConteudo
                {
                    qst_id = _VS_qst_id
                    ,
                    qtc_id = _VS_qtc_id
                };

                CLS_QuestionarioConteudoBO.GetEntity(Conteudo);
                if (_txtTexto.Text.Length > 4000)
                {
                    throw new ValidationException("O texto do conteúdo não deve exceder 4000 caracteres.");
                }

                Conteudo.qtc_texto = _txtTexto.Text;

                //TODO ANA Verificar se é do tipo pergunta para alterar o tipo de resposta
                if (!CLS_QuestionarioConteudoPreenchimentoBO.ConteudoPreenchido(Conteudo.qtc_id.ToString()))
                {
                    Conteudo.qtc_tipo = Convert.ToByte(_ddlTipoConteudo.SelectedValue.ToString());
                    if (Conteudo.qtc_tipo == (byte)QuestionarioTipoConteudo.Pergunta)
                    {
                        Conteudo.qtc_tipoResposta = Convert.ToByte(_ddlTipoResposta.SelectedValue.ToString());
                    }
                    else
                    {
                        Conteudo.qtc_tipoResposta = 0;
                    }
                }
                Conteudo.qtc_situacao = 1; //ativo

                if (CLS_QuestionarioConteudoBO.Save(Conteudo))
                {
                    if (_VS_qtc_id <= 0)
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "qtc_id: " + Conteudo.qtc_id + "qst_id: " + Conteudo.qst_id);
                        __SessionWEB.PostMessages = UtilBO.GetErroMessage("Conteúdo incluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    }
                    else
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qtc_id: " + Conteudo.qtc_id + "qst_id: " + Conteudo.qst_id);
                        __SessionWEB.PostMessages = UtilBO.GetErroMessage("Conteúdo alterado com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    }

                    Session["qst_id"] = _VS_qst_id;
                    Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "Configuracao/Questionario/BuscaConteudo.aspx", false);
                    HttpContext.Current.ApplicationInstance.CompleteRequest();
                }
                else
                {
                    _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o conteúdo.", UtilBO.TipoMensagem.Erro);
                }
            }
            catch (ValidationException e)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (DuplicateNameException e)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (ArgumentException e)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (Exception e)
            {
                ApplicationWEB._GravaErro(e);
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o conteúdo.", UtilBO.TipoMensagem.Erro);
            }
        }
예제 #8
0
        protected void grvResultado_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Deletar")
            {
                try
                {
                    int index  = int.Parse(e.CommandArgument.ToString());
                    int qtc_id = Convert.ToInt32(grvResultado.DataKeys[index].Values["qtc_id"]);

                    CLS_QuestionarioConteudo entity = new CLS_QuestionarioConteudo {
                        qtc_id = qtc_id
                    };

                    if (CLS_QuestionarioConteudoBO.Delete(entity))
                    {
                        grvResultado.PageIndex = 0;
                        grvResultado.DataBind();
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "qst_id: " + entity.qst_id + ", qtc_id: " + entity.qtc_id);
                        lblMessage.Text = UtilBO.GetErroMessage("Conteúdo excluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    }
                }
                catch (ValidationException ex)
                {
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    lblMessage.Text = UtilBO.GetErroMessage("Erro ao excluir conteúdo.", UtilBO.TipoMensagem.Erro);
                }
            }

            if (e.CommandName == "Subir")
            {
                try
                {
                    int index = int.Parse(e.CommandArgument.ToString());

                    int qtc_idDescer    = Convert.ToInt32(grvResultado.DataKeys[index - 1]["qtc_id"]);
                    int qtc_ordemDescer = Convert.ToInt32(grvResultado.DataKeys[index]["qtc_ordem"]);
                    CLS_QuestionarioConteudo entityDescer = new CLS_QuestionarioConteudo {
                        qtc_id = qtc_idDescer, qst_id = _VS_qst_id
                    };
                    CLS_QuestionarioConteudoBO.GetEntity(entityDescer);
                    entityDescer.qtc_ordem = qtc_ordemDescer;

                    int qtc_idSubir    = Convert.ToInt32(grvResultado.DataKeys[index]["qtc_id"]);
                    int qtc_ordemSubir = Convert.ToInt32(grvResultado.DataKeys[index - 1]["qtc_ordem"]);
                    CLS_QuestionarioConteudo entitySubir = new CLS_QuestionarioConteudo {
                        qtc_id = qtc_idSubir, qst_id = _VS_qst_id
                    };
                    CLS_QuestionarioConteudoBO.GetEntity(entitySubir);
                    entitySubir.qtc_ordem = qtc_ordemSubir;

                    if (CLS_QuestionarioConteudoBO.SaveOrdem(entityDescer, entitySubir))
                    {
                        grvResultado.DataBind();
                        grvResultado.PageIndex = 0;
                        grvResultado.DataBind();
                    }

                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qtc_id: " + qtc_idSubir + ", qts_id: " + _VS_qst_id);
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qtc_id: " + qtc_idDescer + ", qts_id: " + _VS_qst_id);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro);
                }
            }

            if (e.CommandName == "Descer")
            {
                try
                {
                    int index = int.Parse(e.CommandArgument.ToString());

                    int qtc_idDescer    = Convert.ToInt32(grvResultado.DataKeys[index]["qtc_id"]);
                    int qtc_ordemDescer = Convert.ToInt32(grvResultado.DataKeys[index + 1]["qtc_ordem"]);
                    CLS_QuestionarioConteudo entityDescer = new CLS_QuestionarioConteudo {
                        qtc_id = qtc_idDescer, qst_id = _VS_qst_id
                    };
                    CLS_QuestionarioConteudoBO.GetEntity(entityDescer);
                    entityDescer.qtc_ordem = qtc_ordemDescer;

                    int qtc_idSubir    = Convert.ToInt32(grvResultado.DataKeys[index + 1]["qtc_id"]);
                    int qtc_ordemSubir = Convert.ToInt32(grvResultado.DataKeys[index]["qtc_ordem"]);
                    CLS_QuestionarioConteudo entitySubir = new CLS_QuestionarioConteudo {
                        qtc_id = qtc_idSubir, qst_id = _VS_qst_id
                    };
                    CLS_QuestionarioConteudoBO.GetEntity(entitySubir);
                    entitySubir.qtc_ordem = qtc_ordemSubir;

                    if (CLS_QuestionarioConteudoBO.SaveOrdem(entityDescer, entitySubir))
                    {
                        grvResultado.DataBind();
                        grvResultado.PageIndex = 0;
                        grvResultado.DataBind();
                    }

                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qtc_id: " + qtc_idSubir + ", qts_id: " + _VS_qst_id);
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qtc_id: " + qtc_idDescer + ", qts_id: " + _VS_qst_id);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro);
                }
            }
        }