diff --git a/Financials.Services/Features/Fatura/ObterFatura.cs b/Financials.Services/Features/Fatura/ObterFatura.cs index 02e2bca..ed13a53 100644 --- a/Financials.Services/Features/Fatura/ObterFatura.cs +++ b/Financials.Services/Features/Fatura/ObterFatura.cs @@ -43,7 +43,10 @@ public async Task> Handle(ObterFaturaRequest requ .GetByExpression(c => c.CartaoCreditoId == request.CartaoId) .OrderByDescending(c => c.DataAlteracao); - var dataFechamentoVigente = ObterDataFechamentoVigente(alteracoesFechamento, request.DataReferencia); + var dataFechamentoVigente = ObterDataFechamentoVigente( + alteracoesFechamento, + request.DataReferencia, + cartao.DataFechamento); var (dataInicio, dataFim) = ObterPeriodoFatura(dataFechamentoVigente, request.DataReferencia); var transacoes = _transacaoRepositorio @@ -70,9 +73,13 @@ public async Task> Handle(ObterFaturaRequest requ return response; } - private static DateTime ObterDataFechamentoVigente(IEnumerable alteracoes, DateTime dataReferencia) + private static DateTime ObterDataFechamentoVigente( + IEnumerable alteracoes, + DateTime dataReferencia, + DateTime dataFechamentoAtual) { - return alteracoes.FirstOrDefault(c => c.DataAlteracao <= dataReferencia)?.DataFechamentoAnterior ?? dataReferencia; + return alteracoes.FirstOrDefault(c => c.DataAlteracao <= dataReferencia)?.DataFechamentoAnterior + ?? dataFechamentoAtual; } private static (DateTime dataInicio, DateTime dataFim) ObterPeriodoFatura(DateTime dataFechamento, DateTime dataReferencia)