public BorrowerViewModel GetBorrowerInfo(long?borrowerID) { BorrowerViewModel borrowermodel = new BorrowerViewModel(); using (ShopDevEntities db = new ShopDevEntities()) { try { var sellerInfo = db.Borrowers.Where(m => m.BorrowID == borrowerID).FirstOrDefault(); var AllInstallments = db.BorrowerInstallments.Where(m => m.BorrowerID == borrowerID).ToList(); BorrowerModel bbModel = new BorrowerModel(); sellerInfo.CopyProperties(bbModel); List <BorrowerInstallmentModel> lstInstallments = new List <BorrowerInstallmentModel>(); foreach (var cusprod in AllInstallments) { BorrowerInstallmentModel objcsproduct = new BorrowerInstallmentModel(); cusprod.CopyProperties(objcsproduct); lstInstallments.Add(objcsproduct); } borrowermodel.Borrower = bbModel; borrowermodel.Installments = new BorrowerInstallmentModel(); borrowermodel.Lstinstallments = new List <BorrowerInstallmentModel>(); borrowermodel.Lstinstallments.AddRange(lstInstallments); } catch (Exception) { } } return(borrowermodel); }
private async void frmBorrowers_Load(object sender, EventArgs e) { if (operation == "view") { BorrowerModel b = await borrower.GetSingle(id); txtFirstName.Text = b.FirstName; txtLastname.Text = b.LastName; txtMiddlename.Text = b.MiddleName; txtAddress.Text = b.Address; txtContacts.Text = b.ContactNumber; cboCivilStatus.Text = b.CivilStatus; optFemale.Checked = (b.Gender == "FEMALE"); optMale.Checked = (b.Gender == "MALE"); txtBday.Text = $"{b.Birthday.Month:00}/{b.Birthday.Day:00}/{b.Birthday.Year}"; txtMonthlySalary.Text = b.MonthlySalary.ToString(); txtOccupation.Text = b.Occupation; txtAge.Text = borrower.ComputeAge(b.Birthday).ToString(); picImage.Image = Image.FromFile(b.Image); _image = b.Image; pnlBorrower.Enabled = false; btnSave.Enabled = false; if (frmDashboard.user.UserType == "admin") { btnDelete.Visible = true; } btnUpdate.Visible = true; } }
public List <BorrowerModel> AllBorrowers(BorrowerModel objborrower) { List <BorrowerModel> Allcust = new List <BorrowerModel>(); using (ShopDevEntities db = new ShopDevEntities()) { try { var res = from buyer in db.Borrowers where (buyer.Name.Contains(objborrower.Name) || buyer.CustCode == objborrower.CustCode) || (string.IsNullOrEmpty(objborrower.Name) && objborrower.CustCode == null) select buyer; foreach (var seller in res) { BorrowerModel sellerModel = new BorrowerModel(); seller.CopyProperties(sellerModel); Allcust.Add(sellerModel); } } catch (Exception ex) { } return(Allcust); } }
private void ValidateEmail(BorrowerModel borrowerModel) { if (borrowerModel.Borrower != null && borrowerModel.Borrower.BorrowerPersonalInfo != null && !borrowerModel.Borrower.IsOnline) { var borrowerParty = UserAccountServiceFacade.GetPartyByUserAccountId(borrowerModel.Borrower.UserAccountId); if (borrowerParty.EmailAddress != borrowerModel.Borrower.BorrowerPersonalInfo.BorrowerEmailAddress && !UserAccountServiceFacade.IsUsernameAvailability( borrowerModel.Borrower.BorrowerPersonalInfo.BorrowerEmailAddress)) { ModelState.AddModelError("Borrower.BorrowerPersonalInfo.BorrowerEmailAddress", @"Email address for Borrower is already in use ."); } } if (borrowerModel.CoBorrower != null && borrowerModel.CoBorrower.BorrowerPersonalInfo != null && !borrowerModel.CoBorrower.IsOnline) { var coborrowerParty = UserAccountServiceFacade.GetPartyByUserAccountId(borrowerModel.CoBorrower.UserAccountId); if (coborrowerParty.EmailAddress != borrowerModel.CoBorrower.BorrowerPersonalInfo.BorrowerEmailAddress && !UserAccountServiceFacade.IsUsernameAvailability( borrowerModel.CoBorrower.BorrowerPersonalInfo.BorrowerEmailAddress)) { ModelState.AddModelError("CoBorrower.BorrowerPersonalInfo.BorrowerEmailAddress", @"Email address for Co-Borrower is already in use ."); } } }
/// <summary> /// /// </summary> /// <param name="borrower"></param> private static void SetupLookups(BorrowerModel borrower) { borrower.PhoneTypes = LookupServiceFacade.Lookup(LookupKeywords.PhoneType, -1).ToList(); borrower.MaritalStatuses = LookupServiceFacade.Lookup(LookupKeywords.MaritalStatus, -1).ToList(); borrower.States = LookupServiceFacade.Lookup(LookupKeywords.States, -1).ToList(); borrower.MannerTitleHeld = LookupServiceFacade.Lookup(LookupKeywords.MannerTitleHeld, -1).ToList(); }
private async void LoadLoan() { LoanModel l = await loans.GetSingle(loanId); BorrowerModel b = await borrowers.GetSingle(l.BorrowerId); txtId.Text = b.BorrowerID; txtName.Text = b.FirstName + " " + b.MiddleName[0] + ". " + b.LastName; txtLoanId.Text = l.LoanId; txtDuration.Text = l.Duration.ToString(); txtEffectiveDate.Text = ConvertDate(l.EffectiveDate); txtInterest.Text = l.Interest.ToString(); txtMaturityDate.Text = ConvertDate(l.MaturityDate); txtPerRemittance.Text = l.PerRemittance.ToString(); txtPrincipal.Text = l.PrincipalLoan.ToString(); txtMaturityValue.Text = l.MaturityValue.ToString(); txtTotalBalance.Text = l.TotalBalance.ToString(); cboPaymentTerm.SelectedValue = l.InterestId; txtCollector.Text = users.GetSingle(" ", l.CollectorId).Name; gName.Text = l.Guarantor.Name; gAddress.Text = l.Guarantor.Address; gContacts.Text = l.Guarantor.ContactNumber; gRelation.Text = l.Guarantor.Relationship; cValue.Text = l.Collateral.Value.ToString(); cItem.Text = l.Collateral.Item; cDescription.Text = l.Collateral.Description; btnPrint.Visible = true; int _id = int.Parse(cboPaymentTerm.SelectedValue.ToString()); double interest = interests.getInterest(_id); txtInterestRate.Text = $"{interest: ##.##}%"; Generate(); }
private static void SetupCoBorrowerInforamtion(BorrowerModel borrowerModel) { if (borrowerModel.CoBorrower != null && borrowerModel.CoBorrower.BorrowerPersonalInfo != null) { borrowerModel.CoBorrower.BorrowerPersonalInfo.FullName = String.Format("{0} {1}", borrowerModel.CoBorrower. BorrowerPersonalInfo.FirstName, borrowerModel.CoBorrower. BorrowerPersonalInfo.LastName); switch (borrowerModel.CoBorrowerModelInfo.PresentAddress.OwnershipType) { case OwnershipType.Own: borrowerModel.CoBorrowerModelInfo.PresentAddress.IsOwn = true; break; case OwnershipType.Rent: borrowerModel.CoBorrowerModelInfo.PresentAddress.IsRent = true; break; case OwnershipType.RentFree: borrowerModel.CoBorrowerModelInfo.PresentAddress.IsRent = false; break; } if (borrowerModel.CoBorrowerModelInfo.MailingAddress.IsSameAsPropertyAddress ?? false) { //if borrower mailing address same as present than make a deep copy of present address and change address type to mailing var mailingAddressId = borrowerModel.CoBorrowerModelInfo.MailingAddress.AddressId; borrowerModel.CoBorrowerModelInfo.MailingAddress = (Address)borrowerModel.CoBorrowerModelInfo.PresentAddress.Clone(); borrowerModel.CoBorrowerModelInfo.MailingAddress.AddressType = AddressType.Mailing; borrowerModel.CoBorrowerModelInfo.MailingAddress.IsSameAsPropertyAddress = true; borrowerModel.CoBorrowerModelInfo.MailingAddress.AddressId = mailingAddressId; } if (borrowerModel.CoBorrower.IsOnline) { borrowerModel.CoBorrower.BorrowerPersonalInfo.BorrowerEmailAddress = null; } if (borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfYears > 1) { borrowerModel.CoBorrowerModelInfo.FormerAddress = new Address() { AddressId = borrowerModel.CoBorrowerModelInfo.FormerAddress.AddressId } } ; else { borrowerModel.CoBorrowerModelInfo.FormerAddress.IsSameAsPropertyAddress = false; } borrowerModel.CoBorrowerModelInfo.PresentAddress.IsSameAsPropertyAddress = false; } }
private async Task choose() { int id = int.Parse(lstBorrowers.SelectedValue.ToString()); BorrowerModel output = await b.GetSingle(id); string borrowerId = output.BorrowerID; string name = output.FullName; borrower(borrowerId, name); this.Close(); }
public async Task <IActionResult> Create(BorrowerModel borrower) { if (ModelState.IsValid) { try { _context.Add(borrower); await _context.SaveChangesAsync(); } catch (Exception) { return(BadRequest(new { error = "There was an error creating this borrower" })); } } return(Ok(borrower)); }
public async Task <IActionResult> Edit(string id, BorrowerModel borrower) { if (id != borrower.ID.ToString()) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(borrower); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { return(NotFound()); } } return(Ok(borrower)); }
public ActionResult SaveBorrowerInformation(BorrowerModel borrowerModel) { var userAccountId = GetUserID(); if (userAccountId == -1) { ModelState.AddModelError("UserAccountId", @"User is not valid"); } ValidateEmail(borrowerModel); try { RemoveErrors(borrowerModel); if (ModelState.IsValid) { SetupLookups(borrowerModel); SetupBrrowerInformation(borrowerModel); SetupCoBorrowerInforamtion(borrowerModel); var status = BorrowerServiceFacade.UpdateBorrowerModel(borrowerModel, userAccountId); return(Json(new { success = status })); } } catch (Exception ex) { TraceHelper.Error(TraceCategory.LoanCenterController, ex.Message, ex, borrowerModel.LoanId, userAccountId); ModelState.AddModelError("UserAccountId", ex.Message); } return(Json(new { success = false, errors = ModelState.Keys.SelectMany(k => ModelState[k].Errors) .Select(m => m.ErrorMessage).ToArray() })); }
private async Task <bool> SaveLedger(int loanId) { Collectables c = new Collectables(); List <CollectablesModel> collectables = new List <CollectablesModel>(); foreach (ListViewItem items in lstLedger.Items) { LoanModel _loan = new LoanModel() { Id = loanId, PerRemittance = loan.PerRemittance, EffectiveDate = loan.EffectiveDate }; BorrowerModel _borrower = new BorrowerModel() { Id = loan.BorrowerId }; string[] tokens = items.Text.Split('/'); DateTime dueDate = new DateTime(int.Parse(tokens[2]), int.Parse(tokens[0]), int.Parse(tokens[1])); collectables.Add(new CollectablesModel() { Loan = _loan, Borrower = _borrower, DueDate = dueDate }); } if (operation != "edit") { if (await c.Add(collectables)) { return(true); } } MessageBox.Show(c.msg); return(false); }
private async void btnSave_Click(object sender, EventArgs e) { if (this.ValidateInputs(txtFirstName.Text, txtLastname.Text, txtMiddlename.Text, txtAddress.Text, txtContacts.Text, txtBday.Text, txtOccupation.Text, txtMonthlySalary.Text)) { this.Message("Warning! Please Fill Up All Fields.", "Input Validation", true); return; } if (ValidateAlpha(txtFirstName.Text) || ValidateAlpha(txtLastname.Text) || ValidateAlpha(txtOccupation.Text) || ValidateNumeric(txtContacts.Text) || ValidateNumeric(txtMonthlySalary.Text)) { this.Message("Warning! Invalid Characters are Detected. Please use letters and spaces only.", "Input Validation", true); return; } if (bdayValidation) { this.Message("Warning! Please input correct birthday.", "Input Validation", true); return; } string[] dob = txtBday.Text.Split('/'); DateTime birthday = new DateTime(int.Parse(dob[2]), int.Parse(dob[0]), int.Parse(dob[1])); BorrowerModel b = new BorrowerModel() { Id = id, FirstName = txtFirstName.Text.ToUpper(), LastName = txtLastname.Text.ToUpper(), MiddleName = txtMiddlename.Text.ToUpper(), Address = txtAddress.Text.ToUpper(), ContactNumber = txtContacts.Text, Birthday = birthday, Occupation = txtOccupation.Text.ToUpper(), MonthlySalary = Convert.ToDecimal(txtMonthlySalary.Text), Gender = optMale.Checked == true ? "MALE" : "FEMALE", CivilStatus = cboCivilStatus.SelectedItem.ToString(), }; if (operation == "update") { b.Image = _image; if (await borrower.Update(b)) { if (b.Image.Contains("default") && b.Image != _image) { img.CopyImage(_image, b.Image); } this.Message(borrower.msg, "Borrower", false); this.Hide(); using (frmViewBorrowers frm = new frmViewBorrowers()) { frm.ShowDialog(); } } else { this.Message(borrower.msg, "Borrower", true); } } else { b.Image = _image == "default.png" ? "images/" + _image : "images/" + img.RenameImage(_image); if (await borrower.Add(b)) { if (_image != "default.png") { MessageBox.Show(_image); img.CopyImage(_image, b.Image); } this.Message(borrower.msg, "Borrower", false); this.Hide(); using (frmViewBorrowers frm = new frmViewBorrowers()) { frm.ShowDialog(); } } else { this.Message(borrower.msg, "Borrower", true); } } }
public void AddBorrower(BorrowerModel borrower) { using (ShopDevEntities db = new ShopDevEntities()) { try { if (borrower.CustCode == null || borrower.CustCode == 0) { Customer customer = new Customer { CustmerName = borrower.Name, Address = borrower.Address }; db.Customers.Add(customer); db.SaveChanges(); borrower.CustCode = customer.CustCode; } var todayYear = DateTime.Now.Year; var CurrentMonth = DateTime.Now.Month; // calculation for interst if (borrower.InterestRate != null && borrower.InterestRate != 0) { var buyMonth = borrower.Date.Value.Month; var buyYear = borrower.Date.Value.Year; var monthDiff = ((todayYear - buyYear) * 12) + CurrentMonth - buyMonth; decimal?interst = 0; if (borrower.InterstableAmount > 0) { interst = borrower.InterstableAmount * borrower.InterestRate * monthDiff / 100; } else { borrower.InterstableAmount = borrower.Amont; interst = borrower.Amont * borrower.InterestRate * monthDiff / 100; } borrower.Interest = interst; borrower.Outstanding = borrower.Amont + interst; } Borrower borrowerdb = null; if (borrower.BorrowID == 0) { borrowerdb = new Borrower(); borrower.CopyProperties(borrowerdb); db.Borrowers.Add(borrowerdb); } else { borrowerdb = db.Borrowers.Where(m => m.BorrowID == borrower.BorrowID).FirstOrDefault(); borrower.CopyProperties(borrowerdb); } db.SaveChanges(); List <BorrowerInstallment> lstinstallments = db.BorrowerInstallments.Where(m => m.BorrowerID == borrowerdb.BorrowID).ToList(); lstinstallments.ForEach(m => m.BorrowerID = borrowerdb.BorrowID); db.SaveChanges(); } catch { } } }
/// <summary> /// /// </summary> /// <param name="borrowerModel"></param> private void RemoveErrors(BorrowerModel borrowerModel) { if (borrowerModel.Borrower.PropertyTitle != PropertyTitle.Individual && ModelState.ContainsKey("Borrower.PropertyTitle")) { ModelState["Borrower.PropertyTitle"].Errors.Clear(); ModelState["TitleAndManner.MannerTitleHeld"].Errors.Clear(); ModelState["TitleAndManner.TitleInNameValue"].Errors.Clear(); } if (ModelState.ContainsKey("BorrowerModelInfo.MailingAddress.NumberOfYears")) { ModelState["BorrowerModelInfo.MailingAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.BorrowerAndCoBorrowerAddressAreSame && ModelState.ContainsKey("CoBorrowerModelInfo.PresentAddress.NumberOfYears")) { ModelState["CoBorrowerModelInfo.PresentAddress.NumberOfYears"].Errors.Clear(); } if (ModelState.ContainsKey("CoBorrowerModelInfo.MailingAddress.NumberOfYears")) { ModelState["CoBorrowerModelInfo.MailingAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.BorrowerModelInfo.PresentAddress.NumberOfMonths != 0 && borrowerModel.BorrowerModelInfo.PresentAddress.NumberOfYears == null && ModelState.ContainsKey("BorrowerModelInfo.PresentAddress.NumberOfYears")) { ModelState["BorrowerModelInfo.PresentAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.CoBorrowerModelInfo != null && borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfMonths != null && borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfMonths != 0 && borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfYears == null && ModelState.ContainsKey("CoBorrowerModelInfo.PresentAddress.NumberOfYears")) { ModelState["CoBorrowerModelInfo.PresentAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.BorrowerModelInfo.FormerAddress != null && borrowerModel.BorrowerModelInfo.FormerAddress.NumberOfMonths != null && borrowerModel.BorrowerModelInfo.FormerAddress.NumberOfMonths != 0 && borrowerModel.BorrowerModelInfo.FormerAddress.NumberOfYears == null && ModelState.ContainsKey("BorrowerModelInfo.FormerAddress.NumberOfYears")) { ModelState["BorrowerModelInfo.FormerAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.CoBorrowerModelInfo != null && borrowerModel.CoBorrowerModelInfo.FormerAddress != null && borrowerModel.CoBorrowerModelInfo.FormerAddress.NumberOfMonths != 0 && borrowerModel.CoBorrowerModelInfo.FormerAddress.NumberOfYears == null && ModelState.ContainsKey("CoBorrowerModelInfo.FormerAddress.NumberOfYears")) { ModelState["CoBorrowerModelInfo.FormerAddress.NumberOfYears"].Errors.Clear(); } if (borrowerModel.BorrowerAndCoBorrowerAddressAreSame || borrowerModel.BorrowerModelInfo.PresentAddress.NumberOfYears > 1 || (borrowerModel.CoBorrowerModelInfo != null && borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfYears > 1)) { for (var i = 0; i < ModelState.Keys.Count; i++) { if ((((borrowerModel.BorrowerAndCoBorrowerAddressAreSame || (borrowerModel.CoBorrowerModelInfo != null && borrowerModel.CoBorrowerModelInfo.PresentAddress.NumberOfYears > 1)) && ModelState.Keys.ElementAt(i).Contains("CoBorrowerModelInfo.FormerAddress")) || (borrowerModel.BorrowerModelInfo.PresentAddress.NumberOfYears > 1 && ModelState.Keys.ElementAt(i).Contains("BorrowerModelInfo.FormerAddress") && !ModelState.Keys.ElementAt(i).Contains("CoBorrowerModelInfo.FormerAddress"))) && ModelState.Values.ElementAt(i).Errors.Count > 0) { ModelState.Values.ElementAt(i).Errors.Clear(); } } } }