private void refr() { //try //{ if (status == "Releasing") { using (var ctx = new finalContext()) { ctx.Database.ExecuteSqlCommand("delete from dbo.GenSOAs"); ctx.SaveChanges(); var lon = ctx.Loans.Find(lId); Double Amt = Convert.ToDouble(txtAmt.Text); //lblPrincipal.Content = Amt.ToString("N2"); txtAmt.Text = Amt.ToString("N2"); txtAmt.SelectionStart = txtAmt.Text.Length - 3; Double TotalInt = lon.Service.Interest * Convert.ToInt32(txtTerm.Text); TotalInt = TotalInt / 100; double ded = lon.Service.AgentCommission; var dec = from de in ctx.Deductions where de.ServiceID == lon.ServiceID select de; foreach (var item in dec) { ded = ded + item.Percentage; } Double Deduction = ded / 100; Double NetProceed = (Convert.ToDouble(txtAmt.Text)) - (Convert.ToDouble(txtAmt.Text) * Deduction); Double WithInt = (Convert.ToDouble(txtAmt.Text)) + (Convert.ToDouble(txtAmt.Text) * TotalInt); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = WithInt.ToString("N2"); Double Payment = 0; DateTime dt = DateTime.Today.Date; double Interval = 0; DateInterval dInt = DateInterval.Month; Double Remaining = WithInt; ComboBoxItem typeItem = (ComboBoxItem)cmbMode.SelectedItem; string value = typeItem.Content.ToString(); if (value == "Monthly") { Interval = 1; dInt = DateInterval.Month; Payment = WithInt / Convert.ToInt32(txtTerm.Text); lbl4.Content = "Monthly Payment"; } else if (value == "Semi-Monthly") { Interval = 15; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 2); lbl4.Content = "Semi-Monthly Payment"; } else if (value == "Weekly") { Interval = 7; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 4); } else if (value == "Daily") { Interval = 1; dInt = DateInterval.Day; Payment = WithInt / ((Convert.ToInt32(txtTerm.Text) * 4) * 7); } else if (value == "One-Time Payment") { NetProceed = NetProceed - ((Convert.ToDouble(txtAmt.Text) * TotalInt)); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = txtAmt.Text; Remaining = Convert.ToDouble(lblPrincipal.Content); Payment = Remaining; Interval = Convert.ToInt32(txtTerm.Text); dInt = DateInterval.Month; lbl4.Content = "Total Payment"; } dt = DateAndTime.DateAdd(dInt, Interval, dt); int num = 1; double p2 = Payment; while (Remaining > -1) { Remaining = Remaining - Payment; GenSOA soa = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = Remaining.ToString("N2") }; ctx.GenSOA.Add(soa); num++; if (Remaining <= Payment) { Payment = Remaining; if (Payment < 1) { goto a; } GenSOA soa1 = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = "0.00" }; ctx.GenSOA.Add(soa1); num++; goto a; } dt = DateAndTime.DateAdd(dInt, Interval, dt); bool isHoliday = true; while (isHoliday == true || dt.Date.DayOfWeek.ToString() == "Saturday" || dt.Date.DayOfWeek.ToString() == "Sunday") { if (dt.Date.DayOfWeek.ToString() == "Saturday") { dt = DateAndTime.DateAdd(DateInterval.Day, 2, dt); } else if (dt.Date.DayOfWeek.ToString() == "Sunday") { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); } var myC = ctx.Holidays.Where(x => x.Date.Month == dt.Date.Month && x.Date.Day == dt.Date.Day && x.isYearly == true).Count(); if (myC > 0) { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); isHoliday = true; } else { myC = ctx.Holidays.Where(x => x.Date.Month == dt.Date.Month && x.Date.Day == dt.Date.Day && x.Date.Year == dt.Date.Year && x.isYearly == !true).Count(); if (myC > 0) { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); isHoliday = true; } else { isHoliday = false; } } } } a: lblMonthly.Content = Payment.ToString("N2"); ctx.SaveChanges(); var gen = from ge in ctx.GenSOA select new { PaymentNumber = ge.PaymentNumber, TotalPayment = ge.Amount, PaymentDate = ge.PaymentDate, RemainingBalance = ge.RemainingBalance }; dgSOA.ItemsSource = gen.ToList(); var c1 = ctx.GenSOA.Count(); p2 = Convert.ToDouble(p2.ToString("N2")); //System.Windows.MessageBox.Show(p2.ToString()); lblInt.Content = (p2 * c1).ToString("N2"); return; } } else if (status == "UReleasing") { using (var ctx = new finalContext()) { var lon = ctx.Loans.Find(lId); var pys = from p in ctx.MPaymentInfoes where p.LoanID == lId select new { No = p.PaymentNumber, Amount = p.Amount, PrevBalance = p.PreviousBalance, PrevBalanceInterest = p.BalanceInterest, TotalBalance = p.TotalBalance, TotalAmount = p.TotalAmount, DueDate = p.DueDate, RemaingBalance = p.RemainingLoanBalance, Status = p.PaymentStatus }; dgSOA.ItemsSource = pys.ToList(); txtAmt.Text = lon.ReleasedLoan.TotalLoan.ToString("N2"); lblMonthly.Content = lon.ReleasedLoan.MonthlyPayment.ToString("N2"); lblPrincipal.Content = txtAmt.Text; lblProceed.Content = lon.ReleasedLoan.NetProceed.ToString("N2"); txtTerm.Text = lon.Term.ToString(); cmbMode.Items.Add(lon.Mode); cmbMode.SelectedItem = lon.Mode; var agt = ctx.Employees.Find(lon.CollectortID); ciId = lon.CollectortID; String str = "(" + ciId + ")" + agt.FirstName + " " + agt.MI + " " + agt.LastName; txtCI.Text = str; } } if (Convert.ToInt16(txtTerm.Text) < 1) { System.Windows.MessageBox.Show("Incorrect Format for term", "Information", MessageBoxButton.OK, MessageBoxImage.Information); return; } /*} catch (Exception ex) { System.Windows.MessageBox.Show("Incorrect Format on some Fields / Incomplete Input(s)", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; }*/ }
private void refr() { try { if (Convert.ToInt16(txtTerm.Text) < 1) { System.Windows.MessageBox.Show("Incorrect Format for term", "Information", MessageBoxButton.OK, MessageBoxImage.Information); return; } if (status == "Releasing" || status == "Renewal") { using (var ctx = new finalContext()) { myNum = 0; ctx.Database.ExecuteSqlCommand("delete from dbo.GenSOAs"); ctx.SaveChanges(); var lon = ctx.Loans.Find(lId); Double Amt = Convert.ToDouble(txtAmt.Text); double ltp = 0; if (status == "Renewal") { var rn = ctx.LoanRenewals.Where(x => x.newLoanID == lId).First(); var pys = from p in ctx.FPaymentInfo where p.PaymentStatus != "Cleared" && p.LoanID == rn.LoanID select p; foreach (var itm in pys) { ltp = ltp + itm.Amount; } lblLTP.Content = "Less to Proceed: "; lblLTP2.Content = ltp.ToString("N2"); lblLTP.Visibility = Visibility.Visible; lblLTP2.Visibility = Visibility.Visible; Amt = Amt - ltp; } //lblPrincipal.Content = Amt.ToString("N2"); if(status == "Releasing") txtAmt.Text = Amt.ToString("N2"); txtAmt.SelectionStart = txtAmt.Text.Length - 3; Double TotalInt = lon.Service.Interest * Convert.ToInt32(txtTerm.Text); TotalInt = TotalInt / 100; double ded = lon.Service.AgentCommission; var dec = from de in ctx.Deductions where de.ServiceID == lon.ServiceID select de; foreach (var item in dec) { ded = ded + item.Percentage; } Double Deduction = ded / 100; Double NetProceed = (Convert.ToDouble(txtAmt.Text)) - (Convert.ToDouble(txtAmt.Text) * Deduction); if (status == "Renewal") NetProceed = NetProceed - ltp; Double WithInt = (Convert.ToDouble(txtAmt.Text)) + (Convert.ToDouble(txtAmt.Text) * TotalInt); if (status == "Renewal") WithInt = Amt + (Amt * TotalInt); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = WithInt.ToString("N2"); Double Payment = 0; DateTime dt = DateTime.Today.Date; double Interval = 0; DateInterval dInt = DateInterval.Month; Double Remaining = WithInt; ComboBoxItem typeItem = (ComboBoxItem)cmbMode.SelectedItem; string value = typeItem.Content.ToString(); if (value == "Monthly") { Interval = 1; dInt = DateInterval.Month; Payment = WithInt / Convert.ToInt32(txtTerm.Text); lbl4.Content = "Monthly Payment"; } else if (value == "Semi-Monthly") { Interval = 15; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 2); lbl4.Content = "Semi-Monthly Payment"; } else if (value == "Weekly") { Interval = 7; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 4); } else if (value == "Daily") { Interval = 1; dInt = DateInterval.Day; Payment = WithInt / ((Convert.ToInt32(txtTerm.Text) * 4) * 7); } else if (value == "One-Time Payment") { NetProceed = NetProceed - ((Convert.ToDouble(txtAmt.Text) * TotalInt)); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = txtAmt.Text; Remaining = Convert.ToDouble(lblPrincipal.Content); Payment = Remaining; Interval = Convert.ToInt32(txtTerm.Text); dInt = DateInterval.Month; lbl4.Content = "Total Payment"; } dt = DateAndTime.DateAdd(dInt, Interval, dt); int num = 1; while (Remaining > -1) { Remaining = Remaining - Payment; GenSOA soa = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = Remaining.ToString("N2") }; ctx.GenSOA.Add(soa); num++; dt = DateAndTime.DateAdd(dInt, Interval, dt); myNum++; if (Remaining <= Payment) { Payment = Remaining; if (Payment < 1) { goto a; } GenSOA soa1 = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = "0.00" }; ctx.GenSOA.Add(soa1); num++; myNum++; goto a; } } a: lblMonthly.Content = Payment.ToString("N2"); ctx.SaveChanges(); var gen = from ge in ctx.GenSOA select new { PaymentNumber = ge.PaymentNumber, TotalPayment = ge.Amount, PaymentDate = ge.PaymentDate, RemainingBalance = ge.RemainingBalance }; dgSOA.ItemsSource = gen.ToList(); refresh(); return; } } else if (status == "UReleasing") { using (var ctx = new finalContext()) { var lon = ctx.Loans.Find(lId); var lons = from ge in ctx.FPaymentInfo where ge.LoanID == lId select new { PaymentNumber = ge.PaymentNumber, TotalPayment = ge.Amount, PaymentDate = ge.PaymentDate, RemainingBalance = ge.RemainingBalance }; dgSOA.ItemsSource = lons.ToList(); txtAmt.Text = lon.ReleasedLoan.TotalLoan.ToString("N2"); lblMonthly.Content = lon.ReleasedLoan.MonthlyPayment.ToString("N2"); lblPrincipal.Content = txtAmt.Text; lblProceed.Content = lon.ReleasedLoan.NetProceed.ToString("N2"); myNum = ctx.FPaymentInfo.Where(x => x.LoanID == lId).Count(); txtTerm.Text = lon.Term.ToString(); cmbMode.SelectedItem = lon.Mode; } } } catch (Exception ex) { System.Windows.MessageBox.Show("Incorrect Format on some Fields / Incomplete Input(s)", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } }
private void refr() { try { using (var ctx = new finalContext()) { ctx.Database.ExecuteSqlCommand("delete from dbo.GenSOAs"); ctx.SaveChanges(); var lon = ctx.Loans.Find(lId); Double Amt = Convert.ToDouble(txtAmt.Text); lblPrincipal.Content = Amt.ToString("N2"); txtAmt.Text = Amt.ToString("N2"); txtAmt.SelectionStart = txtAmt.Text.Length - 3; Double TotalInt = lon.Service.Interest * lon.Term; TotalInt = TotalInt / 100; double ded = lon.Service.AgentCommission; var dec = from de in ctx.Deductions where de.ServiceID == lon.ServiceID select de; foreach (var item in dec) { ded = ded + item.Percentage; } Double Deduction = ded / 100; Double NetProceed = (Convert.ToDouble(txtAmt.Text)) - (Convert.ToDouble(txtAmt.Text) * Deduction); Double WithInt = (Convert.ToDouble(txtAmt.Text)) + (Convert.ToDouble(txtAmt.Text) * TotalInt); lblProceed.Content = "Php " + NetProceed.ToString("N2"); lblInt.Content = "Php" + WithInt.ToString("N2"); Double Payment = 0; DateTime dt = dtDate.SelectedDate.Value.Date; double Interval = 0; DateInterval dInt = DateInterval.Month; Double Remaining = WithInt; if (lon.Mode == "Monthly") { Interval = 1; dInt = DateInterval.Month; Payment = WithInt / lon.Term; } else if (lon.Mode == "Semi-Monthly") { Interval = 15; dInt = DateInterval.Day; Payment = WithInt / (lon.Term * 2); } else if (lon.Mode == "Weekly") { Interval = 7; dInt = DateInterval.Day; Payment = WithInt / (lon.Term * 4); } else if (lon.Mode == "Daily") { Interval = 1; dInt = DateInterval.Day; Payment = WithInt / ((lon.Term * 4) * 7); } else if (lon.Mode == "One-Time Payment") { NetProceed = NetProceed - ((Convert.ToDouble(txtAmt.Text) * TotalInt)); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = txtAmt.Text; Remaining = Convert.ToDouble(lblPrincipal.Content); Payment = Remaining; Interval = Convert.ToInt32(lblDesTerm.Content); dInt = DateInterval.Month; } dt = DateAndTime.DateAdd(dInt, Interval, dt); int num = 1; double p2 = Payment; while (Remaining > -1) { Remaining = Remaining - Payment; GenSOA soa = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = Remaining.ToString("N2") }; ctx.GenSOA.Add(soa); num++; if (Remaining <= Payment) { Payment = Remaining; if (Payment < 1) { goto a; } GenSOA soa1 = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = "0.00" }; ctx.GenSOA.Add(soa1); num++; goto a; } dt = DateAndTime.DateAdd(dInt, Interval, dt); bool isHoliday = true; while (isHoliday == true || dt.Date.DayOfWeek.ToString() == "Saturday" || dt.Date.DayOfWeek.ToString() == "Sunday") { if (dt.Date.DayOfWeek.ToString() == "Saturday") { dt = DateAndTime.DateAdd(DateInterval.Day, 2, dt); } else if (dt.Date.DayOfWeek.ToString() == "Sunday") { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); } var myC = ctx.Holidays.Where(x => x.Date.Month == dt.Date.Month && x.Date.Day == dt.Date.Day && x.isYearly == true).Count(); if (myC > 0) { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); isHoliday = true; } else { myC = ctx.Holidays.Where(x => x.Date.Month == dt.Date.Month && x.Date.Day == dt.Date.Day && x.Date.Year == dt.Date.Year && x.isYearly == !true).Count(); if (myC > 0) { dt = DateAndTime.DateAdd(DateInterval.Day, 1, dt); isHoliday = true; } else { isHoliday = false; } } } } a: ctx.SaveChanges(); var gen = from ge in ctx.GenSOA select new { PaymentNumber = ge.PaymentNumber, TotalPayment = ge.Amount, PaymentDate = ge.PaymentDate, RemainingBalance = ge.RemainingBalance }; dgSOA.ItemsSource = gen.ToList(); return; } } catch (Exception ex) { System.Windows.MessageBox.Show("Runtime Error: " + ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } }
public void refresh() { try { if (Convert.ToInt16(txtTerm.Text) < 1) { System.Windows.MessageBox.Show("Incorrect Format for term", "Information", MessageBoxButton.OK, MessageBoxImage.Information); return; } using (var ctx = new finalContext()) { myNum = 0; ctx.Database.ExecuteSqlCommand("delete from dbo.GenSOAs"); ctx.SaveChanges(); var lon = ctx.Loans.Find(lId); Double Amt = Convert.ToDouble(txtAmt.Text); lblPrincipal.Content = Amt.ToString("N2"); //txtAmt.Text = Amt.ToString("N2"); //txtAmt.SelectionStart = txtAmt.Text.Length - 3; Double TotalInt = Convert.ToDouble(txtInt.Text) * Convert.ToInt32(txtTerm.Text); TotalInt = TotalInt / 100; /*double ded = lon.Service.AgentCommission; var dec = from de in ctx.Deductions where de.ServiceID == lon.ServiceID select de; foreach (var item in dec) { ded = ded + item.Percentage; } Double Deduction = ded / 100; Double NetProceed = (Convert.ToDouble(txtAmt.Text)) - (Convert.ToDouble(txtAmt.Text) * Deduction); */ Double WithInt = (Convert.ToDouble(txtAmt.Text)) + (Convert.ToDouble(txtAmt.Text) * TotalInt); //lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = WithInt.ToString("N2"); Double Payment = 0; DateTime dt = DateTime.Today.Date; double Interval = 0; DateInterval dInt = DateInterval.Month; Double Remaining = WithInt; ComboBoxItem typeItem = (ComboBoxItem)cmbMode.SelectedItem; string value = typeItem.Content.ToString(); if (value == "Monthly") { Interval = 1; dInt = DateInterval.Month; Payment = WithInt / Convert.ToInt32(txtTerm.Text); } else if (value == "Semi-Monthly") { Interval = 15; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 2); } else if (value == "Weekly") { Interval = 7; dInt = DateInterval.Day; Payment = WithInt / (Convert.ToInt32(txtTerm.Text) * 4); } else if (value == "Daily") { Interval = 1; dInt = DateInterval.Day; Payment = WithInt / ((Convert.ToInt32(txtTerm.Text) * 4) * 7); } /*else if (cmbMode.Text == "One-Time Payment") { NetProceed = NetProceed - ((Convert.ToDouble(txtAmt.Text) * TotalInt)); lblProceed.Content = NetProceed.ToString("N2"); lblInt.Content = txtAmt.Text; Remaining = Convert.ToDouble(lblPrincipal.Content); Payment = Remaining; Interval = Convert.ToInt32(txtTerm.Text); dInt = DateInterval.Month; lbl4.Content = "Total Payment"; }*/ dt = DateAndTime.DateAdd(dInt, Interval, dt); int num = 1; while (Remaining > -1) { Remaining = Remaining - Payment; GenSOA soa = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = Remaining.ToString("N2") }; ctx.GenSOA.Add(soa); num++; dt = DateAndTime.DateAdd(dInt, Interval, dt); myNum++; if (Remaining <= Payment) { Payment = Remaining; if (Payment < 1) { goto a; } GenSOA soa1 = new GenSOA { Amount = Payment.ToString("N2"), PaymentDate = dt, PaymentNumber = num, RemainingBalance = "0.00" }; ctx.GenSOA.Add(soa1); num++; myNum++; goto a; } } a: lblMonthly.Content = Payment.ToString("N2"); ctx.SaveChanges(); var gen = from ge in ctx.GenSOA select new { PaymentNumber = ge.PaymentNumber, TotalPayment = ge.Amount, PaymentDate = ge.PaymentDate, RemainingBalance = ge.RemainingBalance }; dgSOA.ItemsSource = gen.ToList(); textarray = new System.Windows.Controls.TextBox[myNum]; System.Windows.Controls.Label[] labelarray = new System.Windows.Controls.Label[myNum]; StackPanel[] sp = new StackPanel[myNum]; stck.Children.Clear(); for (int ctr = 0; ctr < myNum; ctr++) { labelarray[ctr] = new System.Windows.Controls.Label(); labelarray[ctr].Height = 30; //labelarray[ctr].Width = 50; labelarray[ctr].FontSize = 16; labelarray[ctr].Content = "Cheque No. " + (ctr + 1).ToString(); textarray[ctr] = new System.Windows.Controls.TextBox(); textarray[ctr].Height = 25; textarray[ctr].Width = 300; textarray[ctr].FontSize = 16; textarray[ctr].MaxLength = 6; sp[ctr] = new StackPanel(); sp[ctr].Width = 300; sp[ctr].Height = 60; sp[ctr].Children.Add(labelarray[ctr]); sp[ctr].Children.Add(textarray[ctr]); stck.Children.Add(sp[ctr]); if (ctr == 0) { textarray[0].LostFocus += new RoutedEventHandler(txt_LostFocus); } } return; } } catch (Exception ex) { System.Windows.MessageBox.Show("Runtime Error: " + ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } }