public string GenerateReport(LoanResultServiceModel serviceModel) { var stringBuilder = new StringBuilder(); stringBuilder.AppendLine($"Input:"); stringBuilder.AppendLine($"Loan Amount:"); stringBuilder.AppendLine($"{serviceModel.LoanAmount:#}"); stringBuilder.AppendLine($"Duration of Loan:"); stringBuilder.AppendLine($"{serviceModel.DurationOfLoan:#}"); stringBuilder.AppendLine($"Output:"); stringBuilder.AppendLine($"Total Loan Amount:"); stringBuilder.AppendLine($"{serviceModel.TotalLoanAmount:#}"); stringBuilder.AppendLine($"Interest Rate:"); stringBuilder.AppendLine($"{serviceModel.InterestRate:#}"); stringBuilder.AppendLine($"Monthly Payment:"); stringBuilder.AppendLine($"{serviceModel.MonthlyPayment:#}"); stringBuilder.AppendLine($"Administration Fee:"); stringBuilder.AppendLine($"{serviceModel.AdministrationFee:#}"); return(stringBuilder.ToString()); }
public LoanResultServiceModel CalculateLoan(LoanCalculationServiceModel serviceModel) { var result = new LoanResultServiceModel { DurationOfLoan = serviceModel.Duration, LoanAmount = serviceModel.Amount, InterestRate = CalculateInterestRate(serviceModel.Amount, serviceModel.Duration), AdministrationFee = CalculateAdministrationFee(serviceModel.Amount), }; result.TotalLoanAmount = result.InterestRate + result.LoanAmount + result.AdministrationFee; result.MonthlyPayment = CalculateMonthlyPayment(result.TotalLoanAmount, result.DurationOfLoan); return(result); }