Example #1
0
    /// <summary>
    /// Realiza a consulta com os filtros informados, e salva a busca realizada na sessão.
    /// </summary>
    private void _Pesquisar(int pageIndex, bool alterarSessaoBusca)
    {
        try
        {
            string dataCriacao   = string.IsNullOrEmpty(_txtDataCriacao.Text) ? new DateTime().ToString("yyyy-MM-dd") : Convert.ToDateTime(_txtDataCriacao.Text).ToString("yyyy-MM-dd");
            string dataAlteracao = string.IsNullOrEmpty(_txtDataAlteracao.Text) ? new DateTime().ToString("yyyy-MM-dd") : Convert.ToDateTime(_txtDataAlteracao.Text).ToString("yyyy-MM-dd");

            //Seta o tipo de busca por nome do aluno : 1 - Contém / 2 - Começa por / 3 - Fonética
            byte tipoBusca = Convert.ToByte(_rblEscolhaBusca.SelectedValue);

            bool apenasGemeo         = PermiteAlunoGemeo && chkApenasGemeos.Checked;
            bool podeVisualizarTodos = __SessionWEB.__UsuarioWEB.Grupo.vis_id != SysVisaoID.Administracao &&
                                       chkPesquisarTodasEscolas.Checked;

            _grvAluno.DataSource = _VS_doc_id > 0 ?
                                   ACA_AlunoBO.GetSelectBy_Docente
                                   (
                __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                _VS_doc_id,
                tipoBusca,
                _txtNome.Text,
                _txtMae.Text,
                _txtDataNascimento.Text,
                _txtMatricula.Text,
                _txtMatriculaEstadual.Text,
                Convert.ToDateTime(dataCriacao),
                Convert.ToDateTime(dataAlteracao),
                ckbApenasDeficiencia.Checked,
                apenasGemeo,
                UCComboTipoDeficiencia.Valor,
                UCComboQtdePaginacao1.Valor,
                pageIndex,
                (int)VS_SortDirection,
                VS_Ordenacao,
                false
                                   ) :
                                   ACA_AlunoBO.BuscaAlunos_PorFiltroPreferencial
                                   (
                uccUaEscola.Uad_ID,
                uccUaEscola.Esc_ID,
                uccUaEscola.Uni_ID,
                _txtNome.Text,
                tipoBusca,
                _txtDataNascimento.Text,
                _txtMae.Text,
                _txtMatricula.Text,
                _txtMatriculaEstadual.Text,
                Convert.ToByte(ddlSituacao.SelectedValue),
                dataCriacao,
                dataAlteracao,
                ckbApenasDeficiencia.Checked,
                UCComboTipoDeficiencia.Valor,
                __SessionWEB.__UsuarioWEB.Grupo.vis_id == SysVisaoID.Administracao,
                podeVisualizarTodos,
                false,
                apenasGemeo,
                __SessionWEB.__UsuarioWEB.Usuario.usu_id,
                __SessionWEB.__UsuarioWEB.Grupo.gru_id,
                __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                false,
                false,
                UCComboQtdePaginacao1.Valor,
                pageIndex,
                (int)VS_SortDirection,
                VS_Ordenacao,
                false
                                   );

            _grvAluno.PageIndex        = pageIndex;
            _grvAluno.PageSize         = UCComboQtdePaginacao1.Valor;
            _grvAluno.VirtualItemCount = ACA_AlunoBO.GetTotalRecords();

            _grvAluno.DataBind();

            #region Salvar busca realizada com os parâmetros do ODS.

            if (alterarSessaoBusca)
            {
                Dictionary <string, string> filtros = new Dictionary <string, string>();

                if (_VS_doc_id > 0)
                {
                    filtros.Add("doc_id", _VS_doc_id.ToString());
                }
                else
                {
                    filtros.Add("uad_idSuperior", uccUaEscola.Uad_ID.ToString());
                    filtros.Add("esc_id", uccUaEscola.Esc_ID.ToString());
                    filtros.Add("uni_id", uccUaEscola.Uni_ID.ToString());
                    filtros.Add("alu_situacao", Convert.ToString(ddlSituacao.SelectedValue));
                    filtros.Add("adm", (__SessionWEB.__UsuarioWEB.Grupo.vis_id == SysVisaoID.Administracao).ToString());
                    filtros.Add("podeVisualizarTodos", podeVisualizarTodos.ToString());
                    filtros.Add("usu_id", __SessionWEB.__UsuarioWEB.Usuario.usu_id.ToString());
                    filtros.Add("gru_id", __SessionWEB.__UsuarioWEB.Grupo.gru_id.ToString());
                    filtros.Add("apenasIntencaoTransferencia", "false");
                    filtros.Add("retornaExcedentes", "false");
                    filtros.Add("retornaPreMatricula", "false");
                }

                filtros.Add("pes_nome", _txtNome.Text);
                filtros.Add("pes_dataNascimento", _txtDataNascimento.Text);
                filtros.Add("pes_nomeMae", _txtMae.Text);
                filtros.Add("tipoBusca", tipoBusca.ToString());
                filtros.Add("alc_matricula", _txtMatricula.Text);
                filtros.Add("alc_matriculaEstadual", _txtMatriculaEstadual.Text);
                filtros.Add("alu_dataCriacao", dataCriacao);
                filtros.Add("alu_dataAlteracao", dataAlteracao);
                filtros.Add("apenasDeficiente", ckbApenasDeficiencia.Checked.ToString());
                filtros.Add("deficiencia", UCComboTipoDeficiencia.Valor.ToString());
                filtros.Add("apenasGemeo", apenasGemeo.ToString());
                filtros.Add("ent_id", __SessionWEB.__UsuarioWEB.Usuario.ent_id.ToString());

                __SessionWEB.BuscaRealizada = new BuscaGestao
                {
                    PaginaBusca = PaginaGestao.Alunos
                    ,
                    Filtros = filtros
                };
            }

            #endregion Salvar busca realizada com os parâmetros do ODS.

            fdsResultados.Visible = true;

            //Mostra a legenda e itens por pagina caso forem retornados alunos pela pesquisa
            divLegenda.Visible = _grvAluno.Rows.Count > 0;
        }
        catch (ValidationException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar os alunos.", UtilBO.TipoMensagem.Erro);
        }
    }