private void btnNewPayment_Click(object sender, EventArgs e) { PaymentEditor editor = new PaymentEditor(); BinaryFormatter bfPayments = new BinaryFormatter(); Collection <Payment> payments = new Collection <Payment>(); string strPaymentsFile = @"C:\Microsoft Visual C# Application Design\Ceil Inn\Payments.pmt"; if (editor.ShowDialog() == System.Windows.Forms.DialogResult.OK) { if (File.Exists(strPaymentsFile) == true) { using (FileStream fsPayments = new FileStream(strPaymentsFile, FileMode.Open, FileAccess.Read)) { payments = (Collection <Payment>)bfPayments.Deserialize(fsPayments); } } Payment pmt = new Payment(); pmt.ReceiptNumber = int.Parse(editor.txtReceiptNumber.Text); pmt.EmployeeNumber = editor.txtEmployeeNumber.Text; pmt.PaymentDate = editor.dtpPaymentDate.Value; pmt.AccountNumber = editor.txtAccountNumber.Text; pmt.FirstDayOccupied = editor.dtpFirstDateOccupied.Value; pmt.LastDayOccupied = editor.dtpLastDateOccupied.Value; pmt.TotalNights = int.Parse(editor.txtTotalNights.Text); pmt.AmountCharged = double.Parse(editor.txtAmountCharged.Text); pmt.PhoneUse = double.Parse(editor.txtPhoneUse.Text); pmt.SubTotal = double.Parse(editor.txtSubTotal.Text); pmt.TaxRate = double.Parse(editor.txtTaxRate.Text); pmt.TaxAmount = double.Parse(editor.txtTaxAmount.Text); pmt.TotalAmountPaid = double.Parse(editor.txtTotalAmountPaid.Text); payments.Add(pmt); using (FileStream fsPayments = new FileStream(strPaymentsFile, FileMode.Create, FileAccess.Write)) { bfPayments.Serialize(fsPayments, payments); } } ShowPayments(); }
private void ShowPayments() { Collection <Employee> employees; PaymentEditor editor = new PaymentEditor(); BinaryFormatter bfPayments = new BinaryFormatter(); BinaryFormatter bfEmployees = new BinaryFormatter(); BinaryFormatter bfCustomers = new BinaryFormatter(); string strEmployee = "", strCustomer = ""; Collection <Payment> payments = new Collection <Payment>(); Collection <Customer> customers = new Collection <Customer>(); string strPaymentsFile = @"C:\Microsoft Visual C# Application Design\Ceil Inn\Payments.pmt"; string strCustomersFile = @"C:\Microsoft Visual C# Application Design\Ceil Inn\Customers.cst"; string strEmployeesFile = @"C:\Microsoft Visual C# Application Design\Ceil Inn\Employees.mpl"; if (File.Exists(strPaymentsFile) == true) { using (FileStream fsPayments = new FileStream(strPaymentsFile, FileMode.Open, FileAccess.Read)) { payments = (Collection <Payment>)bfPayments.Deserialize(fsPayments); lvwPayments.Items.Clear(); foreach (Payment pmt in payments) { ListViewItem lviPayment = new ListViewItem(pmt.ReceiptNumber.ToString()); using (FileStream fsEmployees = new FileStream(strEmployeesFile, FileMode.Open, FileAccess.Read)) { employees = (Collection <Employee>)bfEmployees.Deserialize(fsEmployees); foreach (Employee clerk in employees) { if (clerk.EmployeeNumber == pmt.EmployeeNumber) { strEmployee = clerk.EmployeeNumber + ": " + clerk.FirstName + " " + clerk.LastName; } } } lviPayment.SubItems.Add(strEmployee); lviPayment.SubItems.Add(pmt.PaymentDate.ToLongDateString()); using (FileStream fsCustomers = new FileStream(strCustomersFile, FileMode.Open, FileAccess.Read)) { customers = (Collection <Customer>)bfCustomers.Deserialize(fsCustomers); foreach (Customer client in customers) { if (client.AccountNumber == pmt.AccountNumber) { strCustomer = client.AccountNumber + ": " + client.FirstName + " " + client.LastName; } } } lviPayment.SubItems.Add(strCustomer); lviPayment.SubItems.Add(pmt.FirstDayOccupied.ToLongDateString()); lviPayment.SubItems.Add(pmt.LastDayOccupied.ToLongDateString()); lviPayment.SubItems.Add(pmt.TotalNights.ToString()); lviPayment.SubItems.Add(pmt.AmountCharged.ToString("F")); lviPayment.SubItems.Add(pmt.PhoneUse.ToString("F")); lviPayment.SubItems.Add(pmt.SubTotal.ToString("F")); lviPayment.SubItems.Add((pmt.TaxRate / 100).ToString("P")); lviPayment.SubItems.Add(pmt.TaxAmount.ToString("F")); lviPayment.SubItems.Add(pmt.TotalAmountPaid.ToString("F")); lvwPayments.Items.Add(lviPayment); } } } }