/// <summary> /// mortgage calculation core part /// </summary> /// <param name="model"></param> /// <returns>MortgageResult</returns> public static MortgageResult CalculateMorgage(MortgageModel model) { MortgageResult result = new MortgageResult(); double Principal = 0, loanTerm = 0, intrstRate = 0, pwrValue, EMI, totalRepayment, totInterest; if (model != null) { loanTerm = (model.LoanTerm) * 12; Principal = model.PrincipalAmount; intrstRate = model.Rate; } intrstRate = (intrstRate / 100) / 12; pwrValue = Math.Pow((1 + intrstRate), loanTerm); EMI = Principal * intrstRate * (pwrValue / (pwrValue - 1)); totalRepayment = Math.Round((EMI * loanTerm), 2); totInterest = Math.Round((totalRepayment - Principal), 2); result.TotalInterest = totInterest; result.TotalRepayment = totalRepayment; return(result); }
public void MortgagePaymentWithDownPaymentAndTaxesTest() { MortgageModel model = new MortgageModel(259000, 4, 30, 2000, 300); MortgagePayment payment = new MortgagePayment(model); double mp = payment.Algorithm(); Assert.Equal(1526.96, mp); }
public void MortgagePaymentWithNoDownPaymentAndNoTaxesTest() { MortgageModel model = new MortgageModel(259000, 4, 30, 0, 0); MortgagePayment payment = new MortgagePayment(model); double mp = payment.Algorithm(); Assert.Equal(1236.51, mp); }
public ActionResult History() { if (Session["user"] != null) { MortgageModel data = new MortgageModel(); ViewBag.result = data.GetHistory(); return(View()); } else { return(Redirect("Index")); } }
public static void CreateMortgage(MortgageModel mortgageModel) { try { // Create new mortgage Entity newMortgage = new Entity("rev_mortgage"); newMortgage.Attributes.Add("rev_customerid", new EntityReference("contact", mortgageModel.ContactId)); // Get State Guid StateId = Guid.Empty; if (mortgageModel.State == null) { mortgageModel.State = "Canada"; } using (var context = new OrganizationServiceContext(service)) { var ms = (from m in context.CreateQuery("rev_salestax") where m["rev_name"].Equals(mortgageModel.State) select m).FirstOrDefault(); if (ms.Id != null) { newMortgage.Attributes.Add("rev_salestaxid", new EntityReference("rev_salestax", ms.Id)); } } newMortgage.Attributes.Add("rev_name", mortgageModel.Name); newMortgage.Attributes.Add("rev_region", new OptionSetValue((int)mortgageModel.Region)); newMortgage.Attributes.Add("rev_approval", new OptionSetValue(283210000)); // Set to New newMortgage.Attributes.Add("rev_mortgageamount", new Money(mortgageModel.MortgageAmount)); newMortgage.Attributes.Add("rev_mortgageterm", new OptionSetValue((int)mortgageModel.MortgageTermInYears)); // State // Documents /* */ // Query for State Name selected, get id and associate //newMortgage.Attributes.Add("rev_salestaxid", new EntityReference("rev_salestax", mortgageModel.ContactId)); /* */ // Create request for mortgage creation CreateRequest request = new CreateRequest(); request.Target = newMortgage; // Execute request CreateResponse resp = (CreateResponse)service.Execute(request); //Guid mortgageGuid = (Guid)resp.Results["id"]; } catch (Exception ex) { logger.Info(ex.Message); logger.Info(ex.StackTrace); } }
public ActionResult Login() { MortgageModel data = new MortgageModel(); if (data.checkpassword(Request["username"], Request["password"])) { Session["user"] = Request["username"]; } else { ViewBag.login = "******"; } return(Redirect("Index")); }
public void InsertResult() { //create object of model MortgageModel data = new MortgageModel(); //pass data to the model using request object data.Date = DateTime.Now; data.Principal = Convert.ToInt32(Request["principal"]); data.Rate = Convert.ToDecimal(Request["rate"]); data.Years = Convert.ToInt32(Request["years"]); data.Monthly = Convert.ToDecimal(Request["monthly"]); //call insertion method data.Insert(data); }
public void Email() { MortgageModel data = new MortgageModel(); data.Date = DateTime.Now; data.Principal = Convert.ToInt32(Request["principal"]); data.Rate = Convert.ToDecimal(Request["rate"]); data.Years = Convert.ToInt32(Request["years"]); data.Monthly = Convert.ToDecimal(Request["monthly"]); Mailer mail = new Mailer(); mail.to = Request["email"]; Response.Write(mail.sendMail(data)); }
public ActionResult NewMortgage([Bind(Include = "Name,Region,State,MortgageAmount,MortgageTermInYears,IdentityDocuments")] MortgageModel mortgageModel) { System.Diagnostics.Debug.WriteLine($"\n\n\nName={mortgageModel.Name},Region={mortgageModel.Region},State={mortgageModel.State},Amount={mortgageModel.MortgageAmount},Term={mortgageModel.MortgageTermInYears}"); if (ModelState.IsValid) { System.Diagnostics.Debug.WriteLine($"Model is valid"); using (var context = new ApplicationDbContext()) { Guid userId = new Guid(User.Identity.GetUserId()); mortgageModel.ContactId = (from u in context.UserMapModels where u.UserWebAppId == userId select u).ToList()[0].ClientDynamicsId; } DataAccessLayer.DynamicsDB.CreateMortgage(mortgageModel); return(RedirectToAction("Index")); } ViewBag.States = StatesSelectList; //ViewBag.Terms = MortgageTermList; return(View(mortgageModel)); }
public void Delete() { System.Diagnostics.Debug.WriteLine("hello"); //create object of model MortgageModel data = new MortgageModel(); //string ids = Request["ids"]; string[] ids = Request.Form.GetValues("ids"); System.Diagnostics.Debug.WriteLine(ids[0]); /* * System.Diagnostics.Debug.WriteLine(ids); * string[] ia = ids.Split(','); * * foreach( string i in ia) * { * System.Diagnostics.Debug.WriteLine(i); * int num = Int32.Parse(i); * * data.Delete(num); * } */ Redirect("History"); }
public ActionResult MortgageCals(MortgageModel model) { return(Json(MortgageBL.CalculateMorgage(model), JsonRequestBehavior.AllowGet)); }