private void MainForm_Load(object sender, EventArgs e) { try { //Disable all label for result labelTitleResult.Visible = false; labelGrandTotal.Visible = false; labelTotal.Visible = false; labelGST.Visible = false; labelPST.Visible = false; //binding data from database to Listbox invoiceVM = new InvoiceViewModel(InvoiveRepository.GetInvoice()); setDataBindings(); } catch (SqlException ex) { MessageBox.Show(ex.Message, "DB Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception ex) { MessageBox.Show(ex.Message, "Processing Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void buttonSave_Click(object sender, EventArgs e) { //save invoice from textbox changed invoice = invoiceVM.SaveInvoice(selectedIndex); //Calculate SubTotal decimal subTotal = invoiceVM.Invoices.subTotal(); decimal gstTax = 0.00m; decimal gstTotal = 0.00m; decimal pstTax = 0.00m; labelTotal.Text = subTotal.ToString(); //Get Tax from database taxesVM = new TaxViewModel(InvoiveRepository.GetTaxRate()); for (int i = 0; i < taxesVM.Taxes.Count; i++) { if (taxesVM.Taxes[i].Taxcode == "GST") { gstTax = taxesVM.Taxes[i].TaxRate; gstTotal = (gstTax * subTotal) / 100; labelGST.Text = gstTotal.ToString("#.##"); } if (taxesVM.Taxes[i].Taxcode == "BCPST") { if (checkBoxTaxable.Checked) { pstTax = (taxesVM.Taxes[i].TaxRate * subTotal) / 100; labelPST.Text = pstTax.ToString("#.##"); } else { pstTax = (gstTax * subTotal) / 100; labelPST.Text = pstTax.ToString("#.##"); } } } //Calculate GrandTotal labelGrandTotal.Text = (subTotal + gstTax + pstTax).ToString("#.##"); //Show all result label labelTitleResult.Visible = true; labelTotal.Visible = true; labelGrandTotal.Visible = true; labelPST.Visible = true; labelGST.Visible = true; }