コード例 #1
0
        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();
            }
        }