public async Task <IEnumerable <ITabelaDePreco <int> > > ObtemTabelasDePrecoAsync(IEnumerable <int> idsTabelas, TipoDeTabelaDePreco tipo, PeriodoSimples periodo = null) { PeriodoSimples periodoRequisicao = periodo; string apiPath = new Uri(new Uri(_endpoint), Constantes.URL_TABELA_DE_PRECO).AbsoluteUri; RequisicaoSemConteudo <IEnumerable <ITabelaDePreco <int> > > requisicao = new RequisicaoSemConteudo <IEnumerable <ITabelaDePreco <int> > >(apiPath, _context); if (periodoRequisicao != null) { requisicao.Parameters.Add(new ParametrosDaRequisicao("inicio", periodoRequisicao.Inicio.ToString("yyyy-MM-ddTHH:mm:ss"))); requisicao.Parameters.Add(new ParametrosDaRequisicao("fim", periodoRequisicao.Fim.ToString("yyyy-MM-ddTHH:mm:ss"))); } if (tipo != null) { requisicao.Parameters.Add(new ParametrosDaRequisicao("Tipo", tipo.Id.ToString())); } if (idsTabelas?.Count() > 0) { requisicao.Parameters.Add(new ParametrosDaRequisicao("ids", String.Join(",", idsTabelas))); } System.Threading.CancellationToken cancellationToken = new System.Threading.CancellationToken(); string tabelasSerializadas = await requisicao.ObtemAsync(cancellationToken); IEnumerable <ITabelaDePreco <int> > tabelas = DeserializarTabelas(tabelasSerializadas); return(tabelas); }
public async Task <IEnumerable <ITabelaDePreco <int> > > ListaTabelasDePrecoAsync(PeriodoSimples periodo) { PeriodoSimples periodoRequisicao = periodo; if (periodoRequisicao == null) { periodoRequisicao = new PeriodoSimples(); } string apiPath = new Uri(new Uri(_endpoint), Constantes.URL_TABELA_DE_PRECO).AbsoluteUri; RequisicaoSemConteudo <IEnumerable <ITabelaDePreco <int> > > requisicao = new RequisicaoSemConteudo <IEnumerable <ITabelaDePreco <int> > >(apiPath, _context); requisicao.Parameters.Add(new ParametrosDaRequisicao("inicio", periodoRequisicao.Inicio.ToString("yyyy-MM-ddTHH:mm:ss"))); requisicao.Parameters.Add(new ParametrosDaRequisicao("fim", periodoRequisicao.Fim.ToString("yyyy-MM-ddTHH:mm:ss"))); System.Threading.CancellationToken cancellationToken = new System.Threading.CancellationToken(); string tabelasSerializadas = await requisicao.ObtemAsync(cancellationToken); IEnumerable <ITabelaDePreco <int> > tabelas = DeserializarTabelas(tabelasSerializadas); return(tabelas); }
public async Task <IEnumerable <Competencia> > ObterCompetenciasAsync(params string[] identificadoresCompetencias) { return(identificadoresCompetencias.Select(anoMes => new CompetenciaMensal(anoMes))); string apiPath = new Uri(new Uri(_endpoint), Constantes.URL_COMPETENCIAS).AbsoluteUri; RequisicaoSemConteudo <IEnumerable <Competencia> > requisicao = new RequisicaoSemConteudo <IEnumerable <Competencia> >(apiPath, _context); if (identificadoresCompetencias?.Count() > 0) { requisicao.Parameters.Add(new ParametrosDaRequisicao("competencias", String.Join(",", identificadoresCompetencias))); } System.Threading.CancellationToken cancellationToken = new System.Threading.CancellationToken(); string competenciasSerializadas = await requisicao.ObtemAsync(cancellationToken); JsonSerializerSettings settings = new JsonSerializerSettings() { ContractResolver = new JsonLeitorDeCompetenciaContractResolver() }; IEnumerable <Competencia> competencias = JsonConvert.DeserializeObject <IEnumerable <Competencia> >(competenciasSerializadas, settings); return(competencias); }