Exemple #1
0
        protected void btnAdicionarQuestionario_Click(object sender, EventArgs e)
        {
            try
            {
                if (UCComboQuestionario.Valor <= 0)
                {
                    throw new ValidationException(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.QuestionarioObrigatorio").ToString());
                }

                if (VS_lstQuestionarios.Any(q => q.qst_id == UCComboQuestionario.Valor && q.raq_situacao != (byte)CLS_RelatorioAtendimentoQuestionarioSituacao.Excluido))
                {
                    throw new ValidationException(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.QuestionarioJaAdicionado").ToString());
                }

                int raq_id = (VS_lstQuestionarios.Any() ? VS_lstQuestionarios.Max(q => q.raq_id) + 1 : 1);
                while (VS_lstQuestionarios.Any(q => q.raq_id == raq_id))
                {
                    raq_id++;
                }

                VS_lstQuestionarios.Add(new CLS_RelatorioAtendimentoQuestionario
                {
                    rea_id       = VS_rea_id,
                    raq_id       = raq_id,
                    qst_id       = UCComboQuestionario.Valor,
                    qst_titulo   = UCComboQuestionario.Texto,
                    raq_ordem    = (VS_lstQuestionarios.Any() ? VS_lstQuestionarios.Max(q => q.raq_ordem) + 1 : 1),
                    raq_situacao = 1,
                    IsNew        = true
                });

                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();

                UCComboQuestionario.Valor = -1;
            }
            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.ErroAdicionarQuestionario").ToString(), UtilBO.TipoMensagem.Erro);
            }
        }
Exemple #2
0
        /// <summary>
        /// Carrega os questionarios
        /// </summary>
        private void CarregaQuestionarios()
        {
            VS_lstQuestionarios = CLS_RelatorioAtendimentoQuestionarioBO.SelectBy_rea_id(VS_rea_id);
            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();
        }
Exemple #3
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);
                }
            }
        }
Exemple #4
0
        /// <summary>
        /// Insere ou altera o relatório
        /// </summary>
        private void Salvar()
        {
            try
            {
                CLS_RelatorioAtendimento rea = new CLS_RelatorioAtendimento
                {
                    rea_id     = VS_rea_id,
                    rea_titulo = txtTitulo.Text,
                    rea_tipo   = Convert.ToByte(ddlTipo.SelectedValue),
                    rea_permiteEditarRecaCor             = Convert.ToByte(ddlTipo.SelectedValue) == (byte)CLS_RelatorioAtendimentoTipo.AEE && chkExibeRacaCor.Checked,
                    rea_permiteEditarHipoteseDiagnostica = Convert.ToByte(ddlTipo.SelectedValue) == (byte)CLS_RelatorioAtendimentoTipo.AEE && chkExibeHipotese.Checked,
                    rea_permiteAcoesRealizadas           = Convert.ToByte(ddlTipo.SelectedValue) == (byte)CLS_RelatorioAtendimentoTipo.NAAPA && chkAcoesRealizadas.Checked,
                    tds_id = (Convert.ToByte(ddlTipo.SelectedValue) != (byte)CLS_RelatorioAtendimentoTipo.RP ? -1 : UCComboTipoDisciplina.Valor),
                    rea_periodicidadePreenchimento = Convert.ToByte(ddlPeriodicidade.SelectedValue),
                    rea_tituloAnexo = txtTituloAnexo.Text,
                    rea_gerarPendenciaFechamento = chkGerarPendenciasFechamento.Checked,
                    IsNew = VS_rea_id <= 0
                };

                if (!VS_lstQuestionarios.Any(q => q.raq_situacao != (byte)CLS_RelatorioAtendimentoQuestionarioSituacao.Excluido))
                {
                    throw new ValidationException(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.NenhumQuestionarioAdicionado").ToString());
                }

                List <CLS_RelatorioAtendimentoPeriodo> lstPeriodo = rea.rea_tipo == (byte)CLS_RelatorioAtendimentoTipo.RP &&
                                                                    rea.rea_periodicidadePreenchimento == (byte)CLS_RelatorioAtendimentoPeriodicidade.Encerramento ?
                                                                    CarregaPeriodosPreenchidos() : new List <CLS_RelatorioAtendimentoPeriodo>();

                List <CLS_RelatorioAtendimentoGrupo> lstGrupo = CarregaGruposPreenchidos();

                List <CLS_RelatorioAtendimentoCargo> lstCargo = CarregaCargosPreenchidos();

                if (!lstGrupo.Any(g => g.rag_permissaoAprovacao || g.rag_permissaoConsulta || g.rag_permissaoEdicao || g.rag_permissaoExclusao) &&
                    !lstCargo.Any(c => c.rac_permissaoAprovacao || c.rac_permissaoConsulta || c.rac_permissaoEdicao || c.rac_permissaoExclusao))
                {
                    throw new ValidationException(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.NenhumaPermissao").ToString());
                }

                if (rea.rea_tipo == (byte)CLS_RelatorioAtendimentoTipo.RP &&
                    rea.rea_periodicidadePreenchimento == (byte)CLS_RelatorioAtendimentoPeriodicidade.Encerramento &&
                    !lstPeriodo.Any())
                {
                    throw new ValidationException("Selecione pelo menos um período do calendário.");
                }

                if (CLS_RelatorioAtendimentoBO.Salvar(rea, lstGrupo, lstCargo, VS_lstQuestionarios, lstPeriodo, VS_arquivo, ApplicationWEB.TamanhoMaximoArquivo, ApplicationWEB.TiposArquivosPermitidos))
                {
                    string message = "";
                    if (VS_rea_id <= 0)
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "rea_id: " + rea.rea_id);
                        message = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.RelatorioIncluidoSucesso").ToString(), UtilBO.TipoMensagem.Sucesso);
                    }
                    else
                    {
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "rea_id: " + rea.rea_id);
                        message = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.RelatorioAlteradoSucesso").ToString(), UtilBO.TipoMensagem.Sucesso);
                    }
                    if (ParametroPermanecerTela)
                    {
                        ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                        lblMessage.Text = message;
                        VS_rea_id       = rea.rea_id;
                        _LoadFromEntity(VS_rea_id);
                    }
                    else
                    {
                        __SessionWEB.PostMessages = message;
                        Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "Configuracao/RelatorioAtendimento/Busca.aspx", false);
                        HttpContext.Current.ApplicationInstance.CompleteRequest();
                    }
                }
                else
                {
                    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                    lblMessage.Text = UtilBO.GetErroMessage(GetGlobalResourceObject("Configuracao", "RelatorioAtendimento.Cadastro.ErroSalvarRelatorio").ToString(), UtilBO.TipoMensagem.Erro);
                }
            }
            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 (DuplicateNameException ex)
            {
                ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "ScrollToTop", "setTimeout('window.scrollTo(0,0);', 0);", true);
                lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            }
            catch (ArgumentException 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.ErroSalvarRelatorio").ToString(), UtilBO.TipoMensagem.Erro);
            }
        }