//public LoanScheduleReportResult(LoanDetails loanDetails, bool isExcell, Customer customer) public LoanScheduleReportResult(PaymentRolloverRepository rolloverRepository, Loan loan, bool isExcell, bool wError, Customer customer) { var loansDetailsBuilder = new LoansDetailsBuilder(); _loanDetails = loansDetailsBuilder.Build(loan, rolloverRepository.GetByLoanId(loan.Id)); _isExcell = isExcell; _withErrors = wError; _customer = customer; _loan = loan; }
public void GetLoanRepaymentDetails_Returns_LoanDetails() { LoanDetails loanDetails = new LoanDetails(); _mortageApiProvider.GetLoanRepaymentDetails(loanDetails).Returns(loanDetails); var controller = new MortgageController(_mortageApiProvider); PartialViewResult viewResult = controller.GetLoanRepaymentDetails(loanDetails) as PartialViewResult; Assert.AreEqual(loanDetails, viewResult.Model); }
public IActionResult Application(LoanDetails app) { if (ModelState.IsValid) { loanService.CreateLoanApplication(app, Guid.NewGuid().ToString()); return(RedirectToAction("Employment")); } return(View(app)); }
public void CreateLoanApplication(LoanDetails app, string loanId) { // We always just want one loan on our singleton for demo purposes loans.Clear(); loans.Add(new LoanApplication() { LoanId = loanId, LoanInfo = app }); }
public void GetLoanRepaymentDetails_Returns_LoanDetails() { LoanDetails loanDetails = new LoanDetails(); _mortgageProvider.GetLoanRepaymentDetails(loanDetails).Returns(loanDetails); var controller = new MortgageAPIController(_mortgageProvider); var result = controller.GetLoanRepaymentDetails(loanDetails) as LoanDetails; Assert.AreEqual(loanDetails, result); }
/* * Loan operations with the db * */ public static Boolean IssueLoan(LoanDetails loan, LinkedList <Guarantor> guarantors, long pid) { if (Validation.isLoanValidForAdding(loan) && Validation.isGuarantorValidForAddingAndUpdating(guarantors.First.Value) && Validation.isGuarantorValidForAddingAndUpdating(guarantors.Last.Value)) { if (pid > 0) { try { Connection.updateDB("insert into loan_details (pid, rel_date, rel_amount, no_of_terms, amount_per_term, loan_type_id, profit) values (" + "" + pid + "," + "'" + loan.RelDate.ToString("yyyy/MM/d") + "'," + "" + loan.RelAmount + "," + "" + loan.NoOfTerms + "," + "" + loan.AmountPerTerm + "," + "" + loan.LoanType.Id + "," + "" + loan.Profit + ");"); MySqlDataReader reader = Connection.getData("select MAX(loan_details_id) as id from loan_details where pid=" + pid); long loanId; if (reader.Read()) { loanId = reader.GetInt32(0); reader.Close(); return(AddGuarantors(guarantors, pid, loanId)); } else { return(false); } } catch (Exception ex) { Console.WriteLine(ex.Message); MessageBox.Show("Something went wrong!\n" + ex, "Issue Loan", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } else { return(false); } } else { return(false); } }
public IList <LoanDetails> ViewLoans() { SqlConnection con = new SqlConnection(); DataTable dt = new DataTable(); IList <LoanDetails> LoansDetailList = new List <LoanDetails>(); try { con.ConnectionString = ConfigurationManager.ConnectionStrings["Bankingsysconn"].ConnectionString; con.Open(); string getDetails = Query.selectViewLoans; SqlCommand cmd1 = new SqlCommand(getDetails, con); SqlDataReader dr1 = cmd1.ExecuteReader(); dt.Columns.AddRange(new DataColumn[12] { new DataColumn("Account number", typeof(string)), new DataColumn("Customer name", typeof(string)), new DataColumn("Age", typeof(string)), new DataColumn("Address", typeof(string)), new DataColumn("Email", typeof(string)), new DataColumn("City", typeof(string)), new DataColumn("Gender", typeof(string)), new DataColumn("Account balance", typeof(string)), new DataColumn("Loans", typeof(string)), new DataColumn("Approved Loans", typeof(string)), new DataColumn("Fixed Deposit", typeof(string)), new DataColumn("Approved Fd", typeof(string)) }); while (dr1.Read()) { LoanDetails detail = new LoanDetails(); detail.AccountNo = Convert.ToString(dr1["account_no"]); detail.CustomerName = Convert.ToString(dr1["customer_name"]); detail.Age = Convert.ToString(dr1["age"]); detail.Address = Convert.ToString(dr1["address"]); detail.EmailId = Convert.ToString(dr1["email_id"]); detail.City = Convert.ToString(dr1["city"]); detail.Gender = Convert.ToString(dr1["gender"]); detail.AccountBalance = Convert.ToString(dr1["account_balance"]); detail.Loans = Convert.ToString(dr1["loans"]); detail.ApproveLoans = Convert.ToString(dr1["approved_loans"]); detail.FixedDEposits = Convert.ToString(dr1["fixed_deposit"]); detail.ApproveFd = Convert.ToString(dr1["approved_fd"]); LoansDetailList.Add(detail); } dr1.Close(); } finally { con.Close(); } return(LoansDetailList); }
public void VerifyNegativeScenarious(LoanDetails input) { //Arrange var calculator = new PaymentCalculator(); //Act Action result = () => calculator.Calculate(input); //Assert Assert.Throws <ArgumentException>(result); }
public async Task Update(Guid loanId, [FromBody] LoanDTO loanToUpdate) { LoanModel loanModel = _mapper.Map <LoanModel>(loanToUpdate); await _loansService.Update(loanId, loanModel); CheckLoanValid loanToCheck = new CheckLoanValid(); LoanDetails loanDetails = _mapper.Map <LoanDetails>(loanModel); loanDetails.LoanId = loanId; loanToCheck.LoanDetails = loanDetails; await _messageSession.Send(loanToCheck); }
public static void CalculateLastMonthDetailed(MonthlyBreakdown month, LoanDetails loanDetails) { month.StartingBalance = loanDetails.Balance; month.PeriodInterest = month.StartingBalance * loanDetails.R; month.PeriodPrincipal = month.StartingBalance; month.MonthlyPayment = Math.Round(month.PeriodInterest, 2) + Math.Round(month.PeriodPrincipal, 2); month.EndingBalance = month.StartingBalance - month.PeriodPrincipal; loanDetails.Balance = month.EndingBalance; loanDetails.TotalInterest += month.PeriodInterest; month.TotalInterestToDate = loanDetails.TotalInterest; loanDetails.TotalPrincipal += month.PeriodPrincipal; }
private void FillLoanAgreement() { LoanDetails LoanDet = GetLoanAgreementDetails(); InterConnect.LeshLaonApi.ClientDetails cli = GetClientDetails(); lblCliName.Text = lblClientName1.Text = lblClientName2.Text = lblClientName3.Text = cli.ClientName; lblLocation.Text = cli.BusinessLoc; lblTel.Text = cli.ClientPhoneNumber; lblIntRate.Text = LoanDet.InterestRate; lblTotAmnt.Text = LoanDet.ApprovedAmount; }
public LoanDetails GetLoanDetails(Guid loanId) { var loanInformation = _loanRepository.GetLoan(loanId); var latestRates = _rateRepository.GetRoborRecent(); var currentRate = loanInformation.BankRate + (double)latestRates.GetRate(loanInformation.BankMargin); var loan = new Loan(loanInformation.Ammount, loanInformation.RateDateOfPayment, currentRate, loanInformation.Months); var loanDetails = new LoanDetails(loanInformation); loanDetails.BankMarginRate = currentRate; loanDetails.Transactions = loan.GenerateLoanTransactions().Take(5).ToArray(); return(loanDetails); }
public double CalculateMonthlyPayment(LoanDetails loanDetails) { var totalRates = loanDetails.RatesPaidPerYear * loanDetails.PeriodYears; var nominator = loanDetails.Principal; var denominatorBase = 0.0d; for (int i = 1; i <= totalRates; i++) { denominatorBase += Math.Pow(1.0d + ((loanDetails.InterestRate / 100.0) / loanDetails.RatesPaidPerYear), -i); } return(nominator / denominatorBase); }
protected void Page_Load(object sender, EventArgs e) { LoanDetails newLoan = null; if (Session["LoanDetails"] != null) { newLoan = Session["LoanDetails"] as LoanDetails; } else if (Request.QueryString["loanNo"] != null) { newLoan = XMLReader.LoanXMLReader().LoanList.Where(item => item.loanNo == Request.QueryString["loanNo"]).SingleOrDefault(); } lblClientNo.Text = newLoan.ClientNo; lblClientName.Text = newLoan.ClientName; lblAccNo.Text = newLoan.loanAccount; lblLoanType.Text = newLoan.LoanType; lblLoanID.Text = newLoan.loanNo; lblInterestRate.Text = newLoan.InterestRate; lblLoanAmt.Text = newLoan.loanAmount; Employee emp = Session["EmpDetails"] as Employee; if (emp.Role.ToUpper() == "ADMIN") { btnSubmit.Visible = false; if (newLoan.loanStatus != "Approved") { btnApprove.Visible = true; } else { btnGoBack.Visible = true; } } else { btnApprove.Visible = false; if (Request.QueryString["loanNo"] == null) { btnSubmit.Visible = true; } else { btnGoBack.Visible = true; btnSubmit.Visible = false; } } }
protected void Page_Load(object sender, EventArgs e) { try { if (!IsPostBack) { if (Session[clsConstant.TOKEN] == null) { UrlParameterPasser urlWrapper = new UrlParameterPasser(); urlWrapper["pageaccesserr"] = "1"; urlWrapper.Url = "../Logout.aspx"; urlWrapper.PassParameters(); } if (Utility.CheckAccess("LoanDetailsAddEdit") == false) { pnlInvalid.Visible = true; MainDiv.Visible = true; } if (!Convert.ToBoolean(Session[clsConstant.SESS_VIEWTYPE])) { this.MakeReadOnly(this.Controls); } loanID = Request.QueryString["loanID"]; if (loanID != null && IsPostBack == false) { loanDetails = new LoanDetails(); performanceLoan = new PerformanceLoan(); loanDetails = performanceLoan.GetApprovalClosingDate(Convert.ToInt32(loanID)); LoanBinding(); drpLoanNumber.Items.FindByValue(loanID).Selected = true; AutoFill(); checkForPMU(); lnkProjBriefSheet.Visible = true; } else { lnkProjBriefSheet.Visible = false; } if (IsPostBack != true && loanID == null) { LoanBinding(); } } } catch (Exception ex) { logger.Error(ex); } }
public async Task <bool> UpdateLoanDetails(LoanDetails loanDetails) { try { _context.LoanDetail.Update(loanDetails); await _context.SaveChangesAsync(); return(true); } catch (Exception) { throw; } }
public LoanDetails AddListPut(LoanDetails model) { var LoaninDb = DbContext.LoanDetail.FirstOrDefault(a => a.Id == model.Id); LoaninDb.Amount = model.Amount; LoaninDb.Term = model.Term; LoaninDb.Type = model.Type; LoaninDb.City = model.City; LoaninDb.Startdate = model.Startdate; LoaninDb.Enddate = model.Enddate; DbContext.SaveChanges(); return(model); }
public void VerifyPositiveScenarious(LoanDetails input, PaymentDetails output) { //Arrange var calculator = new PaymentCalculator(); //Act var result = calculator.Calculate(input); //Assert Assert.NotNull(result); Assert.Equal(output.MonthlyPayment, result.MonthlyPayment); Assert.Equal(output.TotalInterest, result.TotalInterest); Assert.Equal(output.TotalPayment, result.TotalPayment); }
public LoanDetails Build(Loan loan, IEnumerable <PaymentRollover> rollovers) { var details = new LoanDetails(); details.Transactions = loan.TransactionsWithPaypoint .Select(t => new LoanTransactionModel() { Id = t.Id, Amount = t.Amount, Description = t.Description, PostDate = t.PostDate, Status = t.Status.ToString(), StatusDescription = t.Status.ToDescription(), Principal = t.Principal, Interest = t.Interest, Fees = t.Fees, Rollover = t.Rollover, Balance = t.Balance, LoanRepayment = t.LoanRepayment }); details.PacnetTransactions = loan.PacnetTransactions.Select(t => new LoanTransactionModel() { Id = t.Id, Amount = t.Amount, Description = t.Description, PostDate = t.PostDate, Status = t.Status.ToString(), StatusDescription = t.Status.ToDescription(), Fees = t.Fees }); details.Schedule = loan.Schedule.ToModel(); details.Charges = loan.Charges.Select(LoanChargesModel.FromCharges); details.Rollovers = rollovers.Where(x => x.Status == RolloverStatus.New).Select(x => new RolloverModel { ExpiryDate = x.ExpiryDate, Payment = x.Payment, Status = x.Status, LoanScheduleId = x.LoanSchedule.Id, Id = x.Id }); //TODO build loan details using new structure Log.InfoFormat("create loan details from new tables for loan {0}", loan.Id); return(details); }
/// <summary> /// Arranging data /// </summary> private void LoanDetailsGet() { loanDetails = new LoanDetails { LoanId = "1111", LoanAmount = "23442", LoanTerm = "4 Months", LoanType = "Personal", LoanHolders = new LoanHolder { BorrowerName = "Adithya", LegalDocuments = "Cash transac", LoanId = "1111", PropertyInformation = "3234Acrs" }, }; }
public async Task <Guid> Create([FromBody] LoanDTO loan)//לבדוק שהמיפוי אכן עובד ולראות אם לקבל יד { LoanModel loanModel = _mapper.Map <LoanModel>(loan); Guid loanId = await _loansService.Create(loanModel); CheckLoanValid loanToCheck = new CheckLoanValid(); LoanDetails loanDetails = _mapper.Map <LoanDetails>(loanModel); loanDetails.LoanId = loanId; loanToCheck.LoanDetails = loanDetails; await _messageSession.Send(loanToCheck) .ConfigureAwait(false); //del api return(loanId); }
public async Task <Guid> Create([FromBody] LoanDTO loan) { LoanModel loanModel = _mapper.Map <LoanModel>(loan); Guid loanId = await _loansService.Create(loanModel); CheckLoanValid loanToCheck = new CheckLoanValid(); LoanDetails loanDetails = _mapper.Map <LoanDetails>(loanModel); loanDetails.LoanId = loanId; loanToCheck.LoanDetails = loanDetails; await _messageSession.Send(loanToCheck); return(loanId); //Ok($"Your loan created successfully. Loan Id:{loanId}"); }
internal LoanComputationWindow(LoanDetails loanDetail, LoanProduct loanProduct, LoanAmortizationHeader loanAmortizationHeader) : this() { _loanDetails = loanDetail; _loanComputation = new LoanComputation(_loanDetails.LoanAmount, loanProduct.ID) { LoanDetails = _loanDetails }; _loanAmortizationHeader = loanAmortizationHeader; InitializeControls(); DataContext = _loanComputation; }
public LoanDetails CalculateLoanDetails(double loanAmount, int duration, double interestRate) { double monthlyInterestRate = interestRate / (12 * 100); double denominator = Math.Pow((1 + monthlyInterestRate), -duration * 12); double emi = (double)(monthlyInterestRate * loanAmount) / (1 - denominator); LoanDetails loanDetails = new LoanDetails(); loanDetails.TotalLoan = Math.Round(emi * duration * 12, 2); loanDetails.TotalInterest = Math.Round(loanDetails.TotalLoan - loanAmount, 2); return(loanDetails); }
public LoanNoticesView(LoanDetails loanDetails) { InitializeComponent(); _loanDetails = loanDetails; LoansNonperformingButton.Click += (sender, args) => GenerateNoticesForLoansNonPerforming(); LoansNearMaturityButton.Click += (sender, args) => GenerateNoticesForLoansNearMaturity(); LoansOverdueButton.Click += (sender, args) => GenerateNoticesForLoansOverdue(); LoansOverdueNonResponsiveButton.Click += (sender, args) => GenerateNoticesForNonResponsiveLoansOverdue(); LoanNoticeForComakersButton.Click += (sender, args) => GenerateNoticesForComakers(); }
public LoanDetails GetApprovalLoanDetails() { LoanDetails ApprovalLoanDetails = new LoanDetails(); ApprovalLoanDetails.ClientID = Request.QueryString["ClientID"];//get ClientID ApprovalLoanDetails.LoanNo = txtLoanNo.Text; ApprovalLoanDetails.Approved = "true"; ApprovalLoanDetails.ApprovedAmount = txtAppLoanAmount.Text.Replace(",", ""); ApprovalLoanDetails.EasyPaidAmountPerMonth = txtAmountToPayPerMonth.Text.Replace(",", ""); ApprovalLoanDetails.MonthsToPayIn = txtMonths.Text; ApprovalLoanDetails.ModifiedBy = user.UserId; ApprovalLoanDetails.ImageProof = bll.GetImageUploadedInBase64String(ImgGuarantor); ApprovalLoanDetails.Observations = txtComment.Text; ApprovalLoanDetails.ProcessingFee = txtProcFee.Text.Replace(",", ""); return(ApprovalLoanDetails); }
public LoanDetails GetLoanRepaymentDetails(LoanDetails loandetails) { LoanDetails interestResponse = null; string loandetailsjson = JsonConvert.SerializeObject(loandetails); var httpContent = new StringContent(loandetailsjson); httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); HttpResponseMessage response = _client.PostAsync(AppConstants.GET_REPAYMENTDETAILS_URL, httpContent).Result; if (response.IsSuccessStatusCode) { var result = response.Content.ReadAsStringAsync().Result; interestResponse = JsonConvert.DeserializeObject <LoanDetails>(result); } return(interestResponse); }
public Result SaveLoanDetails(LoanDetails req) { Result result = new Result(); try { result = LeshLoanSystem.SaveLoanDetails(req); } catch (Exception ex) { LeshLoanSystem.LogError(req.LoanNo + "-" + req.LoanDesc, ex.StackTrace, req.CompanyCode, ex.Message, "EXCEPTION"); result.StatusCode = Globals.HIDE_FAILURE_STATUS_CODE; result.StatusDesc = "EXCEPTION: " + ex.Message; } return(result); }
protected LoanDetails GetCollateralDetails() { LoanDetails Loan = new LoanDetails(); Loan.LoanNo = txtLoanNo.Text; Loan.Name = txtColName.Text.ToString(); Loan.Type = txtLoanAmount.Text.Trim(); Loan.Model = txtLoanPurp.Text.Trim().ToString(); Loan.Make = txtInterest.Text.Trim().ToString(); Loan.SerialNumber = txtColSerialNo.Text.ToString(); Loan.Observations = txtColObsv.Text; Loan.ImageProof = txtColImgProof.FileBytes.ToString(); Loan.EstimatedPrice = txtorg.Text; Loan.ModifiedBy = user.UserId; return(Loan); }
// Details private void Details(object sender, EventArgs e) { if (!CheckForSelectedItem()) { return; } Hide(); switch (_option) { case 1: var authorDetails = new AuthorDetails(entitiesListBox.SelectedItem as Author); authorDetails.Closed += (s, args) => Show(); authorDetails.ShowDialog(); break; case 2: var publisherDetails = new PublisherDetails(entitiesListBox.SelectedItem as Publisher); publisherDetails.Closed += (s, args) => Show(); publisherDetails.ShowDialog(); break; case 3: var studentDetails = new StudentDetails(entitiesListBox.SelectedItem as Student); studentDetails.Closed += (s, args) => Show(); studentDetails.ShowDialog(); break; case 4: var bookDetails = new BookDetails(entitiesListBox.SelectedItem as Book); bookDetails.Closed += (s, args) => Show(); bookDetails.ShowDialog(); break; case 5: var loanDetails = new LoanDetails(entitiesListBox.SelectedItem as Loan); loanDetails.Closed += (s, args) => Show(); loanDetails.ShowDialog(); break; default: CommonErrorMessage(); break; } RefreshRepositories(); }