예제 #1
0
        public HttpResponseMessage GetEscolas(Guid?diretoriaId = null)
        {
            try
            {
                List <sComboUAEscola> lst = new List <sComboUAEscola>();
                if ((__userLogged.Grupo.vis_id == SysVisaoID.UnidadeAdministrativa) ||
                    !ACA_ParametroAcademicoBO.VerificaFiltroUniAdmSuperiorPorEntidade(__userLogged.Usuario.ent_id))
                {
                    lst = ESC_UnidadeEscolaBO.SelecionaEscolasControladas(
                        __userLogged.Usuario.ent_id,
                        __userLogged.Grupo.gru_id,
                        __userLogged.Usuario.usu_id,
                        true,
                        ApplicationWEB.AppMinutosCacheLongo);
                }
                else
                {
                    lst = ESC_UnidadeEscolaBO.SelecionaEscolasControladasPorUASuperior(
                        diretoriaId == null ? Guid.Empty : diretoriaId.Value,
                        __userLogged.Usuario.ent_id,
                        __userLogged.Grupo.gru_id,
                        __userLogged.Usuario.usu_id,
                        (byte)1,
                        true,
                        ApplicationWEB.AppMinutosCacheLongo);
                }

                return(Request.CreateResponse(HttpStatusCode.OK,
                                              lst.Select(p => new Escola
                {
                    id = p.esc_id.ToString(),
                    unidadeId = p.uni_id.ToString(),
                    text = p.uni_escolaNome
                })
                                              ));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
예제 #2
0
        /// <summary>
        /// Carrega unidades escolares apartir
        /// do tipo de unidade administrativa superior passada por parâmetro.
        /// </summary>
        /// <param name="uad_idSuperior">Id da unidade administrativa superior</param>
        public void CarregaUnidadesEscolaresPorUASuperior(Guid uad_idSuperior)
        {
            List <sComboUAEscola> dt;
            byte uni_Situacao = MostraApenasAtivas ? (byte)1 : (byte)0;

            // Verifica se obrigatório filtrar por permissão de usuário.
            if (PermissaoUsuario)
            {
                // Verifica se configurado para filtrar por escolas controladas.
                if (FiltroEscolasControladas.HasValue)
                {
                    dt = ESC_UnidadeEscolaBO.SelecionaEscolasControladasPorUASuperior(
                        uad_idSuperior,
                        __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                        __SessionWEB.__UsuarioWEB.Grupo.gru_id,
                        __SessionWEB.__UsuarioWEB.Usuario.usu_id,
                        uni_Situacao,
                        FiltroEscolasControladas.Value,
                        ApplicationWEB.AppMinutosCacheLongo);
                }
                else
                {
                    dt = ESC_UnidadeEscolaBO.GetSelectByUASuperiorSituacao(
                        uad_idSuperior,
                        __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                        __SessionWEB.__UsuarioWEB.Grupo.gru_id,
                        __SessionWEB.__UsuarioWEB.Usuario.usu_id,
                        uni_Situacao,
                        ApplicationWEB.AppMinutosCacheLongo);
                }
            }
            else
            {
                // Verifica se configurado para filtrar por escolas controladas.
                if (FiltroEscolasControladas.HasValue)
                {
                    dt = ESC_UnidadeEscolaBO.SelecionaEscolasControladasPorUASuperiorPermissaoTotal(
                        uad_idSuperior,
                        __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                        true,
                        FiltroEscolasControladas.Value, uni_Situacao,
                        ApplicationWEB.AppMinutosCacheLongo);
                }
                else
                {
                    dt = ESC_UnidadeEscolaBO.GetSelectByUASuperiorPermissaoTotal(
                        uad_idSuperior,
                        __SessionWEB.__UsuarioWEB.Usuario.ent_id,
                        true, uni_Situacao,
                        ApplicationWEB.AppMinutosCacheLongo);
                }
            }

            if (VS_EscolasPapeis.Any())
            {
                dt = dt.Where(p => VS_EscolasPapeis.Any(e => e == p.esc_id)).ToList();
            }

            ddlUnidadeEscola.DataTextField = "esc_uni_nome";

            ddlUnidadeEscola.Items.Clear();
            ddlUnidadeEscola.DataSource   = dt;
            MostrarMessageSelecioneEscola = true;
            ddlUnidadeEscola.DataBind();

            SelecionaPrimeiroItemEscola();
        }