Esempio n. 1
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);
        }
Esempio n. 2
0
        public async Task <IEnumerable <UnidadeEscolarDto> > ObterEscolasSemAtribuicao(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);

            return(TrataEscolasSemSupervisores(escolasPorDre, supervisoresEscolasDres));
        }
Esempio n. 3
0
        public void AtribuirUE(AtribuicaoSupervisorUEDto atribuicaoSupervisorEscolaDto)
        {
            var escolasAtribuidas = repositorioSupervisorEscolaDre.ObtemPorDreESupervisor(atribuicaoSupervisorEscolaDto.DreId, atribuicaoSupervisorEscolaDto.SupervisorId, true);

            var codigosEscolasDominio = escolasAtribuidas?.Where(e => !e.Excluido).Select(c => c.EscolaId);

            using (var transacao = unitOfWork.IniciarTransacao())
            {
                RemoverEscolas(atribuicaoSupervisorEscolaDto, escolasAtribuidas);
                AtribuirEscolas(atribuicaoSupervisorEscolaDto, codigosEscolasDominio);

                unitOfWork.PersistirTransacao();
            }
        }