Пример #1
0
		public void PayPoiinApiGetAmountToPay() {
			try {
				ILoanRepository loanRep = ObjectFactory.GetInstance<LoanRepository>();
				var loan = loanRep.Get(2070);
				var facade = new LoanPaymentFacade();
				var installment = loan.Schedule.FirstOrDefault(s => s.Id == 3773);
				var state = facade.GetStateAt(loan, DateTime.Now);
				m_oLog.Debug("Amount to charge is: {0}", state.AmountDue);
			} catch (Exception ex) {
				m_oLog.Debug(ex);
			}
		}
Пример #2
0
        public decimal GetAmountToPay(int installmentId)
        {
            try {
                Log.InfoFormat("Calculating payment for installment {0}", installmentId);

                var installments = ObjectFactory.GetInstance <ILoanScheduleRepository>();
                var facade       = new LoanPaymentFacade();

                var installment = installments.Get(installmentId);
                var loan        = installment.Loan;

                var state = facade.GetStateAt(loan, DateTime.Now);

                _loans.Update(loan);

                Log.InfoFormat("Amount to charge is: {0}", state.AmountDue);
                return(state.AmountDue);
            } catch (Exception ex) {
                Log.Error(ex);
                return(0);
            }
        }
Пример #3
0
 protected LoanScheduleItem GetStateAt(Loan loan, DateTime date)
 {
     return(_facade.GetStateAt(loan, date));
 }