public async Task <List <Notificacao> > NotificacoesGeraisUsuario(UnitOfWork unitOfWork, UsuarioADE usuario) { _servicoAlteracaoEntidades = new ServicoAlteracaoEntidadesSistema(ref unitOfWork); _servicoVisualizacaoNotificacaoGeral = new ServicoVisualizacaoNotificacaoGeral(ref unitOfWork); List <VisualizacaoNotificacaoGeral> NotificacoesVisualizadas = await _servicoVisualizacaoNotificacaoGeral.BuscarPorIdUsuario(usuario.Id); List <AlteracaoEntidadesSistema> AlteracoesSistema = await _servicoAlteracaoEntidades.FiltrarNotificacoes(usuario, NotificacoesVisualizadas); List <Notificacao> Notificacoes = new List <Notificacao>(); foreach (AlteracaoEntidadesSistema alteracao in AlteracoesSistema) { try { IModeloADE Entidade = await _servicoAlteracaoEntidades.ObterEntidadeAlteracao(alteracao.Entidade, alteracao.IdentificadorEntidade); UsuarioADE AutorAlteracao = await ObterUsuarioPorEmailOuId(alteracao.IdAutor); alteracao.Autor = AutorAlteracao; Notificacoes.Add(new Notificacao(alteracao, Entidade)); } catch (Exception) { continue; } } return(Notificacoes); }
public async Task <IActionResult> CadastrarVisualizacaoNotificacao(int idNotificacao) { try { UsuarioADE usuario = await ObterUsuarioLogado(); using (unitOfWork = new UnitOfWork(context)) { _servicoVisualizacaoNotificacaoGeral = new ServicoVisualizacaoNotificacaoGeral(ref unitOfWork); await _servicoVisualizacaoNotificacaoGeral.CadastrarAsync(new VisualizacaoNotificacaoGeral(usuario.Id, idNotificacao)); return(Json("{\"Sucesso\": \"Visualização de notificação incluida.\"}")); } } catch (Exception ex) { await LogError(ex.Message, ex.Source, EnumTipoLog.ErroInterno); return(Json("{\"Erro\": \"Erro ao incluir visualizaçao de notificação\"}")); } }