public IEnumerable <PaymentPlanItemModel> CalculatePaymentPlan(Guid loanTypeId, Guid paymentSchemeTypeId, double loanAmount, int yearCount) { LoanTypeBO loanType = LoanTypeService.GetByGuid(loanTypeId); PaymentSchemeTypeBO paymentSchemeType = ServiceProvider.GetService <PaymentSchemeTypeService>().GetByGuid(paymentSchemeTypeId); return(LoanTypeService .CalculatePaymentPlan(loanType, paymentSchemeType, loanAmount, yearCount) .Select(p => new PaymentPlanItemModel() { Amortization = p.Amortization, Interest = p.Interest, MonthNumber = p.MonthNumber })); }
public List <PaymentPlanItem> CalculatePaymentPlan(LoanTypeBO loanType, double loanAmount, int yearCount) { int monthCount = GetMonthCount(yearCount); List <PaymentPlanItem> paymentPlanItems = new List <PaymentPlanItem>(); double amortization = loanAmount / monthCount; for (int i = 0; i < monthCount; i++) { double interest = loanAmount * GetPecentAsDecimal(loanType.Percent) / MONTHS_IN_YEAR; loanAmount -= amortization; paymentPlanItems.Add(new PaymentPlanItem() { MonthNumber = i + 1, Amortization = amortization, Interest = interest }); } return(paymentPlanItems); }
public LoansController(EmployeeBO employeeBo, LoanBO loanBO, LoanTypeBO loanTypesBO) { _employeeBo = employeeBo; _loanBO = loanBO; _loanTypesBO = loanTypesBO; }