Beispiel #1
0
        public async Task <IEnumerable <PagamentoStatusDto> > VerificarStatusPagamentos()
        {
            var pagamentosResult = await _pagamentoRepository.GetPagamentosEmAnaliseAsync();

            List <PagamentoStatusDto> pagamentos = new List <PagamentoStatusDto>();

            foreach (var pagamento in pagamentosResult)
            {
                var status = RandomPagamento();

                var pagamentoStatusDto = new PagamentoStatusDto
                {
                    IdPagamento = pagamento.Id,
                    Status      = status,
                    Descricao   = pagamento.Descricao
                };

                pagamentos.Add(pagamentoStatusDto);

                AtualizarStatusPagamento(status, pagamento);
            }

            if (await _pagamentoIntegration.ReportarResultadoAnalise(pagamentos))
            {
                await _pagamentoRepository.SavePagamentoAsync();
            }
            else
            {
                pagamentos = null;
            }

            return(pagamentos);
        }