Fix IO poison in handlers (UtcNow instead of a passed in date time).

This commit is contained in:
2026-07-16 17:18:53 +02:00
parent ee1e64c944
commit 283f50ba63
5 changed files with 34 additions and 35 deletions
@@ -3,15 +3,11 @@ using Microsoft.EntityFrameworkCore;
namespace FinancialApi.Infrastructure;
public class ReversalQuery : IReversalQuery
public class ReversalQuery(AccountDbContext db, TimeProvider timeProvider) : IReversalQuery
{
private readonly AccountDbContext _db;
public ReversalQuery(AccountDbContext db) => _db = db;
public async Task<ReversalData?> GetReversalDataAsync(Guid journalEntryId)
{
var entry = await _db.JournalEntries
var entry = await db.JournalEntries
.Include(x => x.Lines)
.AsNoTracking()
.FirstOrDefaultAsync(x => x.Id == journalEntryId);
@@ -23,11 +19,11 @@ public class ReversalQuery : IReversalQuery
var accountIds = entry.Lines.Select(l => l.AccountId).Distinct().ToList();
var accounts = await _db.Accounts
var accounts = await db.Accounts
.AsNoTracking()
.Where(a => accountIds.Contains(a.Id))
.ToListAsync();
return new ReversalData(entry, accounts);
return new ReversalData(entry, accounts, timeProvider.GetUtcNow());
}
}