private void savebtn_Click(object sender, RoutedEventArgs e) { if (SystemClass.CheckConnection()) { ImusCityHallEntities db = new ImusCityHallEntities(); ImusCityGovernmentSystem.Model.FundBank account = db.FundBanks.Find(FundBankID); ImusCityGovernmentSystem.Model.BankTrail banktrail = new BankTrail(); if (String.IsNullOrEmpty(amounttb.Text)) { MessageBox.Show("Please enter the amount to be adjusted"); } else { switch (adjustmenttypecb.Text.Substring(0, 1)) { case "D": if (Convert.ToDecimal(amounttb.Text) > account.CurrentBalance) { MessageBox.Show("Cannot be debited, you will have an insufficients funds"); return; } account.CurrentBalance -= Convert.ToDecimal(amounttb.Text); banktrail.DebitCredit = "D"; break; case "C": account.CurrentBalance += Convert.ToDecimal(amounttb.Text); banktrail.DebitCredit = "C"; break; } banktrail.FundBankID = FundBankID; banktrail.Amount = Convert.ToDecimal(amounttb.Text); banktrail.EntryName = nameof(BankTrailEntry.Adjustment); banktrail.CheckID = null; banktrail.EntryNameID = (int)BankTrailEntry.Adjustment; banktrail.EmployeeID = App.EmployeeID; banktrail.DateCreated = DateTime.Now; db.BankTrails.Add(banktrail); db.SaveChanges(); var audit = new AuditTrailModel { Activity = "Adjusted current amount of FUNDBANK ID: " + FundBankID.ToString(), ModuleName = this.GetType().Name, EmployeeID = App.EmployeeID }; SystemClass.InsertLog(audit); MessageBox.Show("Adjustment added succesfully"); this.Close(); } } else { MessageBox.Show(SystemClass.DBConnectionErrorMessage); } }
private void savebtn_Click(object sender, RoutedEventArgs e) { try { Mouse.OverrideCursor = Cursors.Wait; if (SystemClass.CheckConnection()) { if (fundcb.SelectedValue == null) { Mouse.OverrideCursor = null; MessageBox.Show("Please select fund"); } else { ImusCityHallEntities db = new ImusCityHallEntities(); int fundBankId = (int)fundcb.SelectedValue; var fundBank = db.FundBanks.Find(fundBankId); ImusCityGovernmentSystem.Model.Disbursement disbursement = db.Disbursements.Find(DisbursementID); var controlNumber = db.ControlNumbers.OrderByDescending(m => m.ControlNoID).FirstOrDefault(m => m.FundBankID == fundBankId && m.Active == true); if (String.IsNullOrEmpty(checknotb.Text)) { MessageBox.Show("Please provide the check number"); this.Close(); } else if (String.IsNullOrEmpty(checkdesctb.Text)) { Mouse.OverrideCursor = null; MessageBox.Show("Please provide check description"); } else if (checkamounttb.Text.Equals("0.00")) { Mouse.OverrideCursor = null; MessageBox.Show("Please enter check amount"); } else if (db.Checks.Any(m => m.CheckNo == checknotb.Text && m.Status != (int)CheckStatus.Deleted && m.Disbursement.FundBankID == fundBankId)) { Mouse.OverrideCursor = null; MessageBox.Show("Check number is already been used"); } else if (db.FundBanks.Find(fundBankId).CurrentBalance < Convert.ToDecimal(checkamounttb.Text)) { Mouse.OverrideCursor = null; MessageBox.Show("Check cannot be created, you have insufficients funds"); } else if (controlNumber == null) { Mouse.OverrideCursor = null; MessageBox.Show("Selected fund have no available check number"); } else if (db.DamageChecks.Where(m => m.FundBankID == fundBankId && m.CheckNumber == checknotb.Text).Count() >= 1) { Mouse.OverrideCursor = null; MessageBox.Show("The current check number is in the list of damage checks"); } else { Check check = new Check(); check.DisbursementID = DisbursementID; check.CheckNo = checknotb.Text; check.CheckDescription = checkdesctb.Text; check.Amount = Convert.ToDecimal(checkamounttb.Text); check.EmployeeID = App.EmployeeID; check.DateCreated = DateTime.Now; check.Status = (int)CheckStatus.Created; //Increment of the Check Number. if (controlNumber.EndingControlNo == controlNumber.NextControlNo) { controlNumber.Active = false; } else { controlNumber.NextControlNo++; } check.ControlNo = checknotb.Text; var savedCheck = db.Checks.Add(check); ImusCityGovernmentSystem.Model.BankTrail banktrail = new BankTrail(); banktrail.DebitCredit = "D"; banktrail.FundBankID = fundBankId; banktrail.Amount = Convert.ToDecimal(checkamounttb.Text); banktrail.EntryName = nameof(BankTrailEntry.CheckCreated); banktrail.CheckID = savedCheck.CheckID; banktrail.EntryNameID = (int)BankTrailEntry.CheckCreated; banktrail.EmployeeID = App.EmployeeID; banktrail.DateCreated = DateTime.Now; db.BankTrails.Add(banktrail); ImusCityGovernmentSystem.Model.FundBank account = db.FundBanks.Find(fundBankId); account.CurrentBalance -= Convert.ToDecimal(checkamounttb.Text); disbursement.VoucherNo = string.Join("-", fundBank.Fund.FundPrefix, disbursement.VoucherNo); disbursement.FundBankID = fundBankId; db.SaveChanges(); var audit = new AuditTrailModel { Activity = "Created new check entry DIS ID: " + DisbursementID.ToString(), ModuleName = this.GetType().Name, EmployeeID = App.EmployeeID }; SystemClass.InsertLog(audit); Mouse.OverrideCursor = null; MessageBox.Show("Check created successfully!"); PrintReport(check.CheckID); checknotb.Clear(); checkdesctb.Clear(); checkamounttb.Clear(); currentbalancetb.Text = ""; LoadFund(); } } } else { Mouse.OverrideCursor = null; MessageBox.Show(SystemClass.DBConnectionErrorMessage); } } catch (Exception ex) { Mouse.OverrideCursor = null; MessageBox.Show(ex.ToString()); } }
private void savebtn_Click(object sender, RoutedEventArgs e) { if (SystemClass.CheckConnection()) { ImusCityHallEntities db = new ImusCityHallEntities(); ImusCityGovernmentSystem.Model.Check check = db.Checks.Find(CheckID); check.Status = checkstatuscb.SelectedIndex; if (checkstatuscb.SelectedIndex == (int)CheckStatus.Cancelled) { check.CancelledBy = App.EmployeeID; check.CancelledDate = DateTime.Now; ImusCityGovernmentSystem.Model.BankTrail banktrail = new BankTrail(); ImusCityGovernmentSystem.Model.Disbursement disbursement = db.Disbursements.Find(check.DisbursementID); banktrail.DebitCredit = "C"; banktrail.FundBankID = disbursement.FundBankID; banktrail.Amount = Convert.ToDecimal(check.Amount); banktrail.EntryName = nameof(BankTrailEntry.CheckCancelled); banktrail.CheckID = check.CheckID; banktrail.EntryNameID = (int)BankTrailEntry.CheckCancelled; banktrail.EmployeeID = App.EmployeeID; banktrail.DateCreated = DateTime.Now; db.BankTrails.Add(banktrail); ImusCityGovernmentSystem.Model.FundBank account = db.FundBanks.Find(disbursement.FundBankID); account.CurrentBalance += Convert.ToDecimal(check.Amount); } else if (checkstatuscb.SelectedIndex == (int)CheckStatus.Deleted) { check.DeletedBy = App.EmployeeID; check.DeletedDate = DateTime.Now; ImusCityGovernmentSystem.Model.BankTrail banktrail = new BankTrail(); ImusCityGovernmentSystem.Model.Disbursement disbursement = db.Disbursements.Find(check.DisbursementID); banktrail.DebitCredit = "C"; banktrail.FundBankID = disbursement.FundBankID; banktrail.Amount = Convert.ToDecimal(check.Amount); banktrail.EntryName = nameof(BankTrailEntry.CheckDeleted); banktrail.CheckID = check.CheckID; banktrail.EntryNameID = (int)BankTrailEntry.CheckDeleted; banktrail.EmployeeID = App.EmployeeID; banktrail.DateCreated = DateTime.Now; db.BankTrails.Add(banktrail); ImusCityGovernmentSystem.Model.FundBank account = db.FundBanks.Find(disbursement.FundBankID); account.CurrentBalance += Convert.ToDecimal(check.Amount); } db.SaveChanges(); var audit = new AuditTrailModel { Activity = "Updated check in the database. CHECK NUMBER: " + check.CheckNo, ModuleName = this.GetType().Name, EmployeeID = App.EmployeeID }; SystemClass.InsertLog(audit); MessageBox.Show("Check entry updated successfully"); } else { MessageBox.Show(SystemClass.DBConnectionErrorMessage); } }