Esempio n. 1
0
        public async Task <IEnumerable <UnidadeEscolarDto> > ObterEscolasPorDre(string dreId)
        {
            var login  = servicoUsuario.ObterLoginAtual();
            var perfil = servicoUsuario.ObterPerfilAtual();

            var escolasPorDre = await repositorioAbrangencia.ObterUes(dreId, login, perfil);

            var lista = from a in escolasPorDre
                        select new UnidadeEscolarDto()
            {
                Codigo = a.Codigo,
                Nome   = a.Nome
            };

            return(lista);
        }
Esempio n. 2
0
        public async Task <IEnumerable <AbrangenciaUeRetorno> > ObterUes(string codigoDre, Modalidade?modalidade)
        {
            var login  = servicoUsuario.ObterLoginAtual();
            var perfil = servicoUsuario.ObterPerfilAtual();

            return(await repositorioAbrangencia.ObterUes(codigoDre, login, perfil, modalidade));
        }
Esempio n. 3
0
        public async Task <IEnumerable <AbrangenciaUeRetorno> > ObterUes(string codigoDre, Modalidade?modalidade, int periodo = 0, bool consideraHistorico = false, int anoLetivo = 0)
        {
            var login  = servicoUsuario.ObterLoginAtual();
            var perfil = servicoUsuario.ObterPerfilAtual();

            return(await repositorioAbrangencia.ObterUes(codigoDre, login, perfil, modalidade, periodo, consideraHistorico, anoLetivo));
        }
Esempio n. 4
0
        public bool UeEstaNaAbrangecia(string login, Guid perfilId, string codigoDre, string codigoUE)
        {
            if (string.IsNullOrWhiteSpace(login) || perfilId == Guid.Empty || string.IsNullOrWhiteSpace(codigoDre) || string.IsNullOrWhiteSpace(codigoUE))
            {
                throw new NegocioException("É necessário informar login, perfil, código da DRE e da UE");
            }

            var ues = repositorioAbrangencia
                      .ObterUes(codigoDre, login, perfilId).Result;

            return(ues.Any(dre => dre.Codigo.Equals(codigoUE, StringComparison.InvariantCultureIgnoreCase)));
        }
Esempio n. 5
0
        public async Task <IEnumerable <SupervisorEscolasDto> > ObterPorDre(string dreId)
        {
            var login  = servicoUsuario.ObterLoginAtual();
            var perfil = servicoUsuario.ObterPerfilAtual();

            var escolasPorDre = await repositorioAbrangencia.ObterUes(dreId, login, perfil);

            var supervisoresEscolasDres = repositorioSupervisorEscolaDre.ObtemPorDreESupervisor(dreId, string.Empty);

            var listaRetorno = new List <SupervisorEscolasDto>();

            TratarRegistrosComSupervisores(escolasPorDre, supervisoresEscolasDres, listaRetorno);
            TrataEscolasSemSupervisores(escolasPorDre, listaRetorno);

            return(listaRetorno);
        }
        public async Task <List <AbrangenciaUeRetorno> > Handle(ObterFiltroRelatoriosUesPorAbrangenciaQuery request, CancellationToken cancellationToken)
        {
            var ues = (await repositorioAbrangencia.ObterUes(request.CodigoDre, request.UsuarioLogado.Login, request.UsuarioLogado.PerfilAtual))?.ToList();

            var possuiAbrangenciaEmTodasAsUes = await mediator.Send(new ObterUsuarioPossuiAbrangenciaEmTodasAsUesQuery(request.UsuarioLogado.PerfilAtual));

            if (ues != null && ues.Any())
            {
                ues = ues.OrderBy(c => c.Nome).ToList();
            }

            if (possuiAbrangenciaEmTodasAsUes)
            {
                ues?.Insert(0, new AbrangenciaUeRetorno {
                    Codigo = "-99", NomeSimples = "Todas"
                });
            }

            return(ues);
        }