Beispiel #1
0
        public async Task <bool> DeletarPerfilAsync(Perfil perfil)
        {
            var usuariosComPerfil = await _usuarioRepo.Buscar(u => u.PerfilId == perfil.Id);

            if (usuariosComPerfil.Any())
            {
                await _mediator.Publish(new DomainNotification(GetType().Name, "O perfil esta em uso e não pode ser deletado."));

                return(await Task.FromResult(false));
            }

            if (perfil.Atribuicoes.Any())
            {
                perfil.Deletar();
                _perfilRepo.Atualizar(perfil);
                return(await Task.FromResult(true));
            }

            _perfilRepo.Deletar(perfil);
            return(await Task.FromResult(true));
        }