public List <TabelaPrecoAvulsoNotificacao> RetornaNotificacoesPendentes(Usuario usuario) { try { var parametroTabelaPrecoAvulsoNotificacao = _parametroNotificacaoAplicacao .BuscarPor(x => x.TipoNotificacao.Entidade == Entidades.TabelaPrecoAvulso && x.Aprovadores.Any(m => m.Usuario.Id == usuario.Id)) .FirstOrDefault(); var listaTabelaPrecoAvulso = new List <TabelaPrecoAvulso>(); if (parametroTabelaPrecoAvulsoNotificacao != null) { listaTabelaPrecoAvulso = _tabelaPrecoAvulsoAplicacao.BuscarPor(x => x.Notificacoes.Any(m => m.Notificacao.Status == StatusNotificacao.Aguardando)).ToList(); } var listaTabelaPrecoAvulsoNotificacao = new List <TabelaPrecoAvulsoNotificacao>(); foreach (var item in listaTabelaPrecoAvulso) { foreach (var item2 in item.Notificacoes) { var TabelaPrecoAvulsoNotif = new TabelaPrecoAvulsoNotificacao() { TabelaPrecoAvulso = item, Notificacao = item2.Notificacao }; listaTabelaPrecoAvulsoNotificacao.Add(TabelaPrecoAvulsoNotif); } } return(listaTabelaPrecoAvulsoNotificacao); } catch (Exception ex) { throw new System.Exception("Erro ao buscar as notificações pendentes de Preço : " + ex.Message + "trace: " + ex.StackTrace); } }
public TabelaPrecoAvulsoViewModel GetTabelaPrecoAvulsoPadrao(int idUnidade) { var entidade = _tabelaPrecoAvulsoAplicacao.BuscarPor(x => x.Padrao == true)?.ToList()?.LastOrDefault(x => x.ListaUnidade != null && x.ListaUnidade.Any(y => y.Unidade.Id == idUnidade)) ?? null; return(entidade != null ? new TabelaPrecoAvulsoViewModel(entidade) : null); }