public HttpResponseMessage GetLoanDetails() { using (GVOneEntities1 db = new GVOneEntities1()) { int loanID = User.Identity.LoanID(); LoanDetailsModel loanDetails = (from l in db.tblLoans where l.tblLoanID == loanID select new LoanDetailsModel { Name = l.tblUser.Name, ActualLoanID = l.ActualLoanID, Address = l.tblUser.Address, Description = l.tblLoanStatu.Description, Lable = l.tblLoanStatu.Lable, Borrowers = l.tblUserLoans.Where(m => m.tblRole.Name == "User").SelectMany(z => l.tblUserLoans.Select(v => new UsersModel() { UserId = z.tblUserID, Name = z.tblUser.Name, Email = z.tblUser.Email, Mobile = z.tblUser.Mobile })).ToList().Distinct(), Agent = l.tblUserLoans.Where(m => m.tblRole.Name == "Agent").Select(n => new UsersModel() { UserId = n.tblUserID, Name = n.tblUser.Name, Email = n.tblUser.Email, Mobile = n.tblUser.Mobile }).FirstOrDefault(), }).First(); return(Request.CreateResponse(HttpStatusCode.OK, loanDetails)); } }
public Result(LoanDetailsModel loanDetails) { this.loanDetails = loanDetails; InitializeComponent(); AmortizationDetails = new AmortizationDetailsViewModel(loanDetails); BindingContext = AmortizationDetails; }
private void GetAmortizationOverview(LoanDetailsModel loanDetails, AmortizationResult results) { LoanAmount = loanDetails.LoanAmount.ToString(); LoanTermMonths = loanDetails.LoanTermMonths.ToString(); InterestRate = string.Format("{0} %", loanDetails.InterestRate.ToString()); MonthlyPayment = results.AmortizationOverview.MonthlyPayment.ToString(); TotalPayment = results.AmortizationOverview.TotalPayment.ToString(); TotalInterestPaid = results.AmortizationOverview.TotalInterestPaid.ToString(); }
public LoanManager(LoanDetailsModel loanDetails) { Calculator = new PaymentCalculator { PurchasePrice = loanDetails.LoanAmount, InterestRate = loanDetails.InterestRate, LoanTermMonths = loanDetails.LoanTermMonths, DownPayment = 0 }; }
public AmortizationDetailsViewModel(LoanDetailsModel loanDetails) { AmortizationDetails = new ObservableCollection <AmortizationDetails>(); var results = new LoanManager(loanDetails).GenerateFullAmortization(); GetAmortizationOverview(loanDetails, results); foreach (var result in results.AmortizationDetails) { AmortizationDetails.Add(result); } }
private void CalculateLoan(object sender, EventArgs e) { double.TryParse(loan_amount.Text, out double _loan_amount); int.TryParse(duration.Text, out int _duration); double.TryParse(interest.Text, out double _interest); LoanDetailsModel loanDetails = new LoanDetailsModel() { LoanAmount = _loan_amount, LoanTermMonths = _duration, InterestRate = _interest }; AmortizationDetails = new AmortizationDetailsViewModel(loanDetails); BindingContext = AmortizationDetails; }
public async void AmortizationTableAsync(object sender, EventArgs e) { try { double.TryParse(loan_amount.Text, out double _loan_amount); int.TryParse(duration.Text, out int _duration); double.TryParse(interest.Text, out double _interest); LoanDetailsModel loanDetails = new LoanDetailsModel() { LoanAmount = _loan_amount, LoanTermMonths = _duration, InterestRate = _interest }; await Navigation.PushAsync(new Result(loanDetails)); } catch (Exception) { } }