Пример #1
0
        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);
            }
        }
Пример #2
0
        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;
        }