示例#1
0
 /// <summary>
 /// Mostra os dados não excluídos logicamente no dropdownlist
 /// </summary>
 public void CarregarQuestionario()
 {
     ddlCombo.Items.Clear();
     ddlCombo.DataSource     = CLS_QuestionarioBO.GetQuestionarioBy_qst_titulo("");
     MostrarMessageSelecione = true;
     ddlCombo.DataBind();
 }
示例#2
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);
            }
        }
示例#3
0
        private void Pesquisar()
        {
            try
            {
                fdsResultado.Visible = true;

                odsResultado.SelectParameters.Clear();

                grvResultado.PageIndex = 0;
                odsResultado.SelectParameters.Clear();
                odsResultado.SelectParameters.Add("qst_id", _VS_qst_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();

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

                updResultado.Update();
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar conteúdos.", UtilBO.TipoMensagem.Erro);
            }
        }
示例#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)
 {
     try
     {
         CLS_Questionario Questionario = new CLS_Questionario {
             qst_id = qst_id
         };
         CLS_QuestionarioBO.GetEntity(Questionario);
         _VS_qst_id      = Questionario.qst_id;
         _txtTitulo.Text = Questionario.qst_titulo;
         _ddlTipoCalculo.SelectedValue = Questionario.qst_tipoCalculo.ToString();
         _ddlTipoCalculo_SelectedIndexChanged(null, null);
         _txtTituloCalculo.Text = Questionario.qst_tituloCalculo;
     }
     catch (Exception e)
     {
         ApplicationWEB._GravaErro(e);
         _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o recurso de aula.", UtilBO.TipoMensagem.Erro);
     }
 }
示例#7
0
 protected void grvResultado_DataBound(object sender, EventArgs e)
 {
     // Mostra o total de registros
     UCTotalRegistros1.Total = CLS_QuestionarioBO.GetTotalRecords();
     ConfiguraColunasOrdenacao(grvResultado);
 }
示例#8
0
        protected void gvQuestionario_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Subir")
            {
                try
                {
                    int index = int.Parse(e.CommandArgument.ToString());

                    int idDescer    = Convert.ToInt32(gvQuestionario.DataKeys[index - 1]["raq_id"]);
                    int idSubir     = Convert.ToInt32(gvQuestionario.DataKeys[index]["raq_id"]);
                    int ordemSubir  = VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idSubir).First())].raq_ordem;
                    int ordemDescer = VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idDescer).First())].raq_ordem;

                    VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idSubir).First())].raq_ordem  = ordemDescer;
                    VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idDescer).First())].raq_ordem = ordemSubir;

                    VS_lstQuestionarios = VS_lstQuestionarios.OrderBy(q => q.raq_ordem).ThenBy(q => q.qst_titulo).ToList();

                    var questionarios = (from qst in VS_lstQuestionarios
                                         where qst.raq_situacao != (byte)CLS_RelatorioAtendimentoQuestionarioSituacao.Excluido
                                         group qst by qst.raq_id into grupo
                                         select grupo.First());

                    gvQuestionario.DataSource = questionarios;
                    gvQuestionario.DataBind();

                    if (gvQuestionario.Rows.Count > 0)
                    {
                        ((ImageButton)gvQuestionario.Rows[0].Cells[2].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)gvQuestionario.Rows[gvQuestionario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }
                catch (ValidationException ex)
                {
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.ErroCarregarRelatorio").ToString(), UtilBO.TipoMensagem.Erro);
                }
            }
            else if (e.CommandName == "Descer")
            {
                try
                {
                    int index = int.Parse(e.CommandArgument.ToString());

                    int idDescer    = Convert.ToInt32(gvQuestionario.DataKeys[index]["raq_id"]);
                    int idSubir     = Convert.ToInt32(gvQuestionario.DataKeys[index + 1]["raq_id"]);
                    int ordemSubir  = VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idSubir).First())].raq_ordem;
                    int ordemDescer = VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idDescer).First())].raq_ordem;

                    VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idSubir).First())].raq_ordem  = ordemDescer;
                    VS_lstQuestionarios[VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idDescer).First())].raq_ordem = ordemSubir;

                    VS_lstQuestionarios = VS_lstQuestionarios.OrderBy(q => q.raq_ordem).ThenBy(q => q.qst_titulo).ToList();

                    var questionarios = (from qst in VS_lstQuestionarios
                                         where qst.raq_situacao != (byte)CLS_RelatorioAtendimentoQuestionarioSituacao.Excluido
                                         group qst by qst.raq_id into grupo
                                         select grupo.First());

                    gvQuestionario.DataSource = questionarios;
                    gvQuestionario.DataBind();

                    if (gvQuestionario.Rows.Count > 0)
                    {
                        ((ImageButton)gvQuestionario.Rows[0].Cells[2].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)gvQuestionario.Rows[gvQuestionario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }
                catch (ValidationException ex)
                {
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.ErroCarregarRelatorio").ToString(), UtilBO.TipoMensagem.Erro);
                }
            }
            else if (e.CommandName == "Excluir")
            {
                try
                {
                    int index = int.Parse(e.CommandArgument.ToString());

                    int idExcluir = Convert.ToInt32(gvQuestionario.DataKeys[index]["raq_id"]);

                    int  qst_idExcluir = Convert.ToInt32(gvQuestionario.DataKeys[index]["qst_id"]);
                    bool isNewExcluir  = Convert.ToBoolean(gvQuestionario.DataKeys[index]["IsNew"]);

                    if (VS_rea_id > 0 && !isNewExcluir && CLS_QuestionarioBO.VerificaQuestionarioEmUso(qst_idExcluir, VS_rea_id))
                    {
                        throw new ValidationException(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.QuestionarioEmUso").ToString());
                    }

                    if (idExcluir > 0 && VS_lstQuestionarios.Any(l => l.raq_id == idExcluir))
                    {
                        int ind   = VS_lstQuestionarios.IndexOf(VS_lstQuestionarios.Where(l => l.raq_id == idExcluir).First());
                        int ordem = VS_lstQuestionarios.Where(l => l.raq_id == idExcluir).First().raq_ordem;

                        //Ajusta as ordens
                        for (int i = ind + 1; i < VS_lstQuestionarios.Count; i++)
                        {
                            VS_lstQuestionarios[i].raq_ordem = ordem;
                            ordem += 1;
                        }

                        VS_lstQuestionarios.RemoveAt(ind);
                    }
                    VS_lstQuestionarios = VS_lstQuestionarios.OrderBy(q => q.raq_ordem).ThenBy(q => q.qst_titulo).ToList();

                    var questionarios = (from qst in VS_lstQuestionarios
                                         where qst.raq_situacao != (byte)CLS_RelatorioAtendimentoQuestionarioSituacao.Excluido
                                         group qst by qst.raq_id into grupo
                                         select grupo.First());

                    gvQuestionario.DataSource = questionarios;
                    gvQuestionario.DataBind();

                    if (gvQuestionario.Rows.Count > 0)
                    {
                        ((ImageButton)gvQuestionario.Rows[0].Cells[2].FindControl("_btnSubir")).Style.Add("visibility", "hidden");
                        ((ImageButton)gvQuestionario.Rows[gvQuestionario.Rows.Count - 1].FindControl("_btnDescer")).Style.Add("visibility", "hidden");
                    }
                }
                catch (ValidationException ex)
                {
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.ErroCarregarRelatorio").ToString(), UtilBO.TipoMensagem.Erro);
                }
            }
        }
示例#9
0
        private void _Salvar()
        {
            try
            {
                CLS_Questionario Questionario = new CLS_Questionario
                {
                    qst_id = _VS_qst_id
                };

                CLS_QuestionarioBO.GetEntity(Questionario);

                if (_txtTitulo.Text.Length > 500)
                {
                    throw new ValidationException("O título do questionário não deve exceder 500 caracteres.");
                }

                if (Convert.ToByte(_ddlTipoCalculo.SelectedValue) != (byte)QuestionarioTipoCalculo.SemCalculo &&
                    _txtTituloCalculo.Text.Length > 500)
                {
                    throw new ValidationException("O título do cálculo não deve exceder 500 caracteres.");
                }

                Questionario.qst_titulo        = _txtTitulo.Text;
                Questionario.qst_tipoCalculo   = Convert.ToByte(_ddlTipoCalculo.SelectedValue);
                Questionario.qst_tituloCalculo = _txtTituloCalculo.Text;
                Questionario.qst_situacao      = 1; //ativo

                DataTable dtTituloRepetido = CLS_QuestionarioBO.GetQuestionarioBy_qst_titulo(_txtTitulo.Text.Trim());
                if (dtTituloRepetido.Rows.Count > 0)
                {
                    if (Convert.ToInt32(dtTituloRepetido.Rows[0]["qst_id"]) != Questionario.qst_id)
                    {
                        throw new ValidationException("Existe um questionário cadastrado com esse nome!");
                    }
                }

                if (CLS_QuestionarioBO.Save(Questionario))
                {
                    if (_VS_qst_id <= 0)
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "qst_id: " + Questionario.qst_id);
                        __SessionWEB.PostMessages = UtilBO.GetErroMessage("Questionário incluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    }
                    else
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "qst_id: " + Questionario.qst_id);
                        __SessionWEB.PostMessages = UtilBO.GetErroMessage("Questionário alterado com sucesso.", UtilBO.TipoMensagem.Sucesso);
                    }

                    Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "Configuracao/Questionario/BuscaQuestionario.aspx", false);
                    HttpContext.Current.ApplicationInstance.CompleteRequest();
                }
                else
                {
                    _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o questionário.", 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 questionário.", UtilBO.TipoMensagem.Erro);
            }
        }