public static IPaymentScheme GetInstance(PaymentSchemeTypeEnum paymentSchemeId) { IPaymentScheme paymentScheme = null; switch (paymentSchemeId) { case PaymentSchemeTypeEnum.Monthly: paymentScheme = new MonthlyPaymentScheme(); break; } return(paymentScheme); }
public List <PaymentPlanItem> CalculatePaymentPlan(LoanTypeBO loanType, PaymentSchemeTypeBO paymentSchemeType, double loanAmount, int yearCount) { IPaymentScheme paymentScheme = PaymentSchemeFactory.GetInstance((PaymentSchemeTypeEnum)paymentSchemeType.Id); return(paymentScheme.CalculatePaymentPlan(loanType, loanAmount, yearCount)); }