public void GenerateBalanceWithInterest(Balance balance, DateTime date) { using (_balanceRepository.BeginTransaction()) { //Save Interes if (balance.Total < 0) { var interest = balance.Total * TX_INTEREST * (-1); _interestRepository.Save(new Interest(interest, date, balance.Account)); balance.Total += interest; balance.Charges.Add(new ShortEntryDTO(DateTime.Today, interest)); } var yesterday = _balanceRepository.LastByOrDefault(balance.Account, date.AddDays(-1)); balance.UpdateDayPosition(yesterday.Total); balance.Closed = true; _balanceRepository.Update(balance); _balanceRepository.Commit(); } }