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