public void VerifyBillingPayment() { _log.Log("Início da rotina de verificação de faturamentos pagos."); var clients = _context.Clients.Include(i => i.Billings).ToArray(); // verificar status // https://dev.gerencianet.com.br/docs/transacoes foreach (var client in clients) { foreach (var billing in client.Billings) { ViewModels.DetailCharge.DetailChargeResponde detailCharge = _sgiService.DetailCharge(billing.ExternalId); if (detailCharge.data.status.ToLower().Equals("paid")) { if (!billing.Status.ToLower().Equals(detailCharge.data.status.ToLower())) { billing.Status = detailCharge.data.status; billing.PaymentDate = DateTime.UtcNow; _context.Entry <Models.ClientBilling>(billing).State = EntityState.Modified; _context.SaveChanges(); _log.Log($"Faturamento do cliente {client.Name}, com vencimento em {billing.PaymentDueDate.Value.ToShortDateString()} foi atualizado."); } } } } _log.Log("Término da rotina de verificação de faturamentos pagos."); }