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); } }
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); } }
protected LoanScheduleItem GetStateAt(Loan loan, DateTime date) { return(_facade.GetStateAt(loan, date)); }